Autor |
Beitrag |
rob87
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Do 09.08.07 08:50
Hallo,
ich habe mit ShellScript eine "Software" (Batch-Datei) erstellt, die jedem Menüpunkt versch. IP-Adressen mit zugehöriger Subnetzmaske, GW, DNS etc. gespeichert hat.
Sobald ich eine Menüauswahl treffen, macht er mir diese Einstellungen in meinen (W-)LAN-Verbindungen.
Nun würde ich diese Batch-Datei gerne als Delphi-Projekt gestalten. Hat jemand ne Ahnung, wie das gehen könnte?
Hier mal der Code der Batch-Datei:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78:
| cls @echo off MODE CON LINES=32 MODE CON COLS=37 setlocal :menue cls color 70 echo. echo =================================== echo = = echo = Bitte waehlen sie ein Profil! = echo = = echo =================================== echo. echo =================================== echo = = echo = 1: Daheim (DHCP) = echo = 2: Arbeit (100.20) = echo = 3: Arbeit2 (106.29) = echo = 0: Menue verlassen = echo = = echo =================================== echo. set /p Auswahl= IF "%Auswahl%"=="1" goto daheim IF "%Auswahl%"=="2" goto arbeit IF "%Auswahl%"=="3" goto arbeit2 IF "%Auswahl%"=="0" goto exit
:daheim cls echo. echo =================================== echo = = echo = Einstellungen aendern fuer: = echo = = echo = * LAN-Verbindung 2 = echo = = echo = IP Adresse: DHCP = echo = Subnetzmaske: DHCP = echo = Gateway: DHCP = echo = DNS: DHCP = echo = = echo = * Drucker = echo = = echo = Canon PIXMA IP1600 = echo = = echo =================================== echo. netsh interface ip set address "Drahtlose Netzwerkverbindung" dhcp netsh interface ip set dns "Drahtlose Netzwerkverbindung" dhcp rundll32 printui.dll,PrintUIEntry /y /n "Microsoft Image Writer" goto ausgang
echo = Hab mal übersichtshalber einen Teil weggelassen =
:ausgang echo. echo =================================== echo = = echo = Einstellungen wurden gesetzt. = echo = = echo = Zum Beenden, beliebige Taste! = echo = = echo =================================== PAUSE > Nul EXIT :exit EXIT |
Zuletzt bearbeitet von rob87 am Do 09.08.07 10:15, insgesamt 1-mal bearbeitet
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: Do 09.08.07 09:02
Als Konsole oder als grafische Anwendung?
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Do 09.08.07 09:05
Gut dass du fragst.
Also grafische Anwendung. Denn als Konsole hab ich se ja in ner Batch-Datei in gewisser Weise auch.
Mit Buttons und so *lol*
|
|
AXMD
      
Beiträge: 4006
Erhaltene Danke: 7
Windows 10 64 bit
C# (Visual Studio 2019 Express)
|
Verfasst: Do 09.08.07 09:49
Man kann das vermutlich über API-Funktionen realisieren, dazu müsstest du mal in der MSDN nachsehen. Die Quick'n'dirty-Lösung wäre, die relevanten Befehle (netsh, rundll32 printui...) mit ShellExecute bzw. CreateProcess von deinem Delphiprogramm aus aufzurufen - das würde dir zusätzlich gestatten, auszuwerten, ob die Befehle erfolgreich waren:
AXMD
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Do 09.08.07 09:57
Könntest du mir die Quick'n'Dirrty-Funktion genauer erklären.
Ich bin ein absoluter Delphi-Neuling.
Ich möcht praktisch paar Buttons haben und jede sollt für eine menüausführung (inkl. kurzer anzeige der einstellungen) stehen.
und dann vll. noch einen reset button
|
|
AXMD
      
Beiträge: 4006
Erhaltene Danke: 7
Windows 10 64 bit
C# (Visual Studio 2019 Express)
|
Verfasst: Do 09.08.07 09:59
Einfach mal die Forensuche bzw. die Delphihilfe nach den beiden Befehlen befragen
SHELLEXECUTE
CREATEPROCESS
ShellExecute ist für dich vermutlich einfacher, da es weniger Parameter benötigt
AXMD
|
|
Reinhard Kern
      
Beiträge: 591
Erhaltene Danke: 14
|
Verfasst: Fr 10.08.07 02:40
rob87 hat folgendes geschrieben: | Hallo,
ich habe mit ShellScript eine "Software" (Batch-Datei) erstellt, die jedem Menüpunkt versch. IP-Adressen mit zugehöriger Subnetzmaske, GW, DNS etc. gespeichert hat.
Sobald ich eine Menüauswahl treffen, macht er mir diese Einstellungen in meinen (W-)LAN-Verbindungen.
Nun würde ich diese Batch-Datei gerne als Delphi-Projekt gestalten. Hat jemand ne Ahnung, wie das gehen könnte?
...
|
In meiner SDK-Hilfe steht da irgendwo ganz lapidar: "...obsolete...should use the registry."
Soll wohl heissen, man muss die entsprechenden Werte in der Registry direkt setzen, z.B. unter Services\TCPIP.
Gruss Reinhard
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Fr 10.08.07 09:37
Also ich hab nun im Internet ein Programm gefunden, welches diese Aufgaben für mich erledigt.
Aber ich wollts halt selber machen
Irgendwie krieg ich des mit ShellExecute auch noch hin. 
|
|
GTA-Place
      

Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: Fr 10.08.07 10:02
Machs - wie Reinhard sagte - direkt in der Registry. Siehe TREGISTRY.
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
rob87 
      
Beiträge: 461
Win Me, Win XP Home, Win XP Prof
Delphi 2007 Enterprise
|
Verfasst: Fr 10.08.07 10:07
Ich guck mal ob ich des zambring 
|
|