2016-01-26 2 views
0

J'ai un fichier EXE, et je souhaite le lancer à chaque démarrage de Windows pour tous les utilisateurs. Je suis en train d'ajouter une clé de registre sur: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Mon EXE fonctionne correctement, mais il ne peut accéder à aucun autre fichier (.txt) même si le fichier requis se trouve au même emplacement. il semble que l'accès a été refusé. Pourquoi? Mon Exe est une application .NET (application console C#) lisant un contenu de fichier texte.Accès restreint aux ressources lors de l'exécution automatique EXE sur la clé de registre HKEY_LOCAL_MACHINE

+1

Utilisez toujours les noms de chemin complets pour les fichiers, c: \ foo \ bar \ baz.txt. Juste baz.txt ne fonctionnera pas, le Environment.CurrentDirectory n'est pas défini là où vous l'espérez. Utilisez AppData, si nécessaire utilisez Path.GetDirectoryName (Assembly.GetEntryAssembly(). Location) pour savoir où votre EXE a été installé. –

+0

cela fonctionne pour moi. @HansPassant de Merci. – Salem

Répondre

0

Solution de @HansPassant:

Utilisez toujours les noms de chemin complet pour les fichiers, c:\foo\bar\baz.txt. Juste baz.txt ne fonctionnera pas, le Environment.CurrentDirectory n'est pas défini là où vous l'espérez. Utilisez AppData, si nécessaire, utilisez Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) pour savoir où votre EXE a été installé.