Мне нужно получить список процессов, имеющих определенную DLL (d3d9). В настоящее время я делаю это, вызывая CreateToolhelp32Snapshot
для каждого процесса, чтобы получить список его модулей и сравнить имена модулей с "d3d9.dll"
. Однако это не работает на 64-битных процессах, так как CreateToolhelp32Snapshot
не работает (мое приложение 32-разрядное). Есть ли способ достичь этого без запуска отдельного 64-битного процесса только для отображения модулей?
Есть ли способ достичь этого без запуска отдельного 64-битного процесса только для отображения модулей?
Нет, нет, по крайней мере, не использовать Win32. Вы не можете получить необходимую информацию из эмулятора WOW64 с помощью функций Win32. Я считаю, что есть недокументированные встроенные функции API, которые могут делать то, что вы просите, но я бы никогда не рекомендовал такое решение. Вы должны решить эту проблему с помощью 64-битного процесса.