私は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. IIS7.5(REGDB_E_CLASSNOTREG)でCOM .dllを登録する
- 7. C#のWindows 7でdllを登録
- 8. アセンブリマニフェストなしでGACにDLLを登録
- 9. xmppの帯域内登録とは何ですか?
- 10. ActiveXのDLL登録の代替方法
- 11. C#dllとvC++ dllの中で、COM dllの登録無料起動がどう違うのですか?
- 12. Excel 2007で自分のdllを登録するには
- 13. Windows 7の.batファイルからDLLを登録する方法
- 14. Windowsの登録dllを確認するには?
- 15. お勧めのPHP/MySQLユーザー登録システムは何ですか?
- 16. JavaウィンドウのWindows登録クラスは何ですか?
- 17. .NETでUACアクティベーションなしでプログラムでDLLを登録する
- 18. DLLを登録する、Visual FoxPro 7で、Windows 7の
- 19. Rails 3段階の登録で登録
- 20. facebokkアプリページにハッシュキーを登録する目的は何ですか?
- 21. ユーザープロファイルを登録する適切な方法は何ですか?
- 22. ウィンドウクラスを登録する目的は何ですか?
- 23. 何とか私のクラスをリストに登録する
- 24. cakephp2.0での登録とログイン
- 25. JQuery Mobileでドロップダウンメニューの登録アクションを登録するには?
- 26. Pocket PCでDLLを登録解除する
- 27. ServletContextListenerとして登録されているクラスのライフサイクルは何ですか?
- 28. COM DLLの登録がTFS 2010で失敗しました
- 29. 他のマシンにC++ MFC dllを登録できません
- 30. CodeActivityを使用してTFSビルドからDLLを登録
のソースコードを参照してください。 – CJ7