タグ

ブックマーク / qiita.com/tera1707 (2)

  • 【C++】C++で作成したDLLをC++で呼ぶ(動的) - Qiita

    ※1 関数のプロトタイプ宣言とLIBファイルの指定(コンパイラオプションでの指定または#pragma)のみで通常の関数の様に使える。 ※2 LIBファイル・ヘッダーファイルのないDLLに使用できる。 DLL側(C++) 以前の記事で書いたものと同じのを使う。 呼びだす側(C++) 静的にDLLを呼ぶときに行ったような、.libの参照設定や、DllImportは不要。 代わりに、以下のようなことを行う。 コード上で、DLLの読み込み 下記のようなことを行う。 - LoadLibrary()を使用して、DLLファイルを読み込む。 - GetProcAddress()を使用して、DLL内の関数(アドレス)を取得。 - 関数コール実施。 #include "pch.h" #include <windows.h> typedef void(*FUNC1)(); typedef void(*FUNC2

    【C++】C++で作成したDLLをC++で呼ぶ(動的) - Qiita
  • 【C++】C++で作成したDLLをC++で呼ぶ(静的) - Qiita

    ※1 関数のプロトタイプ宣言とLIBファイルの指定(コンパイラオプションでの指定または#pragma)のみで通常の関数の様に使える。 ※2 LIBファイル・ヘッダーファイルのないDLLに使用できる。 DLL側(C++) 以前の記事で書いたものと同じのを使う。 呼びだす側(C++) .libファイルの参照設定 まず、Dllと対になる.libファイルを参照するように設定追加する。 pjのプロパティ > リンカー > 入力 の、追加の依存ファイルに、必要な.lib(ここではDllTest.lib)を追加 pjのプロパティ > リンカー > 全般 の、追加のライブラリディレクトリに、その.libのあるフォルダを追加 ※libの設定は、コード中に#pragmaでも実施できる様子。(今回は試さず) 下記を参照。 http://yamatyuu.net/computer/program/sdk/base

    【C++】C++で作成したDLLをC++で呼ぶ(静的) - Qiita
  • 1