WMI(Windows管理规范)的一个实现
2006-07-20 11:39:52 来源:WEB开发网核心提示: Process控制显示系统中运行着的进程,启动进程的用户,WMI(Windows管理规范)的一个实现(5),CPU使用率,内存的使用情况,否则,我们就无需给InvokeMethod()传递任何的参数了,要获得进程的用户信息,需要调用GetOwner(User, Domain)方法
Process控制显示系统中运行着的进程,启动进程的用户,CPU使用率,内存的使用情况。要获得进程的用户信息,需要调用GetOwner(User, Domain)方法,其中的User 与Domain是传出参数。我们如何才能从InvokeMethod()调用中取回这些传出型参数呢?这实际取决于我们是如何实现这个InvokeMethod()方法的。如果我们不需要管理异步操作,那么我们只需要传递一个string数组给InvokeMethod()以获取传出的参数值。否则,我们就无需给InvokeMethod()传递任何的参数了,而是从completionHandlerObj.ReturnObject属性中取回传出的参数值。
//-------------------------------------------------
//在不使用observer对象的情况下获取进程用户信息
//--------------------------------------------------
//为InvokeMethod()方法准备参数表
string[] methodArgs = {"", ""};
//获取进程用户信息
mo.InvokeMethod("GetOwner", methodArgs);
//methodArgs[0] 进程用户
//methodArgs[1] 进程的域
//-----------------------------------------------
//在使用observer对象的情况下获取进程用户信息
//-----------------------------------------------
mo.InvokeMethod(observer,"GetOwner", null);
while (!completionHandlerObj.IsComplete)
{
System.Threading.Thread.Sleep(500);
}
if (completionHandlerObj.ReturnObject["returnValue"].
ToString() == "0")
structProcess.stringUserName = completionHandlerObj.
ReturnObject.Properties["User"].Value.ToString();
else
structProcess.stringUserName = "";
终止进程
更多精彩
赞助商链接