2009-01-19 31 views
3

標題有點總結 - 我需要能夠在語法上連接到已知接入點(SSID和憑證將在設備配置期間加載)。據我所知,Compact Framework SDK和OpenNETCF SDK都提供了一些輔助方法,但似乎找不到有關如何使用它們的好教程。使用C#和Compact Framework管理無線網絡連接

回答

3

OpenNETCF的Smart Device Framework可能是最簡單的機制。無線電的挑戰在於無線電OEM(無論是否是設備oem)可以選擇多種方式來通告接口。也許作爲一個普通的NDIS設備與專有控制(真正的痛苦接口)或在另一端使用Wireless Zero Config (WZC)。 SDF試圖處理任何場景,根據硬件接口的廣告提供越來越多的功能。因此,如果您想要使用啓用WZC的界面添加首選網絡(實際上唯一的連接方式是將網絡置於首選列表中),並且網絡功能處於打開狀態(而不是WEP,WPA等) ),這是一個非常簡單的任務。事實上,WPA甚至TKIP都非常簡單。您只需致電AddPreferredNetwork。所以你可以調用NetworkInterface.GetAllNetworkInterfaces,然後迭代結果(或者用LINQ過濾)得到一個WirelessZeroConfigNetworkInterface類型的適配器(是,長名稱),然後用你的SSID和任何添加的信息(如密鑰材料)調用AddPreferredNetwork 。

當然,您也可以在沒有SDF的情況下完成所有這些工作 - 通過P/Invoke所需的工作量要高得多。但它仍然以某種形式「記錄」。我們所做的大部分工作是Windows CE中的網絡對話的「翻譯」,這是Platform Builder中船舶的完整源代碼。