Seite 2 von 2

Verfasst: 04.05.2007 16:02
von PureBasic4.0
Ich würde ja einen Bild trinken, aber schau mal in diesem Thread nach meinem Geburtsdatum ;-)

Zurück zum Thema: Ich denke, du meinst diesen Code:

Code: Alles auswählen

strComputer = "."
Set objWMIService = GetObject( _
    "winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration " _
        & "where IPEnabled=TRUE")
strIPAddress = Array("192.168.1.141")
strSubnetMask = Array("255.255.255.0")
strGateway = Array("192.168.1.100")
strGatewayMetric = Array(1)
 
For Each objNetAdapter in colNetAdapters
    errEnable = objNetAdapter.EnableStatic( _
        strIPAddress, strSubnetMask)
    errGateways = objNetAdapter.SetGateways(_
        strGateway, strGatewaymetric)
Next
Wie kann ich in PB den VB-Befehl Array() realisieren (siehe Zeile strIPAddress ff.)?

Auch die For Each Zeile kann ich nicht so einfach übernehmen (auch wenn ich For Each in ForEach umtaufe), weil PB wahrscheinlich mit objNetAdapter in colNetAdapters nichts anfangen kann. Wie ist es möglich diese Zeile für PB umzuschreiben?

Außerdem: Kann man mit diesem Code auch die IPs für ein bestimmtes Netzwerkgerät verändern? Oder wird das durch die Variable strComputer ausgedrückt?

Verfasst: 07.05.2007 00:12
von stbi
PureBasic4.0 hat geschrieben:Ich würde ja einen Bild trinken, aber schau mal in diesem Thread nach meinem Geburtsdatum ;-)
okok :lol:

Wie ich bereits schrieb, beim Code kann ich Dir leider nicht helfen, aber mein erster Link zeigt auf eine WMI-Umsetzung für PB.

Ich vermute auch nach wie vor, dass Du mit WMI keine schnellere IP-Adressumschaltung hinbekommst.

Verfasst: 07.05.2007 16:03
von PureBasic4.0
OK,OK. Dann werde ich halt netsh weiterhin benutzen müssen.:mrgreen:

Verfasst: 08.05.2007 10:17
von stbi
Wenn ich gerade so ein bißchen drüber nachdenke ... was evtl. schneller gehen könnte ... einfach mal die gewünschte IP-Adresse als weitere IP-Adresse eintragen, ganz normal über netsh interface ip add address usw. ... das geht m.E. deutlich schneller als die Basis-IP zu ändern

Verfasst: 08.05.2007 11:59
von bobobo
Viel Spass mit zwei IP's in einer Domäne

Verfasst: 08.05.2007 13:45
von stbi
bobobo hat geschrieben:Viel Spass mit zwei IP's in einer Domäne
Jede Menge Spaß! Hier mal das IPCONFIG eines meiner Clusterknoten ( Windows-Server in Windows-Domäne):

Code: Alles auswählen

Ethernet-Adapter Interconnect:

   Verbindungsspezifisches DNS-Suffix:
   IP-Adresse. . . . . . . . . . . . : 192.168.0.1
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   Standardgateway . . . . . . . . . :

Ethernet-Adapter Client-GIGA:

   Verbindungsspezifisches DNS-Suffix:
   IP-Adresse. . . . . . . . . . . . : 10.0.1.48
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   IP-Adresse. . . . . . . . . . . . : 10.0.1.23
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   IP-Adresse. . . . . . . . . . . . : 10.0.1.22
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   IP-Adresse. . . . . . . . . . . . : 10.0.1.18
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   IP-Adresse. . . . . . . . . . . . : 10.0.1.20
   Subnetzmaske  . . . . . . . . . . : 255.255.255.0
   Standardgateway . . . . . . . . . : 10.0.1.254
Die letzte IP-Adresse ist eigentliche IP des Servers. Die darüber sind virtuell den aktuell darauf laufenden Anwendungen zugeordnet und wechseln bei Bedarf zusammen mit der Anwendung auf einen anderen Clusterknoten. Der Adapter mit der 192.-Adresse verbindet nur mit den anderen Clusterknoten.