J'ai une application Java qui doit interagir avec la caméra sur un appareil Windows Mobile. J'ai écrit le code Java et le code natif et tout fonctionne bien. Le problème que j'ai maintenant est que je veux commencer à passer des variables de Java au code natif, par exemple. le répertoire et le nom de fichier à utiliser pour la photo.Code Windows Mobile natif - jstring to LPCTSTR
Le code natif utilise un objet SHCAMERACAPTURE
pour interagir avec la caméra et attend que le répertoire et le nom de fichier soient spécifiés en utilisant LPCTSTR
s. La chaîne passée en est un jstring, que je peux obtenir un const char *
en appelant:
const char *strDir=(jEnv)->GetStringUTFChars(dirName, 0);
Mais je ne sais pas comment je peux passer ce à l'objet SHCAMERACAPTURE
car il ne peut pas convertir const char *
-LPCTSTR
. J'ai essayé un cast (LPCTSTR)strDir
et il compilé, mais j'obtiens une erreur quand il s'exécute (qu'il ne peut pas créer le fichier). Je suis un développeur Java et assez nouveau en C++, donc je ne sais pas vraiment ce que je dois faire pour obtenir ma chaîne dans l'appel natif. Des idées?
'GetStringChars()' renvoie un 'const jchar *', donc je ne sais toujours pas comment je peux le passer à mon objet natif? – DaveJohnston
voir la mise à jour – renick
Qu'est-ce que 'shcam.szFile'? et 'GetStringChars()' ne prend pas 0 arguments? Pouvez-vous expliquer ce que cette ligne de code essaie de faire? Merci. – DaveJohnston