[C++] Chemin relatif

Résolu/Fermé
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 - 21 août 2009 à 00:42
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 - 21 août 2009 à 10:31
Bonjour,

Je viens de terminer un programme en C++, je l'ai compilé et tout marche... Mais !

Quand je créé un installateur (avec Inno Setup) et que j'accède à mon programme via le raccourci du bureau ou le menu démarrer, je me retrouve avec le message d'erreur que j'ai prévu au cas où un fichier ne puisse pas être lu.
Et il se trouve que dans mon code ce fichier est appelé avec un chemin relatif (dans le même dossier que l'exécutable).

J'aimerais donc comprendre pourquoi ce fichier n'est pas trouvé quand je lance le programme avec les raccourcis alors qu'il le trouve très bien quand je le lance directement depuis le .exe !

Merci d'avance pour tout élément de réponse...

3 réponses

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
21 août 2009 à 08:09
Salut.
à mon avis, c'est un problème Windows.
Regarde dans propriété de ton raccourci, normalement, il y a une ligne correspondant au dossier dans lequel on doit ouvrir le programme ("demarrer dans").
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
21 août 2009 à 09:16
Il n'y a rien dans "démarrer dans" ni sur l'icône du bureau, ni sur celle de menu démarrer...
Dois-je en déduire un problème avec Inno Setup ?
Si oui voici le script que j'ai compilé, dès fois qu'un détail m'ai échappé...
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{0CF9B352-15EF-4F4F-89DC-9C129BC9A2FA}
AppName=Anagrammes
AppVerName=Anagrammes 3.0
AppPublisher=KX
DefaultDirName={pf}\Anagrammes 3.0
DefaultGroupName=Anagrammes
AllowNoIcons=yes
OutputDir=C:\Users\KX\Desktop
OutputBaseFilename=Anagrammes 3.0
Compression=lzma
SolidCompression=yes

[Languages]
Name: "french"; MessagesFile: "compiler:Languages\French.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\Anagrammes.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\Code Source.zip"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\Index.dat"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\Lexique3.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\mingwm10.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\QtCore4.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\QtGui4.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\KX\Desktop\Anagrammes 3.0\LisezMoi.txt"; DestDir: "{app}"; Flags: ignoreversion
; NOTE: Don't use "Flags: ignoreversion" on any shared system files

[Icons]
Name: "{group}\Anagrammes"; Filename: "{app}\Anagrammes.exe"
Name: "{group}\{cm:UninstallProgram,Anagrammes}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\Anagrammes"; Filename: "{app}\Anagrammes.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Anagrammes"; Filename: "{app}\Anagrammes.exe"; Tasks: quicklaunchicon

[Run]
Filename: "{app}\Anagrammes.exe"; Description: "{cm:LaunchProgram,Anagrammes}"; Flags: nowait postinstall skipifsilent
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
21 août 2009 à 10:31
J'ai trouvé ! Ça venais bien de Inno Setup, donc j'ai trouvé dans la FAQ
0