Выполнения в памяти .bin файла из ресурсов | C++
Такая проблема, не могу выполнить код файла.bin в памяти из ресурсов. "Когда беру напрямую код файла .bin то он выполняется в памяти, а из ресурсов не как."
main.cpp
#include "resource.h"
#include <windows.h>
#include <stdio.h>
int main() {
HRSRC shellcodeResource = FindResource(NULL, MAKEINTRESOURCE(IDR_BIN1), L"BIN");
HGLOBAL shellcodeResourceData = LoadResource(NULL, shellcodeResource);
LPVOID shellcodeResourceDataPtr = LockResource(shellcodeResourceData);
DWORD shellcodeSize = SizeofResource(NULL, shellcodeResource);
LPVOID exec = VirtualAlloc(0, shellcodeSize, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
memcpy(exec, shellcodeResourceDataPtr, shellcodeSize);
((void(*)())exec)();
return 0;
}
resource.rc
IDR_BIN1 BIN "program.bin"
resource.h
#define IDR_BIN1 104
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 105
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1001
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif