Не могу полностью прочитать файл формата Sqlite3

Здравствуйте я при попытке чтения файла cert9.db который принадлежит браузеру firefox читаю почему-то толькой первые 15 байт SQlite format 3 вот код который я использую

#include <windows.h>
#include <iostream>

typdef unsigned char u_char;

int R_FILE(char* folder, u_char*& buffer)
{
    HANDLE hFile = CreateFileA(folder, GENERIC_READ, 0, 0, OPEN_EXISTING, 0, ,0);
    if(hFile == INVALID_HANDLE_VALUE)
    {
        return false;
    }

    DWORD FileSize = GetFileSize(hFile, 0);
    if(FileSize == 0)
    {
        CloseHandle(hFile);
        return false;
    }

    buffer = (u_char*)malloc(FileSize);
    memset(buffer, 0, FileSize);

    DWORD count;
    if(!ReadFile(hFile, buffer, FileSize, &count, 0))
    {
        free(buffer);
    }
    CloseHandle(hFile);
    return FileSize;
}

int main()
{
    char folder[] = "C:\\Users\\andrey\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\zdd157st.default-release\\cert9.db"
    u_char* buff = nullptr;
    int FileSize = R_FILE(folder, buff);
    std::cout << FileSize << "   " << buff << std::endl;
}

В итоге вывод 229376 SQlite format 3 при отладке я узнал что после SQlite format 3 ни одного байта не добавляеться хотя в файле ещё много байт не нулей. введите сюда описание изображения Вопрос почему добавляються только первые 15 байт а остальное игнорируеться?


Ответы (0 шт):