Я загрузил dll в программу с помощью статической инъекции (код пещеры). Я уже вызвал одну функцию dll без параметров, так что все в порядке, но я хочу вызвать функцию с адресом памяти в качестве одного из параметров.
Нравится: MyDllFunction(....., LPCWSTR MemoryAddress)
Адрес памяти (например, 027B02A3) находится в локальной переменной [EBP-8].
Я предполагаю (почти уверен), что я не могу просто: PUSH [EBP-8]
??
Что я делаю, чтобы это произошло?
Или проще переписать функцию dll, чтобы взять DWORD вместо LPCWSTR и выполнить там преобразование? Я думаю, что где-то видел пример использования swprintf_s.
У меня пока нет опыта сборки (или C / C ++), и раньше я работал только с жестко закодированными строками.