Hallo,
ich habe folgendes Problem. Ich möchte per WMI die IP-Adresse des Rechners verändern. Dafür habe ich begonnen das VB-Beispiel nachzubilden, doch ein einer Stelle weiß ich nicht mehr weiter.
Hier der Quellcode:
<PRE>
procedure TForm1.Button1Click(Sender: TObject);
var
aService : ISWbemServices;
aColNetAdapters : ISWbemObjectSet;
aObjNetAdapter : ISWbemObject;
vNVS : OleVariant;
aNVSDummy : IDispatch;
pEnum : IEnumVARIANT;
vOut : OleVariant;
dwRetrieved : LongWord;
hRes : HResult;
strIPAddress : Array of string;
strSubnetMask : Array of string;
begin
SetLength(strIPAddress, 16);
SetLength(strSubnetMask, 16);
strIPAddress[0] := '192.168.111.99';
strSubnetMask[0] := '255.255.255.0';
aService := SWbemLocator1.ConnectServer('','','','','','',0,vN VS);
aColNetAdapters := aService.ExecQuery('SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE',
'WQL', 0, aNVSDummy);
pEnum := aColNetAdapters.Get__NewEnum as IEnumVARIANT;
while (TRUE) do
begin
<br>
<B>Wie kann ich nun die IP-Adresse setzen? Die VB-Anweisung dafür sieht so aus objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)</B>
<br>
end;
end;
</PRE>
Grüße Markus
ich habe folgendes Problem. Ich möchte per WMI die IP-Adresse des Rechners verändern. Dafür habe ich begonnen das VB-Beispiel nachzubilden, doch ein einer Stelle weiß ich nicht mehr weiter.
Hier der Quellcode:
<PRE>
procedure TForm1.Button1Click(Sender: TObject);
var
aService : ISWbemServices;
aColNetAdapters : ISWbemObjectSet;
aObjNetAdapter : ISWbemObject;
vNVS : OleVariant;
aNVSDummy : IDispatch;
pEnum : IEnumVARIANT;
vOut : OleVariant;
dwRetrieved : LongWord;
hRes : HResult;
strIPAddress : Array of string;
strSubnetMask : Array of string;
begin
SetLength(strIPAddress, 16);
SetLength(strSubnetMask, 16);
strIPAddress[0] := '192.168.111.99';
strSubnetMask[0] := '255.255.255.0';
aService := SWbemLocator1.ConnectServer('','','','','','',0,vN VS);
aColNetAdapters := aService.ExecQuery('SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE',
'WQL', 0, aNVSDummy);
pEnum := aColNetAdapters.Get__NewEnum as IEnumVARIANT;
while (TRUE) do
begin
<br>
<B>Wie kann ich nun die IP-Adresse setzen? Die VB-Anweisung dafür sieht so aus objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)</B>
<br>
end;
end;
</PRE>
Grüße Markus
Comment