问题标签 [wmi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3936 浏览

scripting - 想要编写 Windows WMI (wmiprvse.exe) 脚本以释放文件句柄

我正在使用由其他人编写的 VB 脚本文件,该文件使用 Windows Management Instrumentation (WMI) 调用来检查多个 Windows 服务的状态。此脚本按设定的计划每隔几分钟运行一次。我需要升级/替换这些服务的 .exe。

我停止了 VB 脚本,停止了服务,然后卸载了服务,因此它们不再出现在“服务”面板 (services.msc) 中。不幸的是,WMI (wmiprvse.exe) 仍然拥有服务 .exe 文件的句柄。我可以通过重新启动系统来释放句柄,但我想尽可能避免这种情况,因此这可以是完全脚本化/自动升级。

有没有办法强制 WMI 释放它在 .exe 上的句柄?请记住,我是使用 WMI 的新手。

0 投票
2 回答
572 浏览

windows-xp - 网页中的 ActiveX 控件以创建用户帐户

我想知道是否有任何方法可以在 Windows XP 机器上创建用户帐户,这可以通过网页上的 ActiveX 控件的脚本来完成。具体来说,我想知道是否有任何方法可以使用计算机(我预先配置和交付)部署 ActiveX 控件,这将允许使用我的网页从该计算机检测 ActiveX 控件是否存在,并允许自动创建计算机上的本地 (Windows XP) 用户帐户。从本质上讲,这是一个预先安装 ActiveX 控件(如果需要)并在桌面上提供链接的问题;用户收到机器并登录(具有管理员权限)并访问一个网站,我的服务器在那里确定适当的用户帐户,将它们作为 HTML 发送回来,ActiveX 控件创建我指定的用户帐户。

这种事情看起来应该是可能的,但同时也存在明显的潜在安全漏洞。对这些机器的访问将非常有限,因此安全问题不再是一个问题。

有谁知道这是否可能?是否有任何内置的 WMI 组件做这样的事情?XP的安全模型甚至允许这样做吗?或者这只是打开了一个应该完全避免的巨大安全漏洞?

0 投票
1 回答
4026 浏览

c# - WMI 无效类错误(试图在远程 pc 上卸载软件)

所有,我正在尝试远程卸载软件,它在测试机器上运行良好,但我在生产服务器中遇到问题。测试机器我用过windows xp,windows 2003 server,

生产机器:windows server 2003。

可能是什么原因导致此错误,任何帮助将不胜感激。如果您有任何其他方法可以在远程 PC 上卸载软件,请分享。

错误描述:

System.Management.ManagementException:System.Management.ManagementObject.Initialize(Boolean getObject) 的 System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode) 的类无效 System.Management.ManagementObject.GetMethodParameters 的 System.Management.ManagementObject.get_ClassPath() (String methodName, ManagementBaseObject& inParameters, IWbemClassObjectFreeThreaded& inParametersClass, IWbemClassObjectFreeThreaded& outParametersClass) 在 System.Management.ManagementObject.InvokeMethod(String methodName, Object[] args)

0 投票
4 回答
10420 浏览

wmi - 如何找到通过 WMI 调用安装的视频 Ram 数量?

有谁知道如何从 WMI 调用中获取 PC 的 Video Ram?

我见过对 Win32_VideoController 管理对象的 AdapterRAM 属性的调用,但这仅提供系统内存,根本不代表视频 RAM。

0 投票
2 回答
1450 浏览

.net - .NET 中通过 WMI 的数据库大小

有没有办法使用 .NET 中的 WMI 找出 SQL Server 数据库的大小?

我查看了WMI 文档,但不清楚如何找到该信息。

我们使用的是 SQL Server 2008。

-戴夫

0 投票
1 回答
2046 浏览

vbscript - 我可以使用 WMI VB 脚本创建子进程吗?

使用 WMI VB 脚本,我想创建/附加多个子进程到父进程,例如资源管理器进程。

当一个应用程序通过点击启动时,它成为资源管理器进程的子进程。对于 Windows 启动时加载的所有应用程序也是如此。

如果您使用任务管理器中的“结束进程树”上下文菜单选项终止资源管理器进程,它也会终止资源管理器进程的所有子进程(一种快速、强力的方法来清理内存而无需重新启动)。

我有两个脚本 - 一个杀死一堆特定进程,另一个重新启动这些进程。

我脚本中的大多数进程/应用程序都是在启动时加载的,因此它们是资源管理器进程的子进程。如前所述,当我杀死资源管理器进程树时,所有这些进程都会死掉。

当我使用脚本重新启动这些应用程序时,它们不再是资源管理器进程的子进程。当我杀死资源管理器进程树时,脚本启动的应用程序不会死。

现在,我知道我可以使用脚本单独杀死每个进程。但是,在脚本中杀死资源管理器进程树而不必指定我想要杀死的单个应用程序会很好。

因此,如果我有一个脚本可以将我的应用程序作为资源管理器进程的子进程启动,那么我的另一个脚本只需要终止资源管理器进程树。

我有一个脚本可以做到这一点。它循环并杀死资源管理器进程的所有子进程。但是,它仅适用于在启动时加载或被点击的应用程序。

此外,通过阻止这些应用程序在启动时加载,Windows 加载速度要快得多。稍后,我会在需要时单击我的脚本图标来加载我的应用程序。

这就是为什么我想创建一个脚本,可以将应用程序作为资源管理器进程的子进程启动。

一个有趣的旁注:我必须推迟杀死任何命令/控制台进程,否则脚本可能会在获取其余进程之前杀死自己。

任何想法如何做到这一点?

下面是我失败的代码。

0 投票
1 回答
761 浏览

c# - 如何以编程方式确定 IIS 站点是否正在接收请求?

标题基本概括了所有内容。一些警告是:

  • 我需要能够在 C# 中做到这一点
  • 它需要能够从远程服务器完成(即,在一台服务器上运行,在另一台服务器上检查 IIS)
  • 需要接近实时(1秒内)
  • 可以使用 WMI 调用

我试过查看日志文件,但事实证明这还不够接近实时。

谢谢!

编辑:我把它放在对汤姆的回答的评论中,但在这里更明显:

我能够使用此计数器查找更改:

0 投票
4 回答
5664 浏览

c# - WMI 进程监视使用过多的 CPU!有什么更好的方法吗?

我需要观察 Windows 机器上的某些进程何时启动或停止。我目前正在接入 WMI 系统并每 5 秒查询一次,但这会导致 CPU 每 5 秒出现一次峰值,因为 WMI 是 WMI。有没有更好的方法来做到这一点?我可以列出正在运行的进程并通过 System.Diagnostics 命名空间将退出事件附加到它们,但是没有用于创建的事件处理程序。

0 投票
5 回答
6715 浏览

vbscript - 是否有任何免费/开源的 vbscript 编译器?

我需要将 wmi vbscript 编译为可执行文件(以在多台计算机中自动配置)。任何免费的 vbscript 编译器或任何其他建议?

0 投票
2 回答
2326 浏览

wmi - WMI 和计算机电源设置 - 上次退出待机的日期/时间

我试图找出上次计算机退出待机/休眠状态的时间。我知道我可以通过观看 Win32_PowerManagementEvent 来获得它,但在这种情况下这不起作用,因为我需要一些我可以轮询的东西 - 有什么想法吗?它不一定是 WMI,我只是假设它会在那里。

谢谢!