お世話になっております。
過去ログを参照して、IPアドレスを変更する事が出来たのですが、
少し構文を帰ると変更できません。何が原因でしょうか。
[成功]
Dim X As New ManagementClass("Win32_NetworkAdapterConfiguration")
For Each mo As ManagementObject In X.GetInstances()
Dim IP() As String = {"192.168.100.100"}
Dim Mask() As String = {"255.255.255.0"}
Dim Args() As Object = {IP, Mask}
Dim r As Object = mo.InvokeMethod("EnableStatic", Args)
Next
[失敗]
Dim X As New Management Class"Win32_NetworkAdapterConfiguration")
Dim m As ManagementObject
Dim returnValue As ManagementObjectCollection
returnValue = X.GetInstances()
Dim IP() As String = {"192.168.100.100"}
Dim Mask() As String = {"255.255.255.0"}
Dim Args() As Object = {IP, Mask}
Dim r As Object = m.InvokeMethod("EnableStatic", Args)
最後の文で以下のメッセージが出ます。
'System.NullReferenceException' のハンドルされていない例外が CDSetting.exe で発生しました。
追加情報 : オブジェクト参照がオブジェクト インスタンスに設定されていません。
また、WMIプログラミングをする場合、
・.NET Framework クラス ライブラリ (System.Management)
・Microsoft WMI Scripting V1.2 Library (SWbemObject)
の2通りの方法があるということでよろしいでしょうか。
何方かご教授お願い致します。
(頭がごっちゃごちゃになってきました)
>Dim X As New Management Class"Win32_NetworkAdapterConfiguration")
一行目からスペースがはいってたり最初の「(」が無かったりしてますが、、
#コピーしないで手打ちしての投稿かな orz
#途中で投稿してしまいました。すみません。
>returnValue = X.GetInstances()
でコレクションをreturnValueにセットしているのに
mにManagementObjectを渡さないまま
>Dim r As Object = m.InvokeMethod("EnableStatic", Args)
を実行しているからでは?
ツイート |