python dll 32bit-64bit

¿Puedo usar 32bit dll o exe en 64bit python?



32bit-64bit (1)

Cuando uso CDLL para llamar a 32bit dll en 32bit python, funciona bien. Pero desafortunadamente en mi 64bit win7, el sistema operativo solo instala la pitón de 64bit, cuando se activa, no es una aplicación win32 efectiva.

¿Puedo usar 32bit dll o exe en 64bit python? ¿O tengo que instalar 32 bit python en su lugar?


Los EXEs de 64 bits no pueden cargar DLL de 32 bits. (Y viceversa: los EXEs de 32 bits no pueden cargar DLL de 64 bits.) Después de todo, no pueden ponerse de acuerdo sobre el tamaño de un puntero: ¿qué pasaría si el EXE asignara memoria por encima del límite de 4GB y quisiera pasar eso? puntero a la DLL de 32 bits?

Tendrás que:

  1. Haga una versión de 64 bits de su DLL;
  2. Utilice una versión de 32 bits de Python; o
  3. Aloje la DLL en un EXE independiente (de 32 bits) y use algún tipo de comunicación entre procesos para comunicarse con él desde su proceso de Python de 64 bits.