c# - 根据登录的 Windows 用户设置 DNS-Server
问题描述
我目前正在使用 C# 开发一个 Windows 应用程序,该应用程序需要根据当前使用 PC 的 Windows 用户设置不同的 DNS 服务器。
根据先前选择的页面,不同的 DNS 地址都会为用户阻止不同的网页。
我只有在以管理员身份登录时才找到更改 DNS 服务器的方法。
有没有办法为特定用户使用特定的 DNS 地址,或者至少让非管理员用户有权更改 DNS 服务器,这样我就可以在应用程序启动时将其作为操作来执行?
非常感谢。
解决方案
您可以创建一个以适当权限运行的 Windows 服务,然后让它接受某种 IPC 调用(例如,通过启动 HTTP 侦听器,或让它监视配置文件的更改),然后通过 WMI 更改 DNS .
推荐阅读
- sql - 根据 SQL Server 中可用的最新日期定义车辆当前状况
- java - java.lang.NoSuchMethodError: org.apache.logging.log4j.ThreadContext.getThreadContextMap()
- jasper-reports - 如何在生成的 PDF 文件中禁用选项作为 COPY?
- react-native - React-native-zoom-us 重新加载 ios 应用程序后无法加入会议
- c# - 如何在 C# Main 函数中将密码作为命令行参数处理?
- regex - nginx 将子域重写为 www 除非 url 包含字符串
- .net - dotnet 使用 RID“osx.11.0-arm64”导致“没有可用于指定 RuntimeIdentifier 的应用程序主机”
- sql - SQL Server 按 ID 分区并根据条件添加或减去前面的行
- snowflake-cloud-data-platform - 带有 keycloak 的雪花外部 auth0
- pyqt5 - Pyinstaller:使用正确的文件路径构建窗口应用程序