![]() |
IP Adresse einer Lan-Verbindung ändern
Hallo,
Ich möchte ein kleines Tool schreiben, was schnell und einfach die IPAdresse des Rechner im Netzwerk ändert. Dazu möchte ich die Funktion "Shellexecute" benutzen, wie in ![]() Ich verstehe jetzt nur nicht, mit welchen Paramentern ich Shellexecute aufrufen muss. Ich habe diesen Code erstellt:
Delphi-Quellcode:
Ich bekomme aber vom Compiler die folgende Fehlermeldung:
ShellExecute(PChar('C:\Windows\System32\netsh interface ip set address name = "LAN-Verbindung" source = static addr = 192.168.1.28 mask = 255.255.255.0'),SW_SHOWNORMAL);
Zitat:
|
Re: IP Adresse einer Lan-Verbindung ändern
Hi,
wenn Du dir ShellExecute in der Hilfe anschaust, wirst Du sehen, dass ein paar mehr Parameter gefordert sind. Gruss |
Re: IP Adresse einer Lan-Verbindung ändern
|
Re: IP Adresse einer Lan-Verbindung ändern
also ich möchte es über ShellExecute machen und habe in der MSDN auch schon nachgelesem welche Parameter ich brauche:
allgeimeine Syntax:
Delphi-Quellcode:
Jetzt habe ich auch schon angefangen die richtigen Paramenter zu setzten, bekomme aber immer noch einen Fehler:
ShellExecute(HWND, lpOperation, lpFile, lpParameters, lpDirectory, nShowCmd);
Delphi-Quellcode:
Vom Compiler bekomme ich folgenden Fehler:
ShellExecute(application.Handle,'open','C:\Windows\System32\netsh', 'interface ip set address name = "LAN-Verbindung" source = static addr = 192.168.1.28 mask = 255.255.255.0', NULL, SW_SHOWNORMAL);
Zitat:
//EDIT: Habs gelöst, statt "NULL" muss man einfach '' schreiben, dann gehts..... |
Re: IP Adresse einer Lan-Verbindung ändern
Zitat:
NULL ist ein vordefinierter Variant-Datentyp, während nil ein Zeiger auf die Adresse 0x00000000 ist. Vergleich:
Code:
Delphi - nil
C/C++ - (void *)0 |
Re: IP Adresse einer Lan-Verbindung ändern
stimmt :thumb: klappt auch und sieht sogar besser aus. Aber von der Funktion her ist es aber doch das selbe, also "" oder nil, oder?
|
Re: IP Adresse einer Lan-Verbindung ändern
jetzt habe ich noch eine Frage:
Kann man über netsh auch die Arbeitsgruppe eines Computers ändern??? :gruebel: |
Re: IP Adresse einer Lan-Verbindung ändern
Da gibt es soetwas das nennt sich Hilfe:
Folgendes sagte meine Windows Console als ich den Befehl netsh eingab: Folgende Befehle sind verfügbar: Befehle in diesem Kontext: .. - Wechselt zu einer Kontextebene höher. ? - Zeigt eine Liste der Befehle an. abort - Verwirft Änderungen, die im Offlinemodus vorgenommen wurden. add - Fügt einen Konfigurationseintrag zur Liste hinzu. advfirewall - Wechselt zum "netsh advfirewall"-Kontext. alias - Fügt einen Alias hinzu. bridge - Wechselt zum "netsh bridge"-Kontext. bye - Beendet das Programm. commit - Überträgt Änderungen, die im Offlinemodus vorgenommen wurden. delete - Löscht einen Konfigurationseintrag aus der Liste der Einträge. dhcpclient - Wechselt zum "netsh dhcpclient"-Kontext. dump - Zeigt ein Konfigurationsskript an. exec - Führt eine Skriptdatei aus. exit - Beendet das Programm. firewall - Wechselt zum "netsh firewall"-Kontext. help - Zeigt eine Liste der Befehle an. http - Wechselt zum "netsh http"-Kontext. interface - Wechselt zum "netsh interface"-Kontext. ipsec - Wechselt zum "netsh ipsec"-Kontext. lan - Wechselt zum "netsh lan"-Kontext. nap - Wechselt zum "netsh nap"-Kontext. netio - Wechselt zum "netsh netio"-Kontext. offline - Setzt den aktuellen Modus auf offline. online - Setzt den aktuellen Modus auf online. p2p - Wechselt zum "netsh p2p"-Kontext. popd - Wechselt zum durch pushd im Stapel gespeicherten Kontext. pushd - Überträgt den aktuellen Kontext auf den Stapel. quit - Beendet das Programm. ras - Wechselt zum "netsh ras"-Kontext. rpc - Wechselt zum "netsh rpc"-Kontext. set - Aktualisiert Konfigurationseinstellungen. show - Zeigt Informationen an. unalias - Löscht einen Aliasnamen. winhttp - Wechselt zum "netsh winhttp"-Kontext. winsock - Wechselt zum "netsh winsock"-Kontext. wlan - Wechselt zum "netsh wlan"-Kontext. Folgende Unterkontexte sind verfügbar: advfirewall bridge dhcpclient firewall http interface ipsec lan nap netio p2p r as rpc winhttp winsock wlan Geben Sie den Befehl, gefolgt von einem Leerzeichen und ? ein, um Hilfe bezüglich des entsprechenden Befehls zu erhalten. Ansonsten gibt es noch einen Eintrag in ![]() Und dann würdest Du auch sehen wenn Du googlest, veraltete Befehle verwendest :mrgreen: [edit]Da hat ja einer seinen ganzen Text im Post verändert :evil: [/edit] |
Re: IP Adresse einer Lan-Verbindung ändern
mhhh, also ich hab mir jetzt mal so ein paar sachen mit netsh angeschaut, konnte aber nichts finden womit ich die arebitsgruppe ändern könnte. Hab ich da was übersehen?
Und Google gibt nicht besonders viel her... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz