在我的代码中,我需要调用Process.Kill(),即,以便在发生以下任何一种情况时抛出Win32Exception
这一过程正在结束。有时候,我确实会面对Win32Exception,Access is denied消息和NativeErrorCode设置为5。MSDN说,当进程终止时调用Kill()时就会出现这种组合。当然,我可以捕捉到Win32Exception,但是我怎么知道为什么会抛出它呢?如果进程已经终止,或者在所有其他情况下重新抛出异常,我什么
try object result = processClass.InvokeMethod("Create", methodArgs);catch (Exception e) // Here I was hoping to get an error code.当我调用上面的WMI方法时,我预计会被拒绝访问。在catch块中,我希望确保引发的异常确实是因为访问被拒绝。有没有办法可以得到它的错误代码?拒绝访问的Win32错误代码是5。我不想在错误消息中搜索拒绝字符串或类似的内容。
throw new Win32Exception(Marshal.GetLastWin32Error());在Win32Exception的构造函数中指定自定义错误消息的。抛出新的Win32Exception(Marshal.GetLastWin32Error() ),"My custom error message.");Wrapping the Wi