2012-08-26 28 views
6

Python'da bir kablosuz ağa bağlanmak veya bağlantısını kesmek için bir yol olup olmadığını, tercihen şifreyi sağladığım takdirde hem genel hem de güvenli ağlarda çalışacak bir yol olup olmadığını görmek istiyorum. Kablosuz ile ilgili seçenekleri yapılandırabilirsem, bu bir ek bonus olur (ör. Menzildeki tüm ağları gör, kapsama alanındaki ağlar hakkındaki bilgileri (şifreleme türü gibi) görün). Windows bilgisayar çalıştırıyorum, bu yüzden Linux'ta veya diğer işletim sistemlerinde bu soruya birçok cevap görüyorum, ancak pencerelerde yok. Şimdiden teşekkürler.Python'da bir kablosuz ağı nasıl bağlarım/bağlantısını kes/yapılandırırım?

cevap

4

Muhtemelen bunun için Windows'taki DLL'lerden birini kullanmanız gerekecektir. ctypes'u kullanarak Python'dan win32 API'sine erişebilirsiniz.

WlanOpenHandle ile başlayan ve WlanEnumInterfaces istediğini yapabilir functions from wlanapi.dll gibi görünüyor.

Düzenleme: Örneğin, kod için this kabul edilen cevaba bakın.

+0

Peki, bunu nasıl yapabileceğimi açıklayabilir misiniz? Ben ctpes içinde enumlar yapma konusunda hiçbir şey görmedim ve bir "WLAN_CONNECTION_MODE" enum türünün tanımını gerektiriyordu. –

+0

C dilinde bir 'enum ', aksi belirtilmedikçe, 0 ile başlayan ve 1 ile artan tamsayı sabitlerinin bir listesini yapmak için temelde bir kısayoldur. Yani http://msdn.microsoft.com/en-us/library/windows/desktop/ms706844%28v=vs.85%29.aspx, 'wlan_connection_mode_profile' 0'a bakarsanız, wlan_connection_mode_temporary_profile' 1, yukarı 'wlan_connection_mode_invalid' 5’dir. –