/* Entry point for the Windows NT DLL. About the only reason for having this, is so initall() can automatically be called, removing that burden (and possible source of frustration if forgotten) from the programmer. */ #include "Python.h" #include "windows.h" #ifdef Py_ENABLE_SHARED #ifdef MS_DLL_ID // The string is available at build, so fill the buffer immediately char dllVersionBuffer[16] = MS_DLL_ID; #else char dllVersionBuffer[16] = ""; // a private buffer #endif // Python Globals HMODULE PyWin_DLLhModule = NULL; const char *PyWin_DLLVersionString = dllVersionBuffer; BOOL WINAPI DllMain (HANDLE hInst, ULONG ul_reason_for_call, LPVOID lpReserved) { switch (ul_reason_for_call) { case DLL_PROCESS_ATTACH: PyWin_DLLhModule = hInst; #ifndef MS_DLL_ID // If we have MS_DLL_ID, we don't need to load the string. // 1000 is a magic number I picked out of the air. Could do with a #define, I spose... LoadString(hInst, 1000, dllVersionBuffer, sizeof(dllVersionBuffer)); #endif break; case DLL_PROCESS_DETACH: break; } return TRUE; } #endif /* Py_ENABLE_SHARED */