Мне нужно проверить, содержит ли в буфере памяти BYTE * lpBuf данные данных файла структуры хранения.
В настоящее время я сохраняю данные буфера во временном файле, затем использую StgOpenStorage, чтобы открыть файл. Если открытие завершается успешно, то это файл структурированного хранилища, в противном случае это не так.
CFile File;
if (File.Open(_T("E:\\Myfile.dat"), CFile::modeCreate | CFile::modeRead)
{
File.Write(lpBuf, uBufSize);
File.Close();
}
LPSTORAGE lpStorageFile = NULL;
HRESULT hr = StgOpenStorage(_T("E:\\Myfile.dat"), NULL, STGM_TRANSACTED | STGM_READ | STGM_SHARE_EXCLUSIVE, NULL, 0, &lpStorageFile);
return SUCCEED(hr);
Есть ли простой способ выполнить задачу?
Спасибо