这些通话是否等效?
Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error());
throw new Win32Exception();
最佳答案
它们不相等。
Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error())
引发COM异常。这可以是System.Runtime.InteropServices.COMException
或适合Win32错误代码的异常。 throw new Win32Exception()
引发Win32异常System.ComponentModel.Win32Exception
。