- PR -

DLLのレジストリ登録について

1
投稿者投稿内容
kt486
会議室デビュー日: 2003/10/20
投稿数: 8
投稿日時: 2004-08-24 13:13
VB.NETで開発をしているのですが、DLLをレジストリに登録する方法を
教えてもらえないでしょうか?

内容としては、regsvr32コマンドを使用してレジストリにDLLを登録するのを
プログラム上で実行したいと考えています。
当初、Microsoft.Win32.RegistryKeyクラスを使用してレジストリに
直接登録することを試みたのですがパス情報(?)となるCLS IDのデータ情報の
設定が分からずに断念しました。
改めて、DllRegisterServerを使用して登録する関数をプログラム研究サイトを
元に作成したのですが、正常値が返ってくるもののレジストリに登録されません。
下記に作成した関数を記載します。ご指摘いただければ幸いです。

Public Function MyDllRegisterServer(ByVal strFileName As String) As Boolean

Dim lngRegisterServer As Long
Dim lngLib As Long

lngLib = LoadLibrary(strFileName)
If lngLib <> 0 Then
lngRegisterServer = GetProcAddress(lngLib, "DllRegisterServer")

If IsNothing(lngRegisterServer) Then
Return False
End If

FreeLibrary(lngLib)
End If

Return True

End Function
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2004-08-24 13:56
諸農です。

マイクロソフトサポート技術情報 - 207132
「Regsvr32.exe が COM DLL を登録し、そして COM DLL の登録を解除する方法」
というのを見つけました。

別案として、Processクラスを使ってみるとかはダメでしょうか?


_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/
kt486
会議室デビュー日: 2003/10/20
投稿数: 8
投稿日時: 2004-08-27 09:56
諸農さん、書き込みありがとうございます。

Processクラスを使用してみたのですが、
やはり正常に登録されないようです。
C++やVB6.0のサンプルソースを元に継続して
調査してみようと思います。
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2004-08-27 10:43
VB.NETについては全然分らないのですが、たぶん、COMについて少し勉強しておくと理解の助けになるのではないでしょうか?
COMの基礎
↑こことか

#今、COMについて勉強しているのですが、難しくて^^;
 ついでみたいであつかましいですが、もし良い参考資料などを見つけた場合、よかったら教えていただけませんか?
1

スキルアップ/キャリアアップ(JOB@IT)