0

我想要的是:

有一个适用于 Windows XP SP2 和 SP3 的 Windows 应用程序(使用 .NET 3.5、VS2008、C# 制作)

一般用户可以更改那里的 IP 或修改他们的 IP 地址。

现在,当我的应用程序启动时,我不希望用户更改那里的 IP 地址,直到我的应用程序停止。

希望现在的问题会很清楚。

很快需要你的建议。

仅推荐 C# .NET 或 VB.NET 中的解决方案。

4

3 回答 3

1

我认为暂时阻止用户更改其 IP 地址没有什么可以做的。

  1. 在大多数机器上,IP 地址由 DHCP 服务器控制。如果此服务器决定您需要更改 IP 地址,您必须遵循或关闭您的连接。
  2. 管理员可以更改 IP 地址,您可以从管理员组中删除用户(但这并不妨碍第 1 点)。但这应该意味着你有一个受控的用户群(在企业中),你应该被允许这样做。(如果他们不是管理员,您将如何将他们放回管理员组)?

如果您的应用程序的设计依赖于始终具有相同的 IP 地址,那么它可能是错误的。或者您应该在“要求”中提及它。

例如:对于不间断的“动作”,P2P 客户端(如 Bittorrent)依赖于具有相同的 IP 地址,但它们不强制执行此操作。

于 2010-11-16T10:40:54.293 回答
1

一般用户可以更改那里的 IP 或修改他们的 IP 地址。

不,他们没有,这是一项非常特权的操作。需要管理员帐户。在 Vista 和 Win7 上,必须确认 UAC 提示。阻止管理员管理机器是一个失败的原因,通常是一种敌对行为。毫无意义,管理员拥有杀死您的应用程序所需的所有权力。

解决真正的问题。您可以指望使用管理员帐户运行应用程序的日子已经一去不复返了。任何运行 Vista 或 Win7 的人都会很快卸载您的应用程序。

于 2010-11-16T14:07:54.190 回答
0

我不认为您可以阻止访问,但您可以监控 IP 地址,当它更改时,您可以使用 WMI 将其回滚到旧 IP。

于 2010-11-16T10:51:33.037 回答