現在、C ++クライアントで使用されるC#COMサーバーを作成しています。次のようにC#コードで特定の例外が発生したときに、特定のHRESULTをC++コードに返したい
// C# COM Server Code
public void MyMethod()
{
try
{
//Some Processing
}
catch(CertainException e)
{
//I pass in my Own HResult int to the my Custom Exception
MyCustomException ex = new MyCustomException(unchecked((int)0xc00491fe));
throw ex;
}
}
//C++ Code
HRESULT hr = pMyComInstance->MyMethod();
C ++コードから取得した「hr」はC#コードで割り当てたintであると思いますが、HRRESULTを取得する代わりに、C++コードで例外を取得しました。
私は何か間違ったことをしましたか?助けてください..ありがとう