convert jstring to LPCOLESTR
-
Hallo zusammen,
ich bin ein absoluter Neuling und habe meine Mühe und Not mit der Verarbeitung von Strings in C++.
Ich habe folgendes Problem:
Ich erhalte über das JNI einen jstring. Dieser beinhaltet den Pfad einer Datei, die ich erstellen möchte. Die Funktion "SetOutputFileName" benötigt allerdings, wenn ich das richtig verstehe, einen String vom Typ LPCOLESTR. Ich habe leider keine Ahnung, wie ich die Konvertierung vollziehen muss. Kann mir aber nicht vorstellen, dass das so schwer ist.
Ich hoffe ich konnte mich verständlich machen können und freue mich über jede Hilfe.
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Verwende T2OLE, bzw. A2OLE, bzw. W2OLE...
-
Hm, damit kann ich leider nichts anfangen. Hab die Begriffe mal bei Google eingegeben. Kann es sein, dass ich dafür besondere Include-Dateien brauche?
Vielleicht ist es besser, wenn ich mal den Code schreibe.
Also, die Nativ-Funktion, die via Java aufgerufen wird lautet:
JNIEXPORT void JNICALL Java_cmToolkit_cmEasyVideoRecorderJNI_startMovie(JNIEnv *env, jclass clazz, jstring jpath )
{
return;
}Nun habe ich vor, mit "jpath"(welches den Pfad der Datei beinhaltet) die C-Funktion "SetOutputFileName" auszuführen. Ich habe es einfach so mal versucht:
JNIEXPORT void JNICALL Java_cmToolkit_cmEasyVideoRecorderJNI_startMovie(JNIEnv *env, jclass clazz, jstring jpath )
{
char cpath = (char) jpath;
LPCOLESTR lcpath = (LPCOLESTR)cpath;
m_pCapture->SetOutputFileName(&MEDIASUBTYPE_Avi,lcpath,&pMux
, &pSink);
return;
}Aber das funktioniert leider nicht. Mit folgendem Code läufts:
JNIEXPORT void JNICALL Java_cmToolkit_cmEasyVideoRecorderJNI_startMovie(JNIEnv *env, jclass clazz, jstring jpath )
{
m_pCapture->SetOutputFileName(&MEDIASUBTYPE_Avi,L"C:\\Beispi
el.avi",&pMux, &pSink);
return;
}Aber das bringt mir nichts, weil ich den Pfad eben über ne Variable steuern will.
Danke schon mal, für deine Hilfe.