![]() |
eigene ip adresse ändern
Also hallo erst mal
ich wollt mal gerne wissen wie ich die lokal netz ip mit hilfe eines delphiprogramms ändern kann fänds echt cool wenn ihr mir helfen könntet |
Re: eigene ip adresse ändern
Hi...
ruf mal folgendes über shellexecute auf netsh interface ip set address "LAN-Verbindung" static 192.168.0.10 255.0.0.0 192.168.0.2 2 |
Re: eigene ip adresse ändern
Zitat:
|
Re: eigene ip adresse ändern
:-D Stimmt :-D
|
Re: eigene ip adresse ändern
hä dess raff ich net ganz wohin schreib ich dess in delphi?
|
Re: eigene ip adresse ändern
Hallo BornToBeBreit,
Zitat:
bye Claus |
Re: eigene ip adresse ändern
Warum labert ihr drumzu und schreibt nicht einfach den ganzen befehl :gruebel:
|
Re: eigene ip adresse ändern
ruhig brauner!
Aber überleg dir wo dud ein Programm benutzten willst, es muss nicht immer so sein, das deine Netzverbindung weiterhin besteht, wenn du deine ip änderst. Zum Beispiel in lokalen Netzen wo statische ip adressen verteilt sind. |
Re: eigene ip adresse ändern
Also ich habs jetz einfach so gemacht, dass ich dess in net .bat datei einfüg und dess dann ausführe
jetz kann ich ganz einfach und schnell meine ip ändern danke euch allen für eure hilfe |
Re: eigene ip adresse ändern
Hallo BornToBeBreit,
wenn du [dp]"ShellExecute"[/dp] verwendest, musst du nicht den Umweg um die .bat-Datei gehn. AFAIR kann man DOS-Befehle einfach bei ShellExecute uebergeben, und diese werden dann ausgefuehrt. Greetz alcaeus |
Re: eigene ip adresse ändern
|
Re: eigene ip adresse ändern
Erst Betriebssystem rausfinden (Zur Sicherheit), dann mit WinExec netsh aufrufen - habs nur mit XP getestet...
Delphi-Quellcode:
const
{ operating system (OS)constants } cOsUnknown = -1; cOsWin95 = 0; cOsWin98 = 1; cOsWin98SE = 2; cOsWinME = 3; cOsWinNT = 4; cOsWin2000 = 5; cOsXP = 6; function GetOperatingSystem: Integer; var osVerInfo: TOSVersionInfo; majorVer, minorVer: Integer; begin Result := cOsUnknown; { set operating system type flag } osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo); if GetVersionEx(osVerInfo) then begin majorVer := osVerInfo.dwMajorVersion; minorVer := osVerInfo.dwMinorVersion; case osVerInfo.dwPlatformId of VER_PLATFORM_WIN32_NT: { Windows NT/2000 } begin if majorVer <= 4 then Result := cOsWinNT else if (majorVer = 5) and (minorVer = 0) then Result := cOsWin2000 else if (majorVer = 5) and (minorVer = 1) then Result := cOsXP else Result := cOsUnknown; end; VER_PLATFORM_WIN32_WINDOWS: { Windows 9x/ME } begin if (majorVer = 4) and (minorVer = 0) then Result := cOsWin95 else if (majorVer = 4) and (minorVer = 10) then begin if osVerInfo.szCSDVersion[1] = 'A' then Result := cOsWin98SE else Result := cOsWin98; end else if (majorVer = 4) and (minorVer = 90) then Result := cOsWinME else Result := cOsUnknown; end; else Result := cOsUnknown; end; end else Result := cOsUnknown; end; function WindowsDirectory:string; var WinDir : PChar; begin WinDir:=StrAlloc(Max_Path); try GetWindowsDirectory(WinDir,Max_Path); Result:=(String(WinDir))+'\'; finally StrDispose(WinDir); end; end; {WindowsDirectory} procedure TForm1.IPLabelClick(Sender: TObject); var windir:string; os:integer; begin os:=GetOperatingSystem; If os=cOsWin95 then exit; If os=cOsWin98 then exit; If os=cOsWin98SE then exit; If os=cOsWinME then exit; If os=cOsWinNT then windir:=WindowsDirectory+'system32\'; If os=cOsWin2000 then windir:=WindowsDirectory+'system32\'; If os=cOsXP then windir:=WindowsDirectory+'system32\'; WinExec(PChar(windir+'netsh interface ip set address name = "LAN-Verbindung" source = static addr = 192.168.1.28 mask = 255.255.255.0'),SW_SHOWNORMAL); end; |
Re: eigene ip adresse ändern
:pale: ARGH! :wall: Wie lange soll das denn noch dauern? Es sollte doch inzwischen nun auch mal zu den letzten durchgekommen sein, dass WinExec nur noch zur Abwärtskompatibilität zu 16bit-Programmen da is!!!
Zitat:
![]() ![]() mfg, mh166 |
Re: eigene ip adresse ändern
dann schreib das doch bitte mal um, statt zu meckern :roll:
|
Re: eigene ip adresse ändern
hallo leute, kann mir jemand sagen, wie ich mit der netsh funktion einen DNS Server setzen kann ?!
mein code, funktioniert nur leider nicht (shellexecute) netsh set dns "LAN-Verbindung" static 192.168.0.10 |
Re: eigene ip adresse ändern
ok habe das problem mit
Delphi-Quellcode:
lösen können. nur kann ich damit nur den ersten DNS Server setzen, wie kann ich die einstellungen für den 2. vornehmen ?!
ShellExecute(0,Nil,PChar('netsh'),
Pchar(' interface ip set dns "'+net.name+'" '+net.DNSmode+' '+net.PDNS+' primary'), Pchar('C:\StartDir'),SW_HIDE); (secondary geht nicht) |
Re: eigene ip adresse ändern
Moin Van HelF,
das müsste eigentlich mit "add dns" statt "set dns" gehen. Zumindest die Hilfe von XP ist da auskunftsfreudig. |
Re: eigene ip adresse ändern
Zitat:
Delphi-Quellcode:
InputString:= InputBox('Neue IP-Adresse', '', edlocalip.text);
edlocalip.Text := inputstring; WinExec(PChar(windir+'netsh interface ip set address name = "LAN-Verbindung" source = static addr = 192.168.1.28 mask = 255.255.255.0'),SW_SHOWNORMAL); |
Re: eigene ip adresse ändern
hat keiner eine lösung?
|
Re: eigene ip adresse ändern
Sollte doch so gehen, oder nicht?
Delphi-Quellcode:
Grüße
InputString:= InputBox('Neue IP-Adresse', '', edlocalip.text);
edlocalip.Text := inputstring; WinExec(PChar(windir+'netsh interface ip set address name = "LAN-Verbindung" source = static addr = '+inputstring+ ' mask = 255.255.255.0'),SW_SHOWNORMAL); Klaus |
Re: eigene ip adresse ändern
Ein Problem besteht noch:
Was ist, wenn das Häkchen bei "IP Adresse automatisch beziehen" gesetzt ist? Dann ändert er die Adresse nicht! Weiß einer wie man das umgeht? MfG Jonas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 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 by Thomas Breitkreuz