Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vbObjectError如何在c#代码中使用此选项_C#_Vb.net_Vb.net To C# - Fatal编程技术网

vbObjectError如何在c#代码中使用此选项

vbObjectError如何在c#代码中使用此选项,c#,vb.net,vb.net-to-c#,C#,Vb.net,Vb.net To C#,让我知道如何在c代码中使用此“vbObjectError”: //这是我的VB代码 Public Enum CryptoErrors ErrorAquiringContext = vbObjectError + 1056 ErrorCreatingHash = vbObjectError + 1057 ErrorCreatingHashData = vbObjectError + 1058 ErrorDerivingKey = vbObjectError + 10

让我知道如何在c代码中使用此“vbObjectError”: //这是我的VB代码

Public Enum CryptoErrors
    ErrorAquiringContext = vbObjectError + 1056
    ErrorCreatingHash = vbObjectError + 1057
    ErrorCreatingHashData = vbObjectError + 1058
    ErrorDerivingKey = vbObjectError + 1059
    ErrorEncryptingData = vbObjectError + 1060
    ErrorDecryptingData = vbObjectError + 1061
    ErrorInvalidHexString = vbObjectError + 1062
    ErrorMissingParameter = vbObjectError + 1063
    ErrorBadEncryptionType = vbObjectError + 1064
End Enum

您可以将其逐字翻译为:

public enum CryptoErrors
{   
     ErrorAcquiringContext = Microsoft.VisualBasic.Constants.vbObjectError + 1056,
     ...
}
在这种情况下,您需要对Microsoft.VisualBasic.dll的引用

如果不想依赖Microsoft.VisualBasic.dll,可以定义自己的C#常量:

public const int VBObjectError = -2147221504;
但我想问,为什么在C#应用程序中需要它。从
vbObjectError
偏移的常数通常对应于HRESULT,并在VB
Err.Raise
语句中使用


在C#中,您只需抛出一个异常。

不要这样做。在C#中抛出异常,不使用错误代码。如果要在VB中使用C#编写代码,则需要此常量。当然,如果这样做,可能(1)已经有了对Microsoft.VisualBasic.dll的引用,(2)已经知道问题的答案。