dllはWindows上のダイナミックライブラリファイルです。使用する必要のある関数はdllファイルにカプセル化されていることが多いため、dllファイルにメインエントリはありません。関数として考えてください。内容は不思議ではありません。 。
使用時にdllファイルをロードするだけで、dllファイルをロードした後、カプセル化された関数を使用できます。
c ++での呼び出しは非常に簡単です。Windowsはカプセル化されています。#include <Windows.h>で直接使用できます。Pythonを使用する場合は、ctypesライブラリを使用する必要があります。
このテストのdllファイルは、追加操作を定義する関数addのみを定義します。
追加機能が公開されていることがわかります
Pythonを使用して効果をテストしてみましょう。
from ctypes import cdll
_dll = cdll.LoadLibrary("./dllTest.dll")
res = _dll.add(3,2)
print(res)
実行結果:
c ++呼び出し:
#include <iostream>
#include<Windows.h>
int main()
{
HMODULE module= LoadLibrary(L"dllTest.dll");
if (module == NULL)
{
return 0;
}
typedef int(*AddFunc)(int, int);
AddFunc add;
add = (AddFunc)GetProcAddress(module, "add");
int re = add(2,5);
std::cout << re <<std::endl;
return 0;
}
演算結果: