//+------------------------------------------------------------------------ // // Member: CDataStream::LoadString // // Synopsis: Loads and allocates a null-terminated string // that was previously saved by SaveString // //------------------------------------------------------------------------- HRESULT CDataStream::LoadString(TCHAR** ppch) { HRESULT hr; ULONG len; DWORD dwCode; Assert(ppch); hr = LoadDword(&dwCode); if(hr) { goto Cleanup; } hr = LoadDword(&len); if(hr) { goto Cleanup; } if((len^dwCode) != DWORD_STRING_COOKIE) { hr = E_FAIL; goto Cleanup; } hr = MemRealloc((void**)ppch, sizeof(TCHAR)*(len+1)); if(hr) { goto Cleanup; } if(*ppch) { hr = LoadData(*ppch, sizeof(TCHAR)*len); if(hr) { goto Cleanup; } (*ppch)[len] = _T('\0'); } Cleanup: RRETURN(hr); }
//+------------------------------------------------------------------------ // // Member: CDataStream::LoadCStr // // Synopsis: Loads a CStr previously saved by SaveCStr // //------------------------------------------------------------------------- HRESULT CDataStream::LoadCStr(CString* pcstr) { HRESULT hr; ULONG len; ULONG dwCode; Assert(pcstr); hr = LoadDword(&dwCode); if(hr) { goto Cleanup; } hr = LoadDword(&len); if(hr) { goto Cleanup; } if((len^dwCode) != DWORD_CSTR_COOKIE) { hr = E_FAIL; goto Cleanup; } if(len == (DWORD)-1) { pcstr->Free(); } else { pcstr->Set(NULL, len); hr = LoadData(*pcstr, sizeof(TCHAR)*len); if(hr) { goto Cleanup; } } Cleanup: RRETURN(hr); }
DWORD CSettings::LoadDword ( SettingID Type ) { DWORD Value = 0; LoadDword(Type,Value); return Value; }
uint32_t CSettings::LoadDword ( SettingID Type ) { uint32_t Value = 0; LoadDword(Type,Value); return Value; }