私はdllを登録する方法を知っていますが、なぜ私がそれをやっているのか、dllをどのような条件で登録しなければならないのか、本当にわかっていません。誰かが説明したり、いくつかの文書を私に指摘できますか?DLLの登録とは何ですか?
答えて
DLLが登録されている場合は、あなたのDLL内DllRegisterServer
メソッドのエントリポイントが呼び出されます。同様に、DLLが登録解除されると、DllUnregisterServer
が呼び出されます。
this MSDN articleで説明したように:
にインプロセスサーバーに指示しますが、このサーバー モジュールでサポートされるすべての クラスに対してそのレジストリエントリを作成します。この機能が失敗した場合、 クラスのすべてのレジストリの状態は不確定です。 COM DLLの
、あなたは、必要に応じて登録/登録解除を行う独自のDllRegisterServer
とDllUnregisterServer
エントリポイントメソッドを実装する必要があります。 DllRegisterServer
のコード例はhereです。
DLL登録の最終結果は、DLL内のコンポーネントのためのCLSIDの全てがHKEY_CLASSES_ROOT\CLSID
下に登録されていることです。これにより、別のDLLまたはアプリケーションからCOMオブジェクトをインスタンス化するときに、CoCreateInstance
が正しいサーバーを見つけることができます。
DllUnregisterServer
逆のことを行い、そこに置かれたすべてのCLSIDをDllRegisterServer
で削除します。
より一般的な情報を約DllRegisterServer
hereを見つけることができます。それはCOMオブジェクトを実装する際に最も一般的DLLの登録と呼ばれるもの
です。 regsvr32は、オブジェクトのインスタンスを確実に作成できるようにします。例えば、 VBScriptはNewまたはCreateObject()を使用して、名前またはCLSIDに関係なく、COMによって新しいインスタンスを作成するためにロードするDLLを認識します。
は、(非常に)簡単な要約のため"the layman's explanation"を参照してください。私はVB6でActiveX DLLを作成する場合
リンクが壊れています。代替案を提示してください。 –
完了。また、私はたhttps://web.archive.org/web/20170222094351/https://chewychong.wordpress.com/2004/08/23/layman-s-explanation-of-regscvs-regasm-regsvr32/ –
は単に私がのDllRegisterServerを実装する必要はありませんregsvr32.exeを
としてアーカイブこのソースコードがVisual Studioで実際に利用可能であることに驚いています。http://msdn.microsoft.com/en-us/library/ms177531.aspx –
- 1. redemption dll登録
- 2. WindowsセットアッププロジェクトでDLLを登録および登録解除する
- 3. 再登録DLLエキスDLLの問題
- 4. GACにDLLを登録
- 5. GACにDLLを登録するには?
- 6. dllをJenkins + Octopusで登録する
- 7. IIS7.5(REGDB_E_CLASSNOTREG)でCOM .dllを登録する
- 8. C#のWindows 7でdllを登録
- 9. BroadcastReceiverのコードとマニフェストの登録の違いは何ですか?
- 10. MVC登録とログインModel--何?
- 11. アセンブリマニフェストなしでGACにDLLを登録
- 12. C#dllとvC++ dllの中で、COM dllの登録無料起動がどう違うのですか?
- 13. xmppの帯域内登録とは何ですか?
- 14. ActiveXのDLL登録の代替方法
- 15. regsvr32を使用した.dllの登録
- 16. Azure Notification Hub:登録タイプ「ネイティブ」と「テンプレート」は何ですか?
- 17. Excel 2007で自分のdllを登録するには
- 18. Windows 7の.batファイルからDLLを登録する方法
- 19. 登録と自動ストレージクラスの登録?
- 20. 登録ユーザーと未登録のユーザー
- 21. Windowsの登録dllを確認するには?
- 22. .NETでUACアクティベーションなしでプログラムでDLLを登録する
- 23. JavaウィンドウのWindows登録クラスは何ですか?
- 24. お勧めのPHP/MySQLユーザー登録システムは何ですか?
- 25. DLLを登録する、Visual FoxPro 7で、Windows 7の
- 26. PowerShellで登録済みの外部assebly(dll)をロードします。
- 27. GCM登録トークンはGCM登録IDですか?
- 28. 手動でWiXで64ビットDLLを登録する方法
- 29. ウィンドウクラスを登録する目的は何ですか?
- 30. facebokkアプリページにハッシュキーを登録する目的は何ですか?
のソースコードを参照してください。 – CJ7