def dispatchModule(self, module): tag = module.name.upper() print(r'const char *g_sz%sDllName = NULL;' % (tag, )) print(r'HMODULE g_h%sModule = NULL;' % (tag, )) print(r'') print(r'static PROC') print(r'_get%sProcAddress(LPCSTR lpProcName) {' % tag) print(r' if (!g_h%sModule) {' % tag) print(r' if (g_sz%sDllName) {' % tag) print(r' g_h%sModule = LoadLibraryA(g_sz%sDllName);' % (tag, tag)) print(r' if (!g_h%sModule) {' % tag) print( r' os::log("warning: failed to load %%s\n", g_sz%sDllName);' % tag) print(r' }') print(r' }') print(r' if (!g_h%sModule) {' % tag) print(r' g_h%sModule = LoadLibraryA("%s.dll");' % (tag, module.name)) print(r' }') print(r' if (!g_h%sModule) {' % tag) print(r' os::log("error: failed to load %s.dll\n");' % module.name) print(r' exit(1);') print(r' }') print(r' }') print(r' return GetProcAddress(g_h%sModule, lpProcName);' % tag) print(r'}') print(r'') Dispatcher.dispatchModule(self, module)
def dispatchModule(self, module): tag = module.name.upper() print r'const char *g_sz%sDllName = NULL;' % (tag,) print r'HMODULE g_h%sModule = NULL;' % (tag,) print r'' print r'static PROC' print r'_get%sProcAddress(LPCSTR lpProcName) {' % tag print r' if (!g_h%sModule) {' % tag print r' if (g_sz%sDllName) {' % tag print r' g_h%sModule = LoadLibraryA(g_sz%sDllName);' % (tag, tag) print r' if (!g_h%sModule) {' % tag print r' os::log("warning: failed to load %%s\n", g_sz%sDllName);' % tag print r' }' print r' }' print r' if (!g_h%sModule) {' % tag print r' g_h%sModule = LoadLibraryA("%s.dll");' % (tag, module.name) print r' }' print r' if (!g_h%sModule) {' % tag print r' os::log("error: failed to load %s.dll\n");' % module.name print r' exit(1);' print r' }' print r' }' print r' return GetProcAddress(g_h%sModule, lpProcName);' % tag print r'}' print r'' Dispatcher.dispatchModule(self, module)
def dispatchModule(self, module): tag = module.name.upper() print r'HMODULE g_h%sModule = NULL;' % (tag,) print r'' print r'static PROC' print r'_get%sProcAddress(LPCSTR lpProcName) {' % tag print r' if (!g_h%sModule) {' % tag print r' char szDll[MAX_PATH] = {0};' print r' if (!GetSystemDirectoryA(szDll, MAX_PATH)) {' print r' return NULL;' print r' }' print r' strcat(szDll, "\\\\%s.dll");' % module.name print r' g_h%sModule = LoadLibraryA(szDll);' % tag print r' if (!g_h%sModule) {' % tag print r' return NULL;' print r' }' print r' }' print r' return GetProcAddress(g_h%sModule, lpProcName);' % tag print r'}' print r'' Dispatcher.dispatchModule(self, module)
def dispatchModule(self, module): print r'Module g_mod%s("%s");' % (module.name.upper(), module.name) Dispatcher.dispatchModule(self, module)
def dispatchModule(self, module): print(r'Module g_mod%s("%s");' % (module.name.upper(), module.name)) Dispatcher.dispatchModule(self, module)