Try setting the server after you create each of your ManagementObjectSearcher objects like so...
Dim searcher As New ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive")<br />
searcher.Scope.Path.Server = "servername"<br />
<br />
<br />
searcher = New ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia")<br />
searcher.Scope.Path.Server = "servername"<br />
The account that runs the search needs to have Admin access to the server you are trying to search.