0

J'essaie de définir une condition de lancement de recherche de fichier pour mon installateur. J'en ai besoin pour rechercher un fichier spécifié dans un sous-dossier de mon dossier [TARGETDIR].Propriété Folder de File Search Launch Condition: comment spécifier un dossier personnalisé sous [TARGETDIR]?

J'ai essayé de définir la propriété Folder à:

  • [TARGETDIR]/Subfolder
  • [TARGETDIR] Subfolder
  • [TARGETDIR] Subfolder/
  • [TARGETDIR]/Subfolder/
  • [TARGETDIR]/"Sous-dossier"

Aucune des solutions ci-dessus n'a fonctionné. Le fichier situé dans le sous-dossier n'est jamais trouvé. Cela fonctionne si je ne spécifie que [TARGETDIR] avec la propriété Depth définie sur 1, mais je préfère spécifier directement le répertoire à rechercher.

J'ai trouvé une question similaire here, mais il n'y a pas de réponse.

Quelle est la méthode correcte pour définir la propriété Folder pour fonctionner avec un dossier personnalisé?

Répondre

1

La difficulté ici est que TARGETDIR n'est défini que plus tard que la recherche est terminée, donc il n'a pas encore de valeur. Même si elle avait une valeur, c'est ce qui est changé par la boîte de dialogue de navigation qui peut changer là où l'utilisateur installe l'application (voir la fenêtre de propriétés du dossier d'application dans le système de fichiers sur la machine cible). Cela signifie que vous devez utiliser les propriétés de dossier standard dans votre recherche. Si vous voulez rechercher ce que vous pensez peut être où le fichier est installé, utilisez:

[ProgramFilesFolder] unDossier \ SomeOtherFolder

ou quelque chose de similaire si votre valeur supposée de TARGETDIR est dans Program Files x86.

+0

Merci pour votre réponse. Serait-il possible d'écrire une petite application console qui prend en entrée le dossier d'installation spécifié par l'utilisateur et recherche un sous-dossier, puis définit une propriété? Si cela est possible, cette étape serait pendant la phase "Install" ou "Commit" des actions personnalisées pour permettre à la propriété d'être définie avant que les fichiers soient poussés dans le dossier? – kaycee

+0

Si vous allez écrire du code alors oui, c'est possible, mais si ce fichier a été installé avec alors une recherche de composant est préférable. Il existe de nombreuses façons de rechercher des applications installées autres que la recherche de fichiers, donc je les encourage. Éléments d'enregistrement, recherches de niveau supérieur, recherches d'identifiant de composant, etc. – PhilDW