| mika505 
								Новенький    Offline | 
								|  | « :  28-10-2010 15:20 »   |  | 
 
 Привет всем!Столкнулся с проблемой включения WiFi адаптера.
 Адаптер AR6K_SD1 в реестре:
 
 [HKEY_LOCAL_MACHINE\Comm\AR6K_SD1]
 Display Name=AR6000 WLAN Adapter SD
 Group=NDIS
 ImagePath=ar6k_ndis_sdio.dll
 Wireless=1
 
 [HKEY_LOCAL_MACHINE\Comm\AR6K_SD1\Parms]
 powerSaveMode=2
 currentPowerState=1
 BusType=0
 BusNumber=0
 BtCoexAntConfig=0
 eepromFile=NULL
 
 Пытался через SetDevicePower(szName, POWER_NAME, PwrDeviceUnspecified) - включение, и SetDevicePower(szName, POWER_NAME, D4) - выключение.
 Где szName={98C5250D-C29A-4985-AE5F-AFE5367E5006}\AR6K_SD1.
 
 Проблема в том, что при перезагрузке, когда адаптер выключен, функция включения не работает. Если включить через навигатор WiFi, то SetDevicePower начинает работать и на включение, и на выключение.
 
 Как я понял проблема в том, что адаптер необходимо сначала активировать.
 Проверил регистр до включения WiFi и после - разница в том, что появляется новый ключ
 [HKEY_LOCAL_MACHINE\Drivers\Active\103]
 Hnd=3582778688
 Name=DRG1:
 Key=\Drivers\SDCARD\ClientDrivers\Custom\MANF-0271-CARDID-0201-FUNC-1
 BusParent=3489963616
 InterfaceType=0
 BusName=SDBus_1_0_1
 ClientInfo=686337
 
 Сам ключ [HKEY_LOCAL_MACHINE\Drivers\SDCARD\ClientDrivers\Custom\MANF-0271-CARDID-0201-FUNC-1] выглядит так
 Dll=ar6k_ndis_sdio.dll
 Prefix=DRG
 
 В общем, тогда пробовал до вызова SetDevicePower на включение вызывать
 handle = ActivateDevice(L"\\Drivers\\SDCARD\\ClientDrivers\\Custom\\MANF-0271-CARDID-0201-FUNC-1",NULL);
 на что выдовало handle=NULL, а GetLastError()=110(ERROR_OPEN_FAILED
 )
 
 В общем, больше пока ничего в голову не пришло.
 
 Если есть идеи, пишите, буду благодарен.
 |