Conversion d'une chaine de caractère.

Le
Vincent Badier
Bonjour,

Je débute en C++ sous visual studio, et me prend des vestes par la bête
à chaque fois que j'éssais de travailler avec des chaines de charactères.

Je cherche à travailler sur un fichier sélectionné par un crontole
openFileDialog. Il semble retourner une chaine du type System::String ^,
mais l'API pour ouvrir l'image nécessite un LPWSTR. Evidemment le
casting ne fonctionne pas.

Erreur 1 error C2440: 'type cast' : cannot convert from 'System::String
^' to 'LPWSTR'

Auriez-vous la bonté de me donner un petit tuyaux sur le sujet svp?
Merci d'avance.

Vincent
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
marco
Le #9738101
Vincent Badier wrote:
Bonjour,

Je débute en C++ sous visual studio, et me prend des vestes par la bête
à chaque fois que j'éssais de travailler avec des chaines de charactères.

Je cherche à travailler sur un fichier sélectionné par un crontole
openFileDialog. Il semble retourner une chaine du type System::String ^,
mais l'API pour ouvrir l'image nécessite un LPWSTR. Evidemment le
casting ne fonctionne pas.

Erreur 1 error C2440: 'type cast' : cannot convert from
'System::String ^' to 'LPWSTR'



Convertis la en Unicode.
Remi THOMAS
Le #9738091
"Vincent Badier" écrivit
Bonjour,

Je débute en C++ sous visual studio, et me prend des vestes par la bête à
chaque fois que j'éssais de travailler avec des chaines de charactères.

Je cherche à travailler sur un fichier sélectionné par un crontole
openFileDialog. Il semble retourner une chaine du type System::String ^,
mais l'API pour ouvrir l'image nécessite un LPWSTR. Evidemment le casting
ne fonctionne pas.

Erreur 1 error C2440: 'type cast' : cannot convert from 'System::String ^'
to 'LPWSTR'

Auriez-vous la bonté de me donner un petit tuyaux sur le sujet svp?
Merci d'avance.

Vincent



Bonjour,
Attention tu fais quoi comme C++?
Là tu sembles parler de C++/CLI c'est à dire du C++ managé.
Si tu débutes je te conseille de faire des projets Win32 et non pas des
projets managés.
Si tu vaus faire du managé, alors débute en C#.

Rémi
Vincent Badier
Le #9738081
Remi THOMAS a écrit :
"Vincent Badier" écrivit
Bonjour,

Je débute en C++ sous visual studio, et me prend des vestes par la bête à
chaque fois que j'éssais de travailler avec des chaines de charactères.

Je cherche à travailler sur un fichier sélectionné par un crontole
openFileDialog. Il semble retourner une chaine du type System::String ^,
mais l'API pour ouvrir l'image nécessite un LPWSTR. Evidemment le casting
ne fonctionne pas.

Erreur 1 error C2440: 'type cast' : cannot convert from 'System::String ^'
to 'LPWSTR'

Auriez-vous la bonté de me donner un petit tuyaux sur le sujet svp?
Merci d'avance.

Vincent



Bonjour,
Attention tu fais quoi comme C++?
Là tu sembles parler de C++/CLI c'est à dire du C++ managé.
Si tu débutes je te conseille de faire des projets Win32 et non pas des
projets managés.
Si tu vaus faire du managé, alors débute en C#.

Rémi




C'est bien ce qu'il je craignais.
Bon je vais essayer d'apprendre le C# alors.

Juste une précision avant de foncer tête baissée. Si je souhaite que les
bibliothèque que je veux développer soit utilisable aussi bien pour un
serveur, que pour un client gui ainsi que pour une application WEB, il
est nécessaire de faire le tout en .NET (= managé?), n'est-ce pas?

Vincent
Remi THOMAS
Le #9738071
Vincent écrivit

Bonjour,
Attention tu fais quoi comme C++?
Là tu sembles parler de C++/CLI c'est à dire du C++ managé.
Si tu débutes je te conseille de faire des projets Win32 et non pas des
projets managés.
Si tu vaus faire du managé, alors débute en C#.

Rémi


C'est bien ce qu'il je craignais.
Bon je vais essayer d'apprendre le C# alors.

Juste une précision avant de foncer tête baissée. Si je souhaite que les
bibliothèque que je veux développer soit utilisable aussi bien pour un
serveur, que pour un client gui ainsi que pour une application WEB, il est
nécessaire de faire le tout en .NET (= managé?), n'est-ce pas?

Vincent



Je pense que c'est le plus simple.
Si jamais tu manques de puissances de calcul tu pourras toujours écrire une
bibliothèque .NET (ou assembly) en C++/CLI qui permet de mixer C++ natif et
C++ managé.

Rémi
adebaene
Le #9738061
On Jun 21, 11:17 pm, Vincent Badier
Remi THOMAS a écrit :



> "Vincent Badier" écrivit
>> Bonjour,

>> Je débute en C++ sous visual studio, et me prend des vestes par la b ête à
>> chaque fois que j'éssais de travailler avec des chaines de charact ères.

>> Je cherche à travailler sur un fichier sélectionné par un cronto le
>> openFileDialog. Il semble retourner une chaine du type System::String ^,
>> mais l'API pour ouvrir l'image nécessite un LPWSTR. Evidemment le ca sting
>> ne fonctionne pas.

>> Erreur 1 error C2440: 'type cast' : cannot convert from 'System::Strin g ^'
>> to 'LPWSTR'

>> Auriez-vous la bonté de me donner un petit tuyaux sur le sujet svp?
>> Merci d'avance.

>> Vincent

> Bonjour,
> Attention tu fais quoi comme C++?
> Là tu sembles parler de C++/CLI c'est à dire du C++ managé.
> Si tu débutes je te conseille de faire des projets Win32 et non pas d es
> projets managés.
> Si tu vaus faire du managé, alors débute en C#.

> Rémi

C'est bien ce qu'il je craignais.
Bon je vais essayer d'apprendre le C# alors.

Juste une précision avant de foncer tête baissée. Si je souhaite qu e les
bibliothèque que je veux développer soit utilisable aussi bien pour un
serveur, que pour un client gui ainsi que pour une application WEB, il
est nécessaire de faire le tout en .NET (= managé?), n'est-ce pas?



Non, pas du tout.... .NET risques même de t'apporter quelques
problèmes de comaptibilité si tu veux sortir du monde Windows. Par
contre, c'est clair que tu développerai plus vite en .NET, et que la
courbe d'apprentissage initial sera moins rude que du C++ natif (mais
tu comprendras ausi sans doute moins bien ce que tu fais....)

Arnaud
MVP - VC
Publicité
Poster une réponse
Anonyme