Bonjour,
Est-ce que la m�thode GetTempPath fonctionne en C++/CLI ?
Je n'arrive pas � l'impl�menter. Pouvez-vous me donner un exemple ?
Merci !
Version imprimable
Bonjour,
Est-ce que la m�thode GetTempPath fonctionne en C++/CLI ?
Je n'arrive pas � l'impl�menter. Pouvez-vous me donner un exemple ?
Merci !
En C++/CLI, on r�cup�rerait le chemin ainsi:
Code:System::String^ tempPath = System::IO::Path::GetTempPath();
Ou plus simple si on est dans le .cpp:
(bizarrement, celui-ci n'est pas disponible via Environment::GetFolderPath()...)Code:
1
2
3
4
5
6 using namespace System; using namespace System::IO; ... String^ tempPath = Path::GetTempPath();
Merci beaucoup.
Je viens de tester, mais j'ai 2 erreurs � la compilation :
Erreur 1 error C2039: 'GetTempPathW'*: n'est pas membre de 'System :: IO :: Path'
Erreur 2 error C2660: 'GetTempPathW'*: la fonction ne prend pas 0 arguments
(alors que j'ai bien utilis� GetTempPath et non GetTempPathW)
Je pense que vous avez, directement ou indirectement, incorpor� la MACRO MSVC++ natif qui convertie "GetTempPath" en "GetTempPathW" quand la constante de compilation UNICODE est d�finie.
Vous pouvez v�rifier mon assertion avec l'option de compilation "/P" qui donnerait dans le .i g�n�r� la d�finition de cette MACRO et depuis quel #include.
Vous ne devriez pas trop m�langer du code manag� C++/CLI avec du code natif.
Ah, je vois le probl�me.
Pour �a, je vois deux solutions:
- Ne pas inclure <windows.h>
- Ajouter un #undef GetTempPath apr�s les inclusions.
Merci !
<windows.h> n'�tait pas inclus.
Par contre, avec #undef GetTempPath ca fonctionne.
Pour mon info, que fait le #undef GetTempPath ?
Il annule le #define GetTempPath GetTempPathW qui se trouve dans <WinBase.h> (un des fichiers d'en-t�te inclus par <windows.h>).
Merci