【发布时间】:2012-02-23 17:59:51
【问题描述】:
对于我的一位客户,我正在用 C# 编写一个 Windows 服务。它检查了很多东西,但它必须做的一件事是检查打印机端口(IP 地址)是否已经存在。如果是,将某些打印机连接到 IP 端口。如果没有,请创建端口并连接。
我使用 WMI 检查现有的打印机端口并创建它们。我还使用 WMI 将打印机连接到打印机端口。
在 Windows 7 上,这就像一个魅力。但是在我的(虚拟)XP 机器上,该服务似乎根本没有任何 WMI 权限。端口检查失败,创建失败。只给出了来自 ManagementException 的简单“拒绝访问”。
如果我制作一个小测试程序(C# 中的控制台应用程序),它也能像魅力一样工作。
我尝试在不同的帐户(本地系统、管理员、我的具有管理员权限的个人登录)下运行该服务,但似乎没有任何效果,而且我感觉您无法在 Windows XP 上的 Windows 服务中使用 WMI。
你们知道如何解决这个问题吗?或者这里有什么问题?
不知道去哪里找答案,所以在这里注册了一个账号,希望能和你一起找到正确的答案。
【问题讨论】:
标签: c# windows service windows-xp wmi