El archivo dll se llama usando python y c ++

Un dll es un archivo de biblioteca dinámica en Windows. Las funciones que se deben utilizar a menudo están encapsuladas en un archivo dll. Por lo tanto, no hay una entrada principal en el archivo dll. Piense en ello como una función. Su contenido no es misterioso .

Solo necesita cargar el archivo dll cuando lo use. Después de cargar el archivo dll, puede usar las funciones encapsuladas en él.

La llamada en c ++ es muy simple. Windows está encapsulado. Puede usarlo directamente con #include <Windows.h>. Si desea usar Python, debe usar la biblioteca ctypes.

El archivo dll para esta prueba solo define una función add, que define una operación de adición:

Puede ver que se expone una función de adición

Usemos Python para probar el efecto:

from ctypes import cdll

_dll = cdll.LoadLibrary("./dllTest.dll")
res = _dll.add(3,2)
print(res)

resultado de ejecución:

llamada 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;
}

 resultado de la operación:

Supongo que te gusta

Origin blog.csdn.net/zhou_438/article/details/113819305
Recomendado
Clasificación