我是mac os x编程的新手,只是编写了一个小工具,可根据配置禁用无线或有线适配器。我能够使用corewlan框架断开无线连接,如:
CWInterface interface = [CWInterface interfaceWithName:@"en1"];
BOOL result = [interface setPower:NO error:&err];
它按预期工作。我需要类似的代码来禁用/断开以太网适配器。我研究了ifconfig(如下所述):
sudo ifconfig en0 down
但它需要管理员密码而且我不想这样做。请建议一种替代的程序方法来禁用没有root密码的以太网适配器。
我读到 SCNetworkConfiguration 可以使用,但不知道如何使用它。请帮忙。
由于
答案 0 :(得分:0)
如果没有管理员权限,您就无法关闭网络接口(即这就是网络首选项窗格中存在挂锁的原因)。可以这样想......你不希望任何公共机器上的非管理员用户能够任意关闭网络。
对于我自己的应用程序,我也禁用了Ethernet& WiFi,我必须获得启动单独工具的权限,以便从SystemConfiguration框架中以管理员身份运行。