MCPcopy Create free account
hub / github.com/IppClub/Dora-SSR / findModule

Function findModule

Source/3rdParty/bgfx/src/debug_renderdoc.cpp:20–64  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

18namespace bgfx
19{
20 void* findModule(const char* _name)
21 {
22#if BX_PLATFORM_WINDOWS
23 // NOTE: there was some reason to do it this way instead of simply calling GetModuleHandleA,
24 // but not sure what it was.
25 HANDLE process = GetCurrentProcess();
26 DWORD size;
27 BOOL result = EnumProcessModules(process
28 , NULL
29 , 0
30 , &size
31 );
32 if (0 != result)
33 {
34 HMODULE* modules = (HMODULE*)BX_STACK_ALLOC(size);
35 result = EnumProcessModules(process
36 , modules
37 , size
38 , &size
39 );
40
41 if (0 != result)
42 {
43 char moduleName[MAX_PATH];
44 for (uint32_t ii = 0, num = uint32_t(size/sizeof(HMODULE) ); ii < num; ++ii)
45 {
46 result = GetModuleBaseNameA(process
47 , modules[ii]
48 , moduleName
49 , BX_COUNTOF(moduleName)
50 );
51 if (0 != result
52 && 0 == bx::strCmpI(_name, moduleName) )
53 {
54 return (void*)modules[ii];
55 }
56 }
57 }
58 }
59#else
60 BX_UNUSED(_name);
61#endif // BX_PLATFORM_WINDOWS
62
63 return NULL;
64 }
65
66 pRENDERDOC_GetAPI RENDERDOC_GetAPI;
67 static RENDERDOC_API_1_1_2* s_renderDoc = NULL;

Callers 1

loadRenderDocFunction · 0.85

Calls 1

strCmpIFunction · 0.85

Tested by

no test coverage detected