Entwickler-Ecke

Internet / Netzwerk - TCP/IP-Konfigurationssoftware erstellen


rob87 - Do 09.08.07 08:50
Titel: TCP/IP-Konfigurationssoftware erstellen
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:

Quelltext
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


GTA-Place - Do 09.08.07 09:02

Als Konsole oder als grafische Anwendung?


rob87 - 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 - 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 - 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 - Do 09.08.07 09:59

Einfach mal die Forensuche bzw. die Delphihilfe nach den beiden Befehlen befragen ;)

Suche in der Entwickler-Ecke SHELLEXECUTE
Suche in der Entwickler-Ecke CREATEPROCESS

ShellExecute ist für dich vermutlich einfacher, da es weniger Parameter benötigt :)

AXMD


Reinhard Kern - Fr 10.08.07 02:40
Titel: Re: TCP/IP-Konfigurationssoftware erstellen
user profile iconrob87 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 - 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 - Fr 10.08.07 10:02

Machs - wie Reinhard sagte - direkt in der Registry. Siehe Suche in der Entwickler-Ecke TREGISTRY.


rob87 - Fr 10.08.07 10:07

Ich guck mal ob ich des zambring ;-)