Выполнения в памяти .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

Ответы (0 шт):