1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

VB6でdllをexeから呼び出す

Last updated at Posted at 2020-05-10

参考

dllの作成

  • ActiveX DLL を選択

スクリーンショット_2020-05-10_15-40-20.png

  • Project名の変更

スクリーンショット_2020-05-10_15-43-12.png

  • プロジェクト名にMyDLL_1を入力しOK

スクリーンショット_2020-05-10_15-45-10.png

' 引数をそのまま返すだけ
Public Function GetStr(str As String) As String
    GetStr = str
End Function
  • ファイル - MyDLL_1.dllの作成

スクリーンショット_2020-05-10_15-47-13.png

  • MyDLL_1.dllを保存

スクリーンショット_2020-05-10_15-48-56.png

EXEから呼び出し

  • 標準 EXE を選択し開く。

スクリーンショット_2020-05-10_15-50-23.png

  • 参照設定

スクリーンショット_2020-05-10_15-51-19.png

  • MyDLL_1にチェックを入れ、OK

スクリーンショット_2020-05-10_15-52-11.png

  • ボタンを設置。設置したボタンをダブルクリックする。

スクリーンショット_2020-05-10_15-53-55.png

  • こういう画面になるので、そこにコードを入力。

スクリーンショット_2020-05-10_15-55-29.png

Private Sub Command1_Click()

    Dim c As New MyDLL_1.Class1
    msgbox c.GetStr("あいう")

End Sub

スクリーンショット_2020-05-10_15-57-25.png

  • 再生ボタンを押すとフォーム画面が表示される。ボタンをクリックすると「あいう」とメッセージが表示されることを確認。

スクリーンショット_2020-05-10_15-58-10.png

  • 確認したら 停止ボタンを押し、編集画面に戻る。

exeの作成

  • ファイル - Project1.exe の作成を選択。

スクリーンショット_2020-05-10_16-00-34.png

  • Project1.exe を別のPCに転送し実行すると以下エラーが出る。
  • exeと同じフォルダにdllを置くだけでは読み込まれないため注意。(謎)

スクリーンショット_2020-05-10_05-44-59.png

DLL の登録

  • コマンドプロンプトを管理者として実行をし、以下コマンド
regsvr32.exe MyDLL_1.dll

スクリーンショット_2020-05-10_16-10-46.png

  • 動作することを確認

スクリーンショット_2020-05-10_16-12-23.png

DLL の登録削除

regsvr32.exe /u MyDLL_1.dll

スクリーンショット_2020-05-10_16-15-36.png

  • 再度実行したとき、エラー表示されることを確認。

スクリーンショット_2020-05-10_16-16-21.png

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?