在ASP.NET页面上显示计算机信息

时间:2010-06-10 01:33:13

标签: c# asp.net

我想构建一个供最终用户访问的页面(在我们的MPLS网络中),并显示以下有关它们的信息:

  • 计算机名称
  • OS
  • 磁盘空间
  • 内存
  • IP地址
  • Active Directory用户名
  • 密码到期时间(由全局政策定义)

也许其他一些事情,例如趋势科技Office当前版本与他们的版本,所需的MS更新数量(我们使用WSUS)以及未来的其他一些事情。

我的问题是如何在用户访问该页面时从用户处提取此信息?这个的正确功能是什么?如果有可能,任何人都有他们希望分享给我学习的例子吗?

5 个答案:

答案 0 :(得分:1)

您将无法使用C#显示所有这些内容。 C#是一种服务器端语言,因此只能访问与托管服务器相关的信息。您可以从用户浏览器页面上运行的Java applet访问此信息,但我不确定。通常涉及安全限制。

答案 1 :(得分:1)

如果您允许 网页收集有关您用户的所有信息,那么阻止某些其他网页执行此操作的内容是什么?

答案 2 :(得分:0)

如果不编写浏览器插件或Java小程序,则无法执行此操作。

该信息无法通过javascript获取,并且不在浏览器发送的标题中。出于安全原因,这是设计使然。

编辑此答案仅适用于公共页面;我从随后的评论中看到,它将只是内联网。

答案 3 :(得分:0)

所以它只在内联网中?您可以使用客户端计算机IP地址(由Request.UserHostAddress报告),然后查询您的域控制器以获取信息(通过DomainController类及其公开的集合/方法)。

您所访问的大部分信息都可以通过域控制器获得,而其他一些信息可以使用远程performance counters检索(例如,您可以使用LogicalDisk查询可用磁盘空间) %可用空间计数器)。

答案 4 :(得分:0)

您可能希望查看XAML浏览器应用程序(XBAP)。除了获得完整的.Net框架的优点外,它与Silverlight类似。为了能够访问某些本地资源,您需要使用信任模式,如下所述。

WPF XAML Browser Applications Overview

Creating a Full Trust .xbap Application