Qt:设置IP

Posted

技术标签:

【中文标题】Qt:设置IP【英文标题】:Qt: Setting the IP 【发布时间】:2012-03-08 14:58:57 【问题描述】:

我想将网络设备的 IP/网络掩码设置为特定值,但在 Qt 中找不到执行此操作的方法。找出设备的 IP 地址很容易(感谢 QNetworkInterface),除非我错过了什么,否则不要更改它?

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

平台是嵌入式linux。

除非必须,否则我宁愿不调用 ifconfig!

【问题讨论】:

AFAIK 这是不可能的。所有相关的类都是只读的(除了网络地址条目,它只是一个封装)。您将不得不求助于 IOCTL 或 ifconfig 脚本。 这是一项系统管理任务,Q​​t 没有涵盖。它需要 Qt 支持的大多数操作系统的管理员/root 权限,而 UI 应用程序在正常(和安全)设置中通常没有这些权限。此外,在大多数(如果不是所有)环境中,直接从应用程序中弄乱此类设置而不是使用系统的配置工具将被认为是非常糟糕的风格。 很公平,我认为这不太可能。无论如何干杯! 弗兰克 - 如果您可以将该评论添加为回复,我会接受它,而不是留下悬而未决的问题。 【参考方案1】:

怀疑没有办法做到这一点,Qt 没有执行必要调用的访问权限。

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

【讨论】:

以上是关于Qt:设置IP的主要内容,如果未能解决你的问题,请参考以下文章

QT 5.5.0 怎么设置才能实现静态编译

Qt开源作品17-IP地址输入控件

Qt编写自定义控件68-IP地址输入框

Qt 在Windows下设置Wifi连接和有线连接

Qt 在Windows下设置Wifi连接和有线连接

QT操作mysql数据库(创建,插入,更新,删除)