1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
DWORD dwFileSize, dwBytesRead;
LPBYTE lpBuffer;
HANDLE hFile = CreateFile(Chemin_Fichier_Text.c_str(),
GENERIC_READ,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
if(INVALID_HANDLE_VALUE != hFile)
{
dwFileSize = GetFileSize(hFile, NULL);
lpBuffer = new BYTE[dwFileSize];
if(ReadFile(hFile, lpBuffer, dwFileSize, &dwBytesRead, NULL) != FALSE)
{
HANDLE hResource = BeginUpdateResource(Application->ExeName.c_str(), FALSE);
if(NULL != hResource)
{
if(IS_INTRESOURCE((WORD)"UserTransl") && IS_INTRESOURCE((WORD)RT_RCDATA))
{
if(UpdateResource(hResource,
RT_RCDATA,
MAKEINTRESOURCE((WORD)"UserTransl"),
MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT),
(LPVOID) lpBuffer,dwFileSize)!= FALSE)
{
if(EndUpdateResource(hResource, FALSE) != FALSE)
ShowMessage("Update succed!");
}
}
}
}
delete [] lpBuffer;
CloseHandle(hFile);
} |
Partager