Hallo liebe Community,
dann testen wir doch mal diese neue Rubrik.
Da ich denke, Java mittlerweile recht gut zu beherrschen, dachte ich mir mich mal mit C++ zu beschäftigen. Bitte hier keine Diskussion über die Sinnhaftigkeit meiner Entscheidung.
Ich möchte einen Pfad eingeben lassen und diesen dann auf Gültigkeit überprüfen lassen. Dazu habe ich mir die PathFileExists Funktion ausgesucht. Diese erwartet jedoch einen LPCWSTR. In der API Dokumentation wurde aber ein char* array gezeigt. Also habe ich eine Methode geschrieben, die meinen string in ein array umwandelt. Jetzt sagt mit die PathFileExists Function aber, dass "Das Argument vom Typ ""char*"" ist mit dem Parameter vom Typ ""LPCWSTR"" inkompatibel.
Ich hab jetzt schon echt lange gegooglet, finde aber nichts, was mir weiterhilft.
Weiß einer von euch, wie ich einen std::string in LPCWSTR umwandeln kann?
Das ist mein Code bis jetzt:
dann testen wir doch mal diese neue Rubrik.
Da ich denke, Java mittlerweile recht gut zu beherrschen, dachte ich mir mich mal mit C++ zu beschäftigen. Bitte hier keine Diskussion über die Sinnhaftigkeit meiner Entscheidung.
Ich möchte einen Pfad eingeben lassen und diesen dann auf Gültigkeit überprüfen lassen. Dazu habe ich mir die PathFileExists Funktion ausgesucht. Diese erwartet jedoch einen LPCWSTR. In der API Dokumentation wurde aber ein char* array gezeigt. Also habe ich eine Methode geschrieben, die meinen string in ein array umwandelt. Jetzt sagt mit die PathFileExists Function aber, dass "Das Argument vom Typ ""char*"" ist mit dem Parameter vom Typ ""LPCWSTR"" inkompatibel.
Ich hab jetzt schon echt lange gegooglet, finde aber nichts, was mir weiterhilft.
Weiß einer von euch, wie ich einen std::string in LPCWSTR umwandeln kann?
Das ist mein Code bis jetzt:
Java:
using namespace std;
string erfordereAusgangspfad(){
string eingabe;
while (true){
cout<<"Bitte geben Sie den Ausgangspfad ein"<<endl;
cin>>eingabe;
const int länge = eingabe.length();
char* zeichen = new char[0];
stringInArray(eingabe, zeichen);
if (PathFileExists(zeichen)){
return eingabe;
} else {//Ich weiß, das hier könnte auch weg. Ich finde es so schöner
continue;
}
}
}
void stringInArray(string eingabe, char* zeichen){
zeichen = new char[eingabe.size() + 1];
strcpy(zeichen, eingabe.c_str());
}
Zuletzt bearbeitet: