2009-09-01 62 views
4

Windows 7有一個(整潔的?)新功能,稱爲「虛擬無線適配器」。閱讀在這裏:如何檢測和禁用Windows 7虛擬WiFi適配器

http://www.istartedsomething.com/20090516/windows-7-native-virtual-wifi-technology-microsoft-research/

我有直接控制使用本地WiFi API(http://msdn.microsoft.com/en-us/library/ms706556%28VS.85%29.aspx)窗口WiFi接口卡的應用程序。請把這個問題作爲一個給定的問題,我需要使用這個記錄的api直接控制WiFi適配器,並且不能僅僅把它留給操作系統和用戶。

Windows 7虛擬適配器應該包含在任何已批准的Windows 7 WiFi驅動程序中。那裏的驅動程序似乎很麻煩,而且我發現除非手動禁用虛擬WiFi適配器,否則在WLAN API指令下,真正的適配器無法可靠地連接到無線接入點。

我的主要問題是'如何檢測Windows虛擬WiFi適配器的存在?'

注意,對於WlanEnumInterfaces該文件說:

該虛擬設備通常顯示了在「網絡連接文件夾」爲 「無線網絡連接2」微軟虛擬的」一個 設備名稱WiFi 微型端口適配器'如果電腦有 單個無線網絡適配器。 此虛擬裝置用於專門 用於執行軟件 接入點(軟AP)連接和 不存在於由所述 起作用WlanEnumInterfaces返回 列表。

我懷疑有可能提供控制面板用來顯示虛擬適配器的枚舉的shell API。

要額外的功勞,我該如何以編程方式禁用此適配器?

在此先感謝。

回答

2

要檢測帶有WLAN API的Windows 7虛擬適配器,您需要使用Windows SDK版本6.1中的wlanapi.h定義的版本。

您可以使用WMI或netcon.h中定義的INetConnection COM接口啓用或禁用網絡適配器。

0

在控制面板>網絡和Internet中,有一個選項顯示:「添加無線設備」。我用它來檢測微軟虛擬wifi微型端口適配器,因爲安裝Windows 7後它沒有出現在網絡適配器中,但它在那裏並且已啓用,但未啓動。 要從命令提示符中禁用它以管理員身份運行,您可以嘗試: netsh wlan set hostednetwork mode = disallow (或不允許,我沒有嘗試過)。請參閱http://msdn.microsoft.com/en-us/library/dd815243%28VS.85%29.aspx

0

一個windows命令:netsh wlan show hostednetwork