Exceptions vom COM-Server zum COM-Client übertragen (_com_error)
-
(NT 4.0, VC++ 6.0, SP 6)
Hallo Board!
Ich habe einen COM Server und einen COM Client.
Ich will z.B.: In einer Methode des COM-Servers throw _com_error; machen, damit die Exception den COM-Client erreicht und das der COM-Client sie in einem catch Block bearbeitet.
Noch besser wäre es, wenn ich mit der _com_error Exception eigenen Text wieterleiten könnte. Z.B.: // Pseudocodeclass ComError : public _com_error // oder so ä. { .... // Die einzigen 2 neue Methoden public: // Nach dem Aufruf von SetErrorMessage(rErrorDescription) soll der Aufruf // von ComError::Description() nicht ein COM Error _bstr_t liefern, // sondern ein _bstr_t, wo der Wert von rErrorDescription steht zurück geben void SetErrorMessage(const CString& rErrorDescription) { m_ErrorMessage = rErrorDescription; } CString& GetErrorMessage() { return m_ErrorMessage; } // Die einzige neue Member private: CString m_ErrorMessage; };_com_error Liefert keine Methode, wo man den ErrorText selbst setzen kann.
Wie kann ich das am besten umsetzten?
-
Die Frage hat sich gerade erledigt:
HRESULT WINAPI AtlReportError(..)