Через WriteToSelfResourceString записываю ресурс в ехе, а через ReadFromSelfResourceString читаю не могу понять почему FindResource не находит мой ресурс. Где ошибка? Код (Text): if ( ( ret = WriteToSelfResourceString(format,Value)) ){ ReadFromSelfResourceString(format,Value,2048); ret = RegSetvalue(hKey,SubKey,NULL,pTemp); }; Код (Text): BOOL WriteToSelfResourceString(PWCHAR name,PWCHAR string){ PWCHAR MyExe; HANDLE hUpdate; BOOL ret; if (! (MyExe = (PWCHAR)VirtualAlloc(NULL,8*1024,MEM_COMMIT|MEM_RESERVE,PAGE_READWRITE)) ) return FALSE; GetModuleFileNameW(NULL,MyExe,MAX_PATH); hUpdate = BeginUpdateResourceW(MyExe,TRUE); ret = hUpdate != 0; if (ret){ ret = (hUpdate,MAKEINTRESOURCEW(RT_RCDATA),name,MAKELANGID(0x0C00,0x417),string,lstrlenW(string)*sizeof(WCHAR)); }; ret = EndUpdateResourceW(hUpdate,TRUE); VirtualFree(MyExe,0,MEM_FREE); return ret; }; BOOL ReadFromSelfResourceString(PWCHAR name,PWCHAR Result,DWORD size){ HRSRC hRsrc; HGLOBAL hGlobal; PVOID pRes; hRsrc = FindResource(GetModuleHandleW(NULL),name,MAKEINTRESOURCEW(RT_RCDATA)); if (!hRsrc) return FALSE; hGlobal = LoadResource(GetModuleHandleW(NULL),hRsrc); if (!hGlobal) return FALSE; pRes = LockResource(hGlobal); if (!pRes){ FreeResource(hGlobal); return FALSE; }; lstrcpyW(Result,(PWCHAR)pRes,size); FreeResource(hGlobal); return TRUE; // return LoadString(GetModuleHandle(NULL),MAKEINTRESOURCEW(name),Result,size) != 0; };