J'ai une sorte d'appilcation Windows, fonctionnant sous Windows 7 32 bits. J'essaie d'enregistrer une commande particulière d'extension de fichier avec mon application en utilisant le registre Windows. Une telle extension de fichier est la mienne et également enregistrée par moi. L'application installée dans un sous-répertoire particulier au sein de Program Files
. Je veux que mon installateur enregistre l'application correctement pour les platfroms 32 et 64 bits, puisque les noms de répertoire Program Files
peuvent être différents sur les platfroms x86 et x64, alors que j'ai besoin de spécifier le chemin de mon application, j'utilise la redirection de registre %ProgramFiles%
. Ici, je reproduis quels documents je fais au Registre:Windows 7 Registre% ProgramFiles% numéro
// file extension
HKEY_CURRENT_USER
Software
Classes
.myext
Default REG_SZ myapp.myext
// application
HKEY_CURRENT_USER
Software
Classes
.myapp.myext
Shell
Open
Command
Default REG_SZ "%ProgramFiles%\path\to\my\app\myapp.exe" -u -i "%1"
chemin réel pour programmer des fichiers dir dans ma machine de test est C:\Program Files
Avec cet enregistrement, je reçois une erreur:
Windows cannot access the specified device path, or file. You may not have the appropriate permissions to access the item.
Si je remplace %ProgramFiles%
avec réelle C:\Program Files
tout fonctionne bien. Aussi quand j'utilise le même chemin: "%ProgramFiles%\path\to\my\app\myapp.exe"
pour exécuter l'application de la console tout fonctionne bien aussi. Quelle peut être la raison d'un tel problème.
Oui, je voulais dire agrandir, pas rediriger – vard