草庐IT

c++ - 从 C++ 中的 WMI(Win32_LogicalDisk 类)调用 Chkdsk -> 'Parameter is not valid'

我正在尝试从C++中的WMI运行Chkdsk(我正在使用QtFramework)。“ExecMethod”返回“参数无效”。我已经根据http://msdn.microsoft.com/en-us/library/cc250766.aspx设置了参数->我正在使用半同步调用。我正在使用MSDN文档(Win32_LogicalDisk、WMIC++应用程序示例、Win32_Volume,...)我也尝试过使用Win32_Volume,但效果不佳。我的部分代码:IWbemLocator*pLoc=NULL;HRESULThres=CoCreateInstance(CLSID_WbemLoc

python - 可以使用 WMI Python 终止进程

我知道可以使用WMI模块在远程Windows机器上创建进程,但我想知道结束进程是否也可以这样说。我无法找到与此相关的线程或任何文档,所以如果你能帮助我,我将不胜感激。 最佳答案 我想出了答案,以防其他人遇到类似问题;你实际上甚至不需要WMI并且可以直接从命令提示符运行:如果您在同一个网络中,您可以通过命令提示符发出命令,格式如下:taskkill/s[计算机名称或IP]/u[USER或DOMAIN\USER]/p密码/pid[要杀死的进程,即notepad.exe]这将需要一些时间,但最终会终止正在运行的进程。

python - 通过 WMI 确定正在运行的 GPU

我正在尝试编写一个python脚本来确定当前正在运行哪个GPU(专用或集成)。到目前为止,我已经设法通过运行dxdiag并解析每个gpu设备模式的输出使其工作,但这花费的时间太长了。有谁知道dxdiag如何获取此信息?有没有办法通过Windows管理工具获取信息?任何帮助表示赞赏。谢谢 最佳答案 DXDiag大多数可能从WMI表中获取数据。不过我需要确认一下。wmicPATHWin32_VideoControllerGETAdapterram将为您提供您正在寻找的信息。如果您想了解更多信息,请运行下面提到的命令。wmicPATHWi

windows - 如何合并 Get-CimInstance 和 Get-WMIObject 函数的输出

我有2个powershell脚本,我在下面提到过。我正在寻找一种结合这两个脚本的方法。但是我无法这样做,因为其中一个脚本使用的是CIM方法,而另一个脚本使用的是WMI方法。我想要完成的是提供同一台服务器的上次重启时间和可用空间(用户必须输入服务器名称,然后按Enter它会显示上次重启时间和可用空间)。脚本1(CIM方法):$Server=Read-Host-Prompt'Inputyourservername'Get-CimInstance-ClassNamewin32_operatingsystem-ComputerName$Server|selectcsname,lastbootu

c# - 使用 WMI 调用解决 "Access Denied"异常

在针对WMI请求执行时,我收到一条异常消息“拒绝访问”。某些WMI请求似乎需要比其他请求更高的安全权限。最终我的目标是监控系统内的进程启动并记录。无论是否有更好的方法,它现在都成为让这种WMI方法起作用的仇恨。我尝试了SecurityTools->WMIProgrammingUsingC#.Net的代码并且仍然收到异常。如果您复制博客条目中的代码,您可以重现我的问题。关于类似主题的另一篇文章可以在linktext找到但再次尝试代码,您将看到相同的安全异常。我如何允许我的代码执行这些WMI请求?我在新的C#命令行项目中运行Windows7Pro和VS2010。编辑:为VS2010实例选择

windows - WMI 中的数据库条目如何(以及多久)更新一次?

我们需要为我们的Windows客户端计算机设计一个监控应用程序,我正在寻找有关WMI架构的一些信息。我们目前的计划是使用相当简单的VBScript脚本来定期查询数据库,将相关信息写入平面文件,以便稍后传输到中央服务器(我们的非Windows机器已经完成了所有繁重的分析和报告工作。我曾尝试在MSDN和整个网络上寻找这个问题的答案,但所有文章似乎都特别“空洞”——很多“如何使用它”,但很少涉及“它的内部工作原理”。以VBScript段为例:setwmi=getObject("winmgmts:\\.\root\cimv2")setitemCpu=wmi.get("Win32_PerfRaw

c# - 从 Win32_PrintJob 获取总页数

Win32_PrintJobWMI类有很多属性。(参见:Win32_PrintJobonMSDN)我有一个小型.NET应用程序,可以显示打印作业并显示作业信息。TotalPages属性给出了发送的页数。但该数字并未考虑用户请求的份数。因此,如果用户想要打印5份两页文档,TotalPages的值将为2,而不是10。如何获取打印作业的份数,或获取要打印的总页数(份数乘以作业中的页数)?谢谢 最佳答案 我在使用Win32_PrintJob时遇到了同样的问题(TotalPages/PagesPrinted不考虑份数)。我通过结合WMI和Wi

.net - 如何从远程机器获取 CommonApplicationData?

我想获取远程机器上“CommonApplicationData”的路径。这是本地版本Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)但我如何远程执行此操作?也许有一些WMI? 最佳答案 解决了publicstaticstringGetCommonAppData(stringmachineName){varshellFoldersPath=@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explo

c# - 在 Windows 上获取有线网络名称和安全级别

关于这个问题,我的意思是用户指定的名称窗口让您输入类似:“我的家庭网络”“地下室”“车库”而不是ssid(尽管我也想阅读关于wifi连接的那个)我特别想阅读可以为网络选择的Windows安全级别:家庭/办公室/公共(public)我想使用此信息在连接到各种网络时自动打开和关闭程序。更新:感谢@Damien_The_Unbeliever的回答,我能够解决我的问题并找到以下信息,我希望它也能帮助其他人:Networkawarenessinwindows7andvista(MSDN,Unmanaged)WindowsAPICodePack(Microsoft,managedwrapperfo

windows - 如何在不同域的远程计算机上运行 powershell 命令

我想在几台服务器上运行一些脚本,但问题是它们都在不同的域中。如果它们在同一个域中,那么我可以运行它是Powershell,但跨域我该怎么做?任何人都可以对此有所了解吗? 最佳答案 在服务器端Enable-PSRemoting在客户端,执行以下命令:cdwsman:localhost\ClientSet-ItemAllowUnencrypted-Value$true-forceSet-ItemTrustedHosts-Value*-force然后使用以下命令从客户端计算机在服务器计算机中创建session:$cred=get-cred