W
suchender schrieb:
ich habe etwas rumprobiert und mir ist nun aufgefallen,
dass ich keinen ansi aber unicode mit meinem quellcode einlesen kann.
was muß ich machen um ansi lesen zu können?
So ein Quatsch! ReadFile() kümmert sich nicht um ANSI oder UNICODE. Das hat doch nichts mit Strings zu tun. Was du da einliest sind Bytes. Deinen Buffer kannst du als Unicode (also WideChar) oder als ANSI (also Char) auffassen. Wenn du ihn als ANSI interpretieren willst, dann nimm sicherhaltshalber eben keine TCHAR's sondern char's.
HANDLE hFile;
DWORD size = 0;
DWORD bytes = 0;
HGLOBAL hGlobal;
char* buf;
hFile = CreateFile(TEXT("\\programme\\wanderkarte\\events.txt"),
GENERIC_READ,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
size = GetFileSize(hFile, NULL);
hGlobal = GlobalAlloc(GMEM_FIXED, size);
buf = (char*)GlobalLock(hGlobal);
ZeroMemory((LPVOID)buf, size);
ReadFile(hFile, buf, size, &bytes, NULL);
CloseHandle(hFile);
MessageBox(NULL, TEXT(buf), TEXT(""), MB_OK);
GlobalUnlock(hGlobal);
GlobalFree(hGlobal);