Re: Démarrer prog en même temps que Windows
[ Nouvelle discussion
| Répondre au groupe
|
fr.comp.os.ms-windows.programmation ]
Sujet: Re: Démarrer prog en même temps que Windows
De: n...@none.com (WonderMan)
Groupes: fr.comp.os.ms-windows.programmation
Organisation: Aioe.org NNTP Server
Date: 28. Apr 2008, 11:24:39
References: 1
|
WonderMan avait énoncé :
> Bonjour,
>
> J'ai développé un programme en C++ (MFC) qui utilise un fichier .INI placé
> dans le même dossier que l'EXE pour récupérer des données dont il a besoin au
> démarrage.
> Il y a donc dans le code quelque chose du genre (en simplifiant) :
>
> nomDossier = GetCurrentDirectory() ==> Récupère le dossier de l'EXE
> nomFichier = nomDossier + "\\MonAppli.ini";
> /.../
> GetPrivateProfileString(xxx,xxx,xxx,nomFichierINI); ==> Lecture des données
> dans le fichier INI
>
> J'ai vérifié le fonctionnement, et tout marche parfaitement quand je double
> clique sur l'EXE pour le lancer.
> Seulement, j'ai ensuite voulu inscrire mon EXE dans la base de registres pour
> que l'application démarre automatiquement lorsque Windows démarre. Et là, je
> constate que si mon programme démarre bien au démarrage de Windows, il se
> comporte exactement comme s'il ne trouvait pas le fichier INI qui contient
> les données qu'il doit lire en démarrant.
>
> Je soupçonne fortement que dans ce cas précis, la fonction
> GetCurrentDirectory() ne renvoie pas le bon nom de dossier (puisque c'est sur
> elle que je me base pour créer le nom complet de mon fichier INI), mais je ne
> comprend pas pourquoi. Et surtout, comment faire pour que mon application
> démarre bien en même temps que Windows, mais arrive à localiser son fichier
> INI ?
PS : J'ai bien pensé à mettre le fichier INI de mon application dans le
dossier de Windows, et remplacer l'appel à GetCurrentDirectory() par
GetWindowsDirectory(), ce qui pourrait peut-être résoudre le problème,
mais si c'était possible, je préfèrerais laisser le fichier INI dans le
même dossier que le fichier EXE ?

|
 cette fonctionnalité est reservée aux membres ayant une session active !
|