Autor |
Beitrag |
CodexX
      
Beiträge: 118
WinXP
Delphi XE
|
Verfasst: So 28.11.04 02:48
hi!
ich muss aus einem delphi programm heraus eine bestimmte netzwerkverbindung bzw einen netzwerkadapter deaktivieren und wieder aktivieren können.
geht das mit einer speziellen funktion? oder gibt es in windows dafür consolen befehle?
inconfig /release bzw /renew funktionieren nur mit dhcp zusammen.
es soll also quasi das selbe geschehen, wie wenn man bei den "Netzwerkverbindungen" auf eine verbindung rechts drauf klickt -> deaktivieren.
danke 
|
|
Sprint
      
Beiträge: 849
|
Verfasst: So 28.11.04 03:35
Link
Mit dem Konsolenprogramm devcon kannst du sowas z.B. machen. Eine reine SourceCode-Lösung kenne ich nicht.
_________________ Ciao, Sprint.
|
|
CodexX 
      
Beiträge: 118
WinXP
Delphi XE
|
Verfasst: So 28.11.04 14:42
das ist sehr interessant! ich denke, ich komme damit zurecht.
nur habe ich ein problem mit dieser aussage:
DevCon darf nicht weitergegeben werden. Es wird als Hilfsprogramm für das Debuggen und Entwickeln von Software zur Verfügung gestellt. Für die private Nutzung kann DevCon beliebig verändert werden.
dh, ich darf das meinem programm nicht beilegen. nun ist der DDK quellcode ja anscheinend in MSDN enthalten (hab ich zwar noch nicht gefunden, werd ich aber wohl noch  ), jedoch wird dieser wohl in C(++) geschrieben sein, wovon ich leider keine ahnung habe.
was kann ich da machen?
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: So 28.11.04 16:06
Poste doch einfach mal den C++-Source. Den wird sicherlich jemand übersetzen können.
Ansonsten würde auch der MSDN-Link reichen, wo man das Teil findet.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
zorxx
      
Beiträge: 21
Win XP, GNU/ Linux
D7 Ent
|
Verfasst: So 28.11.04 23:54
Also ich denke mal, man kann es auch mit netsh machen. Das ist zumindest bei WinXP und glaube auch bei Win2000 dabei.
Quelltext 1:
| netsh interface <Name der Schnittstelle> connect=DISCONNECTED |
Gruss zorxx
_________________ Keine Panik!
|
|
CodexX 
      
Beiträge: 118
WinXP
Delphi XE
|
Verfasst: Mo 29.11.04 00:30
netsh funktioniert in dieser hinsicht leider total fehlerhaft.
auf dem einen pc ging es gar nicht, da hieß es, die syntax währe falsch, obwohl sie 100% richtig war. und auf dem anderen kan eine fehlermeldung, dass eine gewisse dll fehle (dgnet.dll)
also das ist wohl nicht so das wahre.
den quellcode von devcon werde ich demnächst hier posten, warte nur auf rückmeldung eines bekannten, der das windows xp ddk besitzt, da man es leider nicht direkt von ms herunterladen kann (nur als MSDN subscriber)
|
|
CodexX 
      
Beiträge: 118
WinXP
Delphi XE
|
Verfasst: Mo 29.11.04 15:23
so hab den source bekommen. es wäre einfach großartig, wenn das jemand delphi kompatibel machen könnte. bzw den teil herausfinden, der für restart/disable/enable zuständig ist. den rest brauche ich nicht.
restart würde mir eigentlich sogar reichen. disable und enable wären nicht schlecht.
infos zu devcon
devcon herunterladen
downlaod devcon source (25 downloads. wenn weg, dann bitte sagen, ich lads nochmal hoch)
|
|
CodexX 
      
Beiträge: 118
WinXP
Delphi XE
|
Verfasst: So 05.12.04 00:28
in dem ddk war noch ein anderes beispiel, das für meine zwecke noch besser geeignet wäre, da es nicht so komplex aufgebaut ist, sondern nur das macht, was ich brauche. (viel überschaubarer als devcon)
kann damit jemand was anfangen und etwas delphi kompatibles daraus basteln?
Zitat: | SUMMARY
This is a sample program that can enable and disable a Windows 2000 device driver node. It also illustrates some of the internal functionality of the Windows 2000 Device Manager.
PROGRAMMING TOUR
This program utilizes the Windows 2000 SetupDi and Config Manager functions to Display, Enable, and Disable Devices. It uses a TreeView Window control to display the devices with the corresponding device class icon. These Icons are generated by the OS using the API call SetupDiGetClassImageList().
Although it is possible to enable and disable a device node using the Config Manager API functions CM_Enable_DevNode() and CM_Disable_DevNode(), developers are instead encouraged to use the DIF_PROPERTYCHANGE install method illustrated in this sample. |
download: enable
|
|