2010-09-09 7 views
0

Frapper ma tête contre le mur pendant environ 2 jours avec celui-ci. J'utilise un System.Diagnostics.Process pour exécuter dirquota.exe. J'attrape une exception à .Start() qui est "Le système ne peut pas trouver le fichier spécifié".Process.Start dirquota.exe - Le système ne trouve pas le fichier spécifié

que je fais maintenant:

  foreach (var fi in new DirectoryInfo(@"C:\Windows\System32\").GetFiles()) 
      { 
       Console.WriteLine(fi.Name); 
      } 

Ce sorties à peu près tous les fichiers dans ce répertoire en dehors de dirquota.exe. N'importe qui?

Cheers.

+0

Êtes-vous sûr d'avoir dirquota.exe sur la machine? – pdiddy

+0

Oui, positif. Je l'exécute à partir de la ligne de commande et je peux le voir à travers l'Explorateur. – youwhut

+0

Est-ce qu'il omet d'autres fichiers dans le répertoire? Est-ce que dirquota.exe a des attributs spéciaux comme hidden/archive etc? –

Répondre

4

Exécutez-vous une version 64 bits de Windows? Regardez dans c: \ windows \ syswow64, la maison des programmes 32 bits.

+0

Salut, je regarde dans ce dossier et il n'y a pas dirquota.exe. Je peux définitivement voir ce fichier dans System32. – youwhut

+0

Ok maintenant j'ai compilé l'application pour cibler x64 tout est bon. Merci pour le conseil qui m'a fait réfléchir! – youwhut

+1

@youwhut: assurez-vous d'utiliser Any CPU à la place. –

0

J'ai juste frappé cette même erreur et le problème était que le programme exécutable a été compilé comme x86 et l'exécutant dans un OS de 64 bits.

La modification du projet 'Platform Target' à AnyCPU le corrige.

Questions connexes