Prev: keyboard filter driver
Next: Programming style...
From: Pavel A. on 27 May 2005 19:31 "Wojciech F." <"vankaszaner[REMOVE_IT]"@tlen.pl> wrote in message news:1b2cj2tbnczdv.dlg(a)tofik.homeip.net... > And my current case: > > ULONG oid; > > oid=OID_802_11_BSSID_LIST_SCAN; > > //it always fails with ERROR_NOT_SUPPORTED > //OIDScope from PCAUSA shows OID_802_11_BSSID_LIST_SCAN in list of > //supported OIDs > > if (!DeviceIoControl(h,IOCTL_NDIS_QUERY_GLOBAL_STATS, &oid, sizeof(oid), > (LPVOID) &Buf[0],sizeof(Buf),&bytes,NULL)) > { > DWORD res=GetLastError(); > return res; > } Sure enough, it will fail. IOCTL_NDIS_QUERY_GLOBAL_STATS always does Query, but OID_802_11_BSSID_LIST_SCAN works only if you Set it. Getting OID_802_11_BSSID_LIST is a Query, thus it works. So you do need something like ndis transport driver or ask the manufacturer of the wireless adapter to help. Maybe there is a parameter that tells the driver to refresh scan results more frequently. Also, note that OID_802_11_BSSID_LIST_SCAN does not produce new scan results immediately. It only starts the scan. The adapter or driver complete it when they can. Regards, --PA
From: Wojciech F. on 30 May 2005 07:37 > Sure enough, it will fail. > IOCTL_NDIS_QUERY_GLOBAL_STATS always does Query, but > OID_802_11_BSSID_LIST_SCAN works only if you Set it. > Getting OID_802_11_BSSID_LIST is a Query, thus it works. > > So you do need something like ndis transport driver or ask the manufacturer of the wireless adapter to help. > Maybe there is a parameter that tells the driver to refresh scan results more frequently. > > Also, note that OID_802_11_BSSID_LIST_SCAN does not produce > new scan results immediately. It only starts the scan. The adapter or driver complete it > when they can. Yes. I wrote already that I don't know how to SET that oid. But I wonder how does it make NDISUIO service. It seems to support a lots of w-lan cards (i tested it with 5 different cards). I can't belive that it uses a magic parameters specific for each card's manufacturer. When I use NDISUIO and I set OID..._SCAN it seems to do real scan, because I need to wait a little bit longer until DeviceIoControl funcion returns. It is clearly noticeable on PocketPC. Sometimes it takes 2s until function returns and after reading the list through the oid.._list it always differs (new accespoints, rssi). -- Thanks, Wojtek E-mail hint: add [usenet] to the subject "Ipsa scientia potestas est."
From: Pavel A. on 31 May 2005 15:09 "Wojciech F." <"vankaszaner[REMOVE_IT]"@tlen.pl> wrote in message news:1e9nxskr0q8le$.dlg(a)tofik.homeip.net... > Yes. I wrote already that I don't know how to SET that oid. But I wonder > how does it make NDISUIO service. NDISUIO (or clones of DDK Ndisprot sample ) is a real NDIS transport driver, so the full set of NDIS intefaces is available to it. > It seems to support a lots of w-lan cards > (i tested it with 5 different cards). I can't belive that it uses a magic > parameters specific for each card's manufacturer. It is an universal vehicle to send any NDIS request to 3rd party netcard drivers. It has nothing specific to wi-fi. Just study the ndisprot sample. (if you work on WinCE OS, there it is different. I'm talking about NT based Windows). > When I use NDISUIO and I set OID..._SCAN it seems to do real scan, because > I need to wait a little bit longer until DeviceIoControl funcion returns. > It is clearly noticeable on PocketPC. Sometimes it takes 2s until function > returns and after reading the list through the oid.._list it always differs > (new accespoints, rssi). Depends on the netcard driver. Scan can and should run asynchronously. Holding the caller for 2 seconds is bad. Regards, --PA
From: Wojciech F. on 3 Jun 2005 05:51 Tue, 31 May 2005 22:09:29 +0300, microsoft.public.development.device.drivers, Pavel A.: > "Wojciech F." <"vankaszaner[REMOVE_IT]"@tlen.pl> wrote in message news:1e9nxskr0q8le$.dlg(a)tofik.homeip.net... >> Yes. I wrote already that I don't know how to SET that oid. But I wonder >> how does it make NDISUIO service. > > NDISUIO (or clones of DDK Ndisprot sample ) is a real NDIS transport driver, so the full set of NDIS intefaces is available to > it. > >> It seems to support a lots of w-lan cards >> (i tested it with 5 different cards). I can't belive that it uses a magic >> parameters specific for each card's manufacturer. > > It is an universal vehicle to send any NDIS request to 3rd party netcard drivers. > It has nothing specific to wi-fi. Just study the ndisprot sample. > (if you work on WinCE OS, there it is different. I'm talking about NT based Windows). > >> When I use NDISUIO and I set OID..._SCAN it seems to do real scan, because >> I need to wait a little bit longer until DeviceIoControl funcion returns. >> It is clearly noticeable on PocketPC. Sometimes it takes 2s until function >> returns and after reading the list through the oid.._list it always differs >> (new accespoints, rssi). > > Depends on the netcard driver. Scan can and should run asynchronously. > Holding the caller for 2 seconds is bad. > > Regards, > --PA thanks for discussion, friend. -- Thanks, Wojtek E-mail hint: add [usenet] to the subject "Ipsa scientia potestas est."
From: Arsalan Ahmad on 3 Jun 2005 13:47
But what I have noted is that I have to wait 3 to 5 sec using Sleep() before calling OID_...SCAN and OID_..._LIST otherwise i dont get the updated list. "Wojciech F." <"vankaszaner[REMOVE_IT]"@tlen.pl> wrote in message news:4t4am2hkiwo2.dlg(a)tofik.homeip.net... > Tue, 31 May 2005 22:09:29 +0300, > microsoft.public.development.device.drivers, Pavel A.: > >> "Wojciech F." <"vankaszaner[REMOVE_IT]"@tlen.pl> wrote in message >> news:1e9nxskr0q8le$.dlg(a)tofik.homeip.net... >>> Yes. I wrote already that I don't know how to SET that oid. But I wonder >>> how does it make NDISUIO service. >> >> NDISUIO (or clones of DDK Ndisprot sample ) is a real NDIS transport >> driver, so the full set of NDIS intefaces is available to >> it. >> >>> It seems to support a lots of w-lan cards >>> (i tested it with 5 different cards). I can't belive that it uses a >>> magic >>> parameters specific for each card's manufacturer. >> >> It is an universal vehicle to send any NDIS request to 3rd party netcard >> drivers. >> It has nothing specific to wi-fi. Just study the ndisprot sample. >> (if you work on WinCE OS, there it is different. I'm talking about NT >> based Windows). >> >>> When I use NDISUIO and I set OID..._SCAN it seems to do real scan, >>> because >>> I need to wait a little bit longer until DeviceIoControl funcion >>> returns. >>> It is clearly noticeable on PocketPC. Sometimes it takes 2s until >>> function >>> returns and after reading the list through the oid.._list it always >>> differs >>> (new accespoints, rssi). >> >> Depends on the netcard driver. Scan can and should run asynchronously. >> Holding the caller for 2 seconds is bad. >> >> Regards, >> --PA > > thanks for discussion, friend. > > > -- > Thanks, > Wojtek > > E-mail hint: add [usenet] to the subject > "Ipsa scientia potestas est." |