![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
"Исправить" сетевое подключение. [D7, WinXP]
Cryxalis © (2009-06-08 21:18:00)Добрый день господа програмёры. Проблема заключается в следующем: необходимо "исправить" сетевое подключение.
как в windows подключение -> "испрвить".
нижний вариант не предлагать:
ipconfig /release <имя сетевого подключения>
Cryxalis (2009-06-09 19:06:00) [1]ыыы проблема решена.
http://forum.vingrad.ru/topic-72772.html
Cryxalis (2009-06-09 13:58:00) [2]Нашёл процедуру с использованием jedi-библиотеки.
procedure EnableNetDevice(aState:boolean;index:integer);
var
NetPnPHandle:HDEVINFO;
PCHP:TSPPropChangeParams;
DeviceData:TSPDevInfoData;
begin
NetPnPHandle:=SetupDiGetClassDevs(@GUID_DEVCLASS_NET, 0, 0, DIGCF_PRESENT);
if NetPnPHandle=INVALID_HANDLE_VALUE then exit;
DeviceData.cbSize:=sizeof(TSPDevInfoData);
SetupDiEnumDeviceInfo(NetPnPHandle, index, DeviceData);
PCHP.ClassInstallHeader.cbSize:=sizeof(TSPClassInstallHeader);
if SetupDiSetClassInstallParams(NetPnPHandle,@DeviceData,@PCHP,sizeof(TSPPropChange Params)) then
begin
PCHP.ClassInstallHeader.cbSize := sizeof(TSPClassInstallHeader);
PCHP.ClassInstallHeader.InstallFunction := DIF_PROPERTYCHANGE;
PCHP.Scope := DICS_FLAG_CONFIGSPECIFIC;
if aState then
PCHP.StateChange := DICS_ENABLE
else
PCHP.StateChange := DICS_DISABLE;
SetupDiSetClassInstallParams(NetPnPHandle,@DeviceData,@PCHP,sizeof(TSPPropChange Params));
SetupDiCallClassInstaller(DIF_PROPERTYCHANGE,NetPnPHandle,@DeviceData);
end;
DeviceData.cbSize := sizeof(TSPDevInfoData);
SetupDiDestroyDeviceInfoList(NetPnPHandle);
end;
Но при компиляции делфи выдаёт ошибку, что он хз чё такое GUID_DEVCLASS_NET =(
Cryxalis (2009-06-09 11:39:00) [3]хотя погодь)) чёто IP не обновляется =)
тему следует перенести в раздел "железо" .
к сожалению я не правильно задал вопрос, и после некоторых исследований сделал вывод, что требуется через консоль windows или delphi отключить указаный девайс( сетевую карту) и через некоторое время включить его =).
Есть у кого какие идеи?
Cryxalis (2009-06-09 08:43:00) [4]как брутально =)))
ну лан спс=)
DVM (2009-06-09 01:18:00) [5]
> ipconfig /release <имя сетевого подключения>
тогда:
netsh winsock reset :)