Each try statement needs its own catch block; you can’t chain them together like that. You can, however, put multiple statements into a single Try block. If the first statement succeeds without producing a terminating error, the next one is executed, and so on (though that logic doesn’t seem quite right for what you’re doing; I would assume that you want to execute the second call to Get-WmiObject only if the first one failed. For that, you can put the second call into the first one’s catch block.)
On a side note, you’re not actually using the $server variable in the calls to Get-WmiObject in that code, so they would all be executing locally. You’ll also want to add “-ErrorAction Stop” to each of the calls to Get-WmiObject; this ensures that if they do produce any errors, they are treated as Terminating errors (which is the only thing a try/catch block will see, in PowerShell.)