2012-08-27 6 views
5

Wie benutzt man PyObjC, um die drahtlosen Schnittstellen eines Mac auszuschalten? Meine bisherigen Forschungen haben mich zum Cocoa Framework und PyObjC geführt. Auf der Mac Developer-Website habe ich ein Beispiel für eine Anwendung zur Verwaltung drahtloser Schnittstellen gefunden, die zeigt, wie das Cocoa-Framework zum Ein- und Ausschalten der drahtlosen Schnittstellen eines Mac here verwendet werden kann. Dieses Beispiel zeigt an, dass das CWInterface unter dem CoreWLAN-Framework erforderlich ist, um die drahtlose Schnittstelle eines Mac aus- und wieder einzuschalten. PyObjC scheint jedoch das CoreWLAN Framework von Cocoa in seinem Wrapper here nicht zu enthalten. Irgendwelche Gedanken darüber, wie man diese Aufgabe erfüllt? Könnte ich meine eigenen PyObjc-Objekte implementieren, um das CoreWLAN-Framework aufzurufen, und wenn ja, was wäre eine gute Ressource dafür? Vielen Dank für Ihre Zeit! Alles hilft.Wie benutzt man PyObjC, um die drahtlosen Schnittstellen eines Mac auszuschalten?

Antwort

5

können Sie den Rahmen manuell laden mit:

import objc 
objc.loadBundle('CoreWLAN', 
     bundle_path='/System/Library/Frameworks/CoreWLAN.framework', 
     module_globals=globals()) 

Die Klassen im Rahmen befinden sich nun im Modul Globals Wörterbuch zur Verfügung.

Holen Sie sich das drahtlose Schnittstelle mit:

iface = CWInterface.interface() 

Anschließend können Sie das Gerät einschalten oder mit:

iface.setPower_error_(True, None) 

oder

iface.setPower_error_(False, None) 

P. S. Ich werde dieses Framework in einer zukünftigen Version hinzufügen, ein Grund, warum es im Moment nicht verfügbar ist, ist, dass ich nicht wusste, dass dies ein öffentlicher Rahmen ist.