有人知道我在哪里可以找到C#的HRESULT枚举吗?我试着找了2天。
答案 0 :(得分:4)
HRESULT
不适合枚举。它是一个32位整数值,不同的位范围具有不同的含义。
答案 1 :(得分:1)
我不认为存在这样的枚举:当引发COM异常时,CLR会尝试将其转换为.NET标准异常。如果不可能,您将收到一般性异常。这解释为here。
答案 2 :(得分:0)
您可以安装包nuget.org/packages/Microsoft.VisualStudio.Shell.14.0并使用课程VSConstants
。
答案 3 :(得分:0)
我使用 StreamSocket 进行通信,可能会发生 COMException 异常。 对于此异常,我使用了 SocketErrorStatus 枚举器。 示例代码:
try
{
// ...
}
catch (COMException comEx)
{
SocketErrorStatus socketErrorStatus = SocketError.GetStatus(comEx.HResult);
switch (socketErrorStatus)
{
case SocketErrorStatus.Unknown: break;
case SocketErrorStatus.OperationAborted: break;
// ...
}
}
特殊的异常源具有特殊的枚举器。 没有通用的枚举器。
来源:
Assembly: Windows.Foundation.UniversalApiContract
namespace Windows.Networking.Sockets
public enum SocketErrorStatus
public static class SocketError