IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Récuperer temp path


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 28
    Par défaut Récuperer temp path
    Bonjour, c'est encore moi

    Cette fois, j'aurais besoin de récuperer le chemin d'accès au fichier "Temp" de l'ordinateur.

    Après quelques recherches, je retrouve plusieurs fois le même code :

    DWORD TempLength=MAX_PATH;
    char TempName[MAX_PATH];
    cout<<GetTempPath(TempLength,TempName);system("pause");

    L'erreur apparait sur la variable en rouge :
    Error : argument of type "char*" is incompatible with parameter of type "LPWSTR"

    Le code fonctionne si je met
    GetTempPathA, mais il me retourne "35" qu'importe ce que je modifie.

    Pour précision, la commande doit impérativement fonctionner pour les OS windows XP mais aussi 7 et je n'utilise que la bibliothèque <Windows.h>

    Une idée?

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    J'ignore pour le premier problème avec le LPTSTR, il me semble que ça dépend si tu es en UTF-8, ANSI ou quelque chose comme ça.
    Il ne faut pas utiliser de char mais des tchar.

    Par contre, concernant le 35... c'est tout à fait normal.
    http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
    If the function succeeds, the return value is the length, in TCHARs, of the string copied to lpBuffer, not including the terminating null character. If the return value is greater than nBufferLength, the return value is the length, in TCHARs, of the buffer required to hold the path.
    If the function fails, the return value is zero. To get extended error information, call GetLastError.
    Si tu veux afficher le chemin du répertoire ce n'est pas la valeur retournée par la fonction qui t'intéresse mais TempName.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 28
    Par défaut
    Merci pour le 35

    Mais connaitriez vous un moyen de récuperer le temp path par un autre biais ? Car j'ai vraiment besoin de récuperer ce chemin..

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 28
    Par défaut
    Voilà, j'ai résolu mon problème.
    Je suis juste stupide

    Donc je dois bien utiliser la commande GetTempPathA
    car je suis en ANSI. Le code qui me renvoie mon temp path est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DWORD TempLength=MAX_PATH;
    char TempName[MAX_PATH];
    GetTempPathA(TempLength,TempName);  //récupération du temp path
    cout<<TempName;system("pause");
    La seule différence avec le code de mon premier poste est que je ne renvoie pas toute la fonction mais seulement le TempName donc le nom du chemin.

    Encore merci pour votre aide.

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par Bousk Voir le message
    Si tu veux afficher le chemin du répertoire ce n'est pas la valeur retournée par la fonction qui t'intéresse mais TempName.


    Pense au bouton résolu .
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 28
    Par défaut
    Ah oui, je n'avais pas compris cela

    Voilàa pour le résolu
    Encore merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 05/02/2015, 11h48
  2. Récuperer le path complet d'un fichier uploader
    Par aelmalki dans le forum Struts 1
    Réponses: 2
    Dernier message: 22/05/2009, 02h56
  3. Récuperer le path de la page
    Par ArnaudDev dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 20/03/2009, 09h45
  4. [JFrame] récuperer le path du fichier glissé sur une JFrame ou JPanel
    Par AliJava dans le forum Agents de placement/Fenêtres
    Réponses: 9
    Dernier message: 19/12/2007, 08h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo