我有一个侦察员,似乎无法在任何地方找到答案,所以需要问。
我正在尝试在远程计算机上查询WMI,但我需要将其作为管理员帐户进行查询,而且我遇到了这样的问题。
我使用的代码是:
Public Sub OperatingSystem(ByVal computeritem As String)
'set Username and Password which system will access the network with.
Dim options As ConnectionOptions
options = New ConnectionOptions()
options.Authority = "ntdlmdomain:" & ipaddress
options.Username = "Username"
options.Password = "Password"
scope = New ManagementScope("\\" & ipaddress & "\root\cimv2", options)
scope.Connect()
Dim query As ObjectQuery
query = New ObjectQuery("SELECT * FROM Win32_OperatingSystem")
Dim searcher As ManagementObjectSearcher
searcher = New ManagementObjectSearcher(scope, query)
查询继续进行并将所有类型的信息传递到spradsheet ..好吧如果它有用的话!
正在崩溃的代码行是:
scope = New ManagementScope("\\" & ipaddress & "\root\cimv2", options)
scope.Connect()
它给我一条错误消息,上面写着“无效参数”。当我去查看详细信息时,内部异常中没有任何内容,我能看到的任何值都是ErrorCode:ManagementStatus.InvalidParameter
如果这很简单,我道歉...我仍然相当新,但如果有人能给我一些真正值得赞赏的指导。
非常感谢。
答案 0 :(得分:0)
看起来对ipaddress的引用未初始化。由于computeritem作为参数传递给sub,因此您的代码可能会更好地用于:
scope = New ManagementScope("\\" & computeritem & "\root\cimv2", options)