Hello,
Welche Version von Dev-C++ verwendest Du?
Version 4.9.9.2Welchen Compiler verwendest Du zusammen mit Dev-C++?
gcc version 3.4.2 (mingw-special)
g++ (GCC) 3.4.4 (mingw special)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Meine instalierten Versionen sind andere, aber wenn das hier
#include <tchar.h>
#include <windows.h>
#include <iostream>
int main(void)
{
int iRetVal = -1;
LPSTR lpszString = "äöüÄÖÜß";
DWORD dwStrSize = (DWORD)_tcslen((LPTSTR)lpszString);
LPSTR lpszDst = (LPSTR)::LocalAlloc(LPTR, (dwStrSize+1) * sizeof(char));
DWORD dwWritten = 0;
std::cout << "Vor CharToOemBuff():\t" << lpszString << std::endl;
if (NULL != lpszDst) {
if (::CharToOemBuff((LPCTSTR)lpszString, lpszDst, dwStrSize)) {
std::cout << "Nach CharToOemBuff():\t" << lpszDst << std::endl;
iRetVal = 0;
} else {
#pragma message(__LOC__ ": Durch FormatMessage(...) und GetLastError() ersetzen!")
std::cerr << "Fehler: Konvertierung fehlgeschlagen!" << std::endl;
}
} else {
#pragma message(__LOC__ ": Durch FormatMessage(...) und GetLastError() ersetzen!")
std::cerr << "Fehler: Allokation fehlgeschlagen!" << std::endl;
}
LocalFree(lpszDst);
return iRetVal;
}
sich kompilieren und linken lässt; also insbesondere <windows.h> und die libs dazu installiert sind, sollte des Code das Problem zumindest für NICHT-UNICODE-Versionen lösen.
Grüsse
Solkar