c++ problem z writefile

0

Jak utworzyć i zapisać plik z zasobów?? Mój kod tworzy plik ale jego waga jest 0kb wszystko dobrze się kompiluje. Prosze o pomoc.

#include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
HRSRC hLogo = FindResource( NULL,"2","10");
HGLOBAL pLogo = LoadResource( NULL, hLogo );
DWORD dwDlugosc = SizeofResource( NULL, hLogo );
HANDLE hPlik = CreateFile( "plik.exe",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
DWORD* dwBajtyZapisane;
BOOL bAv=WriteFile( hPlik, &pLogo, dwDlugosc, dwBajtyZapisane, 0 );
    
 CloseHandle( hPlik );

getchar();
} 
0

przetestuj te 3 linijki

 HRSRC hLogo = FindResource( NULL,"2","10");
HGLOBAL pLogo = LoadResource( NULL, hLogo );
DWORD dwDlugosc = SizeofResource( NULL, hLogo );
0

LockResource() zapomniałeś

0
 #include <cstdlib>
#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
HRSRC hLogo = FindResource( NULL,"2","10");
HGLOBAL pLogo = LoadResource( NULL, hLogo );
pLogo= LockResource(pLogo);
DWORD dwDlugosc = SizeofResource( NULL, hLogo );
HANDLE hPlik = CreateFile( "plik.exe",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
DWORD* dwBajtyZapisane;
BOOL bAv=WriteFile( hPlik, &pLogo, dwDlugosc, dwBajtyZapisane, 0 );
    
 CloseHandle( hPlik );

getchar();
}

teraz mam tak i plik dalej się tworzy ale ma o kb. Jak mam przetestować te linijki wszysko kompiluje się dobrze.

1 użytkowników online, w tym zalogowanych: 0, gości: 1