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++Builder Discussion :

R�cup�rer la version d'un fichier [Syst�me/Fichiers/API]


Sujet :

C++Builder

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 80
    Par d�faut R�cup�rer la version d'un fichier
    Bonjour,

    J'essaye de r�cup�rer la version d'un fichier, j'ai donc repris ce code :

    Topic Version Fichier

    qui, d�apr�s les utilisateurs du topic, marche correctement.

    Pour ma part, dans le dernier appel de la fonction VerQueryValue, le "lpBuffer" ne me retourne qu'un seul octet (donc la version majeur du fichier), tandis que "TailleBuffer" me retourne un entier avec la bonne taille (10).

    Quelqu'un aurait une id�e ?

    [Windows XP - Rad Studio XE2]

  2. #2
    Expert �minent
    Avatar de ShaiLeTroll
    Homme Profil pro
    D�veloppeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 089
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 44
    Localisation : France, Seine Saint Denis (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur C++\Delphi
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 089
    Par d�faut
    Un octet ?
    Ne serait pas l'utilisation d'une API windows WIDE (Unicode) avec du char* (ANSI)

    Soit tu forcer l'utilisation VerQueryValueA
    V�rifie ton mapping d'ailleurs dans les options de projet
    Tu peux le v�rifier, si VerQueryValueW donne le m�me r�sultat que VerQueryValue

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    Version->Caption = "Version " + UnicodeString((wchar_t*) lpBuffer);
    la Taille de 10 d'ailleurs, suffit de voir si elle correspond � 10 ou 5
    en ANSI, �a serait une version comme 1.02.03.04
    en Wide, �a serait une version comme 10.01
    Aide via F1 - FAQ - Guide du d�veloppeur Delphi devant un probl�me - Pensez-y !
    Attention Troll M�chant !
    "Quand un homme a faim, mieux vaut lui apprendre � p�cher que de lui donner un poisson" Confucius
    Mieux vaut se taire et para�tre idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la m�diocrit� !

    L'exp�rience, c'est le nom que chacun donne � ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    80
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 80
    Par d�faut
    En effet il fallait le convertir en UnicodeString.

    Merci pour ton aide Shai.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 5
    Dernier message: 05/08/2010, 13h52
  2. Comment r�cup�rer la version d'excel au d�marrage d'un fichier
    Par D-D-Du-06 dans le forum Macros et VBA Excel
    R�ponses: 2
    Dernier message: 24/04/2010, 11h46
  3. R�cup�rer les infos de version d'un fichier
    Par Eldann dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 24/07/2009, 15h50
  4. R�ponses: 1
    Dernier message: 16/08/2007, 20h07
  5. R�ponses: 1
    Dernier message: 27/02/2007, 11h35

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