web-dev-qa-db-fra.com

Le moniteur de processus ne parvient pas à démarrer sur un ordinateur 64 bits

Lorsque j'essaie de démarrer le moniteur de processus de Sysinternals sur certaines machines Windows 7 de 64 bits, le processus ne parvient pas à démarrer. Il n'y a pas de message d'erreur. Je double-clique et rien ne se passe. D'autres ordinateurs Windows 7 de 64 bits fonctionnent bien. Des idées?

23
Ryan Michela

Voici ce que j'ai trouvé. Le Procmon.exe 32 bits contient l'exe 64 bits à l'intérieur comme une ressource binaire. Lorsque l'EXE 32 bits démarre, il extrait la version 64 bits dans un fichier caché appelé procmon64.exe, puis exécute cela. Pour une raison quelconque, ce processus échoue sur certaines installations de Windows 7.

J'ai réussi à extraire l'exe 64 bits à l'aide de Visual Studio 2010.

  1. Ouvrez Visual Studio et ouvrez le fichier ProCmon.exe à l'aide du fichier File-> Open-> Fichier ... Menu
  2. Dans l'arborescence de ressources, développez le nœud "binres"
  3. Cliquez avec le bouton droit sur le nœud 1308 et sélectionnez Exporter ...
  4. Nommez la ressource exportée procmon-64.exe et économisez
  5. Courir l'exe extrait

Ne nommez pas l'exe extrait procmon64.exe (pas de trait d'union) car le procon 32 bits essaiera de la supprimer s'il en a la chance.

Si vous n'avez pas de studio Visual, utilisez un extracteur de ressource exécutable Windows comme ResourceSextract - http://www.nirsoft.net/utils/resources_extract.html

33
Ryan Michela

Laisse moi te surprendre. procmon.exe nécessite un service de travail fonctionnant pour commencer. Il l'utilise pour énumérer quelque chose et mourir silencieusement sans elle.

Ceci n'est pas documenté nulle part et assez faux.

5
Rasz_pl

Je réussis à extraire procmon64.exe avec le prochain script Perl placé et exécuté dans le dossier Temp.

use File::Copy;

if(fork()==0)
{ system "C:\\SysInternals\\ProcMon.exe"}
else
{  for($i=1;$i<1000;$i++)
    {if(-e 'ProcMon64.exe')
      { copy('ProcMon64.exe',$i.'.exe')}
    }
}

Après exécutions de multiples, il crée des dizaines de copies qui sont toutes les mêmes (le même CRC32)

2
Dmitry Pi

Je sais que ce fil a été un moment, mais je viens de voir ce problème ces derniers temps et j'ai remarqué un autre facteur qui pourrait être utile. Administrateur Droite. Si je me connecte comme administrateur et exécutez-le, cela fonctionne bien. Si vous vous connectez comme non administrateur et exécutez-le, le problème se produit et le procon-64 extrait indique le même problème.

2
Cloud Guy

OSPY est une alternative procminée. Vous pouvez essayer de dépanner le démarrage du procmon avec cela.

0
Justin Dearing

J'ai corrigé ce problème en vérifiant à nouveau les variables d'environnement. Vous pouvez vérifier %TEMP% Pour voir si vous ajoutez quelque chose à l'intérieur auparavant. Retirez tous les autres dossiers sauf pour Windows Temp, puis redémarrez.

0
user365886