Folgendes Problem, ich nutze seit kurzem MS VC++ und verstehe das nicht ganz mit dem Unicode.
Beim kompilieren kommt immer der Fehler das er den const char* nicht in ein LPCWSTR konvertieren kann.
Das ist wohl ein Problem mit dem Unicode, nun habe ich aber den Zeichensatz in den Projekteinstellungen auf "Multi Byte Zeichensatz" geändert.
Aber jetzt funktioniert meine Funktion nicht mehr o0
Es kommt zwar kein Fehler aber es klappt nicht, hier mal der ganze Code:
Mit einer anderen IDE klappt das ...
Ist der Unicode so richtig deaktiviert ?
Ist was an dem Quellcode falsch ?
Code:
const char *winName = "Fenster"
FindWindow (NULL,winName)
Beim kompilieren kommt immer der Fehler das er den const char* nicht in ein LPCWSTR konvertieren kann.
Das ist wohl ein Problem mit dem Unicode, nun habe ich aber den Zeichensatz in den Projekteinstellungen auf "Multi Byte Zeichensatz" geändert.
Aber jetzt funktioniert meine Funktion nicht mehr o0
Es kommt zwar kein Fehler aber es klappt nicht, hier mal der ganze Code:
Code:
HANDLE OpenProcess ()
{
const char *winName = "Fensername";
HANDLE winHandle = NULL;
HWND window = NULL;
DWORD procid;
while ( true )
{
window = FindWindow( NULL , winName );
if ( window == NULL ) {
Sleep ( 900 );
std::cout << "not found." << std::endl;
continue;
}
else {
break;
}
}
GetWindowThreadProcessId ( window , &procid );
winHandle = OpenProcess ( PROCESS_ALL_ACCESS , false , procid );
if (!winHandle)
{
return 0;
}
else
{
return winHandle;
}
}
Mit einer anderen IDE klappt das ...
Ist der Unicode so richtig deaktiviert ?
Ist was an dem Quellcode falsch ?