DLL側で発生したエラーを拾うには?

解決


HELP  2002-02-14 00:32:51  No: 75263

ActiveXDLLで作成した共通画面を呼び出し
DLL側でVBエラー等が発生した場合に
呼び出し元のEXEでエラーの情報を取得する事はできないのですか?
ERR.Objectは空っぽだし、LastDllErrorなるものがありましたが
特にエラー情報は内様子誰か教えてください。


マザー  2002-02-18 19:33:26  No: 75264

DLL側のクラスの中に↓の様なプロパティを用意(参照のみ)
Public Property Get DLLErr() As ErrObject
    'エラーオブジェクト渡しちゃう、多分出来ます
    '出来ない場合細分化して(Number,Description)を用意して見て下さい
    DLLErr = ErrObject
End Property
受け取り側は
dim ClsNotify as New ClsErrTest
If ClsNotify.DLLErr = True Then     'DLL側のエラー判定
    Debug.Print ClsNotify.Number
    Debug.Print ClsNotify.Description
End If
インスタンスクリアするまでエラー情報は残っていると思います


HELP  2002-02-20 02:08:19  No: 75265

解決しました。
↑のProperty Getの部分を以下の様にすれば可能でした。
Public Property Get DLLErrObject() As ErrObject
    Set DLLErrObject = Err                  
End Property
こんな事ができるとは知りませんでした。
いい勉強になりました
マザーさんありがとうございます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加