C++ Qt:设置IP地址

C++ Qt:设置IP地址,c++,linux,qt,C++,Linux,Qt,我想将网络设备的IP/Netmask设置为特定值,但在Qt中找不到这样做的方法。很容易找到设备的IP地址(谢谢QNetworkInterface),除非我遗漏了什么,否则不要更改它 据我所知,报告回QNetworkAddressEntry对象的更改值实际上不会更新IP本身 平台采用嵌入式linux 我宁愿不打电话给ifconfig,除非我不得不这么做 由于怀疑无法执行此操作,Qt没有执行必要调用的访问权限 解决方案是构造一个服务守护进程,我们通过DBus联系它来为我们执行命令,然后异步报告命令的

我想将网络设备的IP/Netmask设置为特定值,但在Qt中找不到这样做的方法。很容易找到设备的IP地址(谢谢QNetworkInterface),除非我遗漏了什么,否则不要更改它

据我所知,报告回QNetworkAddressEntry对象的更改值实际上不会更新IP本身

平台采用嵌入式linux


我宁愿不打电话给ifconfig,除非我不得不这么做

由于怀疑无法执行此操作,Qt没有执行必要调用的访问权限


解决方案是构造一个服务守护进程,我们通过DBus联系它来为我们执行命令,然后异步报告命令的结果。

AFAIK这是不可能的。所有相关的类都是只读的(除了网络地址条目,它只是一个封装)。您将不得不求助于IOCTL或ifconfig脚本。这是一项系统管理任务,不在Qt范围内。它需要对Qt支持的大多数操作系统具有管理员/root权限,而在正常(安全)设置中,UI应用程序通常不具有管理员/root权限。另外,如果不是所有的环境,直接从应用程序中修改这些设置而不是使用系统的配置工具,在大多数环境中都会被认为是非常糟糕的风格。干杯!弗兰克-如果你能加上这句话作为回应,我会接受它,而不是留下一个悬而未决的问题。