Не выводиться содержимое файла

Здравствуйте я пишу программу для чтения файла и вывода данных из него но столкнулся с проблемой что не выводиться содержимое


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


int main()
{
    TCHAR perm[] = L"path";
    HANDLE hFile = CreateFile(perm, GENERIC_READ,0,0,OPEN_ALWAYS,0,0);
    if(hFile == INVALID_HANDLE_VALUE)
    {
        std::cout << "bad 1";
        return 0;
    }
    DWORD FileSize = GetFileSize(hFile, 0);
    if(FileSize < 1)
    {
        std::cout << "bad 2";
        return 0;
    }
    TCHAR* hBuff = (TCHAR*)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,FileSize);
    DWORD tempBuff;
    if(!ReadFile(hFile, hBuff, FileSize, &tempBuff, 0))
    {
        std::cout << "bad 3";
        return 0;
    }
    std::wcout << hBuff;
}

При подобном запуске содержимое не выводиться но если тип данных переменной hBuff изменить с TCHAR на char то все работает отлично

char* hBuff = (char*)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,FileSize);

Что я не правильно понял в типах данных? Прошу совета где я совершил ошибку


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