У меня есть доступ к 32-битной dll из 64-разрядного приложения. Для этого я использую Shared Memory IPC, и я сделал что-то вроде этогоМожно ли загрузить dll в общую память?
TCHAR szName[]=TEXT(Path of DLL on local machine);
TCHAR szMsg[]=TEXT("abc");
HANDLE file = CreateFile(szName,
GENERIC_READ,
0,
NULL,
CREATE_NEW,
FILE_ATTRIBUTE_NORMAL,
NULL);
ли это правильный подход, чтобы разделить DLL злоумышленником IPC? Могу ли я получить доступ к функциям, определенным внутри DLL на интерфейсе считывателя?
Извините, это не имеет смысла, если вы не уточните многое дальше. Забудьте о 32b против 64b на секунду. Как бы вы «делили DLL на IPC» и «обращались к функциям, определенным внутри DLL на интерфейсе считывателя», если оба конца были одинаковой битности, скажем, 32b? Возможно, вы имеете в виду http://stackoverflow.com/questions/128445/calling-32bit-code-from-64bit-process. – dxiv