Не выводиться содержимое файла
Здравствуйте я пишу программу для чтения файла и вывода данных из него но столкнулся с проблемой что не выводиться содержимое
#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);
Что я не правильно понял в типах данных? Прошу совета где я совершил ошибку