Frage Process Monitor kann nicht auf einem 64-Bit-Computer gestartet werden


Wenn ich versuche, Process Monitor von SysInternals auf einigen 64 Bit Windows 7-Computern zu starten, kann der Prozess nicht gestartet werden. Es gibt keine Fehlermeldung. Ich doppelklicke und nichts passiert. Andere 64-Bit-Windows-7-Computer funktionieren gut. Irgendwelche Ideen?


22
2017-12-14 21:52


Ursprung


In haben das gleiche Problem, und ich kann Process Monitor im 32-Bit-Modus mit der Befehlszeilenoption ausführen procmon.exe /Run32. Die Aufnahme in diesem Modus wird jedoch nicht unterstützt. - jirkamat
@jirkamat Funktioniert hier nicht :( - Zero3


Antworten:


Hier ist was ich gefunden habe. Die 32-Bit-Procmon.exe enthält die 64-Bit-Exe darin als binäre Ressource. Wenn die 32-Bit-EXE startet, extrahiert sie die 64-Bit-Version in eine versteckte Datei namens Procmon64.exe und führt sie dann aus. Aus irgendeinem Grund schlägt dieser Prozess bei einigen Windows 7-Installationen fehl.

Ich habe es geschafft, die 64-Bit-Exe mit Visual Studio 2010 zu extrahieren.

  1. Öffnen Sie Visual Studio und öffnen Sie die Datei Procmon.exe über das Menü Datei-> Öffnen-> Datei ...
  2. Erweitern Sie im Ressourcenbaum den Knoten "BINRES"
  3. Klicken Sie mit der rechten Maustaste auf den Knoten 1308, und wählen Sie Exportieren ... aus.
  4. Benennen Sie die exportierte Ressource Procmon-64.exe und speichern Sie sie
  5. Führen Sie die extrahierte EXE aus

Benennen Sie die extrahierte exe Procmon64.exe (kein Bindestrich) nicht, weil das 32-Bit-Procmon versuchen wird, es zu löschen, wenn es die Chance erhält.

Wenn Sie Visual Studio nicht verwenden, verwenden Sie einen Windows-Programmauslöser für Ressourcen wie ResourcesExtract - http://www.nirsoft.net/utils/resources_extract.html


32
2017-12-14 21:52



Es ist interessant, dass Sie einen Workaround gefunden haben, aber ich wäre viel mehr daran interessiert, warum Sie das überhaupt tun müssten. - Zoredache
Ich möchte auch die Ursache finden, aber das Debuggen eines nativen Prozesses ohne Symbole ist die Mühe nicht wert. Vor allem eine mit dem OS als Process Monitor integriert. - Ryan Michela
Das Extrahieren der 64-Bit-Exe von ProcMon zu Standalone-EXE und das Ausführen dieser Exe löst dieses Problem für mich! ProcMon läuft gut. - jirkamat
Einmal, während ich immer wieder frustriert auf Procmon.exe immer wieder doppelklickte, sah ich den versteckten Procmon64.exe im Windows Explorer. Dies gab mir den Hinweis, dass die 64-Bit-Version von der 32-Bit-Version extrahiert wurde. Nach dieser Vorahnung habe ich die 32-Bit-Exe geknackt, um ihre Ressourcen zu untersuchen, und ich fand eine, die um Größenordnungen größer war als die anderen. Ich extrahierte die Ressource und speicherte sie als .exe. Und siehe da, es war der fehlende 64-Bit-Prozessmonitor. - Ryan Michela
Da ich dieses Problem mit vielen Sysinternal-Programmen habe, insbesondere mit all denen, die eine 64-Bit-Version extrahieren (das ist vor kurzem ganz plötzlich geschehen, kann keine von ihnen ausgeführt werden, weil es besagt, dass das Verzeichnis nicht beschreibbar ist), aber Wenn Sie den Ressourcenextraktor ausführen und auf 'binäre Assets' oder was auch immer auf den Anwendungen von sysinternal klicken, können Sie grundsätzlich nach Größe sortieren, und die größte ist die App. Benenne es einfach in exe und schon gehts ~ - mgrandi


Lass mich deine Meinung sagen. procmon.exe ERFORDERT den Arbeitsstationsdienst, der ausgeführt wird, um zu starten. Es benutzt es um etwas aufzuzählen und wird ohne es still sterben.

Dies ist nirgends dokumentiert und ziemlich falsch.


5
2018-02-12 17:40



Ja! Das war's! Diese Antwort muss an die Spitze gehen. - himself
Yup, das hat es für mich getan. Version 3.10 erfordert es nicht, aber Version 3.20 tut es. Du hast es geschafft; verblüfft. "Hübsch" zu sagen ist eine große Untertreibung. Ich habe keine Lust, diesen Dienst zu führen, deshalb bin ich sehr enttäuscht von Mark. - Synetech


Ich weiß, dass dieser Thread eine Weile her ist, aber ich habe dieses Problem kürzlich gesehen und ich habe einen weiteren Faktor bemerkt, der hilfreich sein könnte. Administratorrecht. Wenn ich mich als Administrator anmelde und es ausführe, funktioniert es gut. Wenn Sie sich als Nicht-Administrator anmelden und es ausführen, tritt das Problem auf und das extrahierte procmon-64 zeigt das gleiche Problem.


2
2018-01-11 00:50





Es ist mir gelungen, ProcMon64.exe mit dem nächsten Perl-Skript zu extrahieren, das im Temp-Ordner abgelegt und ausgeführt wurde.

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')}
    }
}

Nach mehreren Ausführungen entstehen Dutzende von Copes, die alle gleich sind (der gleiche CRC32)


2
2017-09-22 09:17





Ospy ist ein ProcMon ALternative. Sie könnten versuchen, den Start von Procmon damit zu beheben.


0
2017-12-24 16:01





Ich habe dieses Problem behoben, indem ich meine Umgebungsvariablen erneut überprüft habe. Sie können überprüfen %TEMP% um zu sehen, ob du schon mal etwas drinnen hinein hast. Entfernen Sie alle anderen Ordner mit Ausnahme von Windows Temp und starten Sie dann neu.


0
2017-07-18 14:36





Ich habe Resource Hacker benutzt. Extrahiere 1038 als bin. fügen Sie .exe hinzu und es scheint zu starten.


-2
2018-01-08 02:11



Die ausführbare Datei wird im Ressourcen-Hacker nicht geöffnet .... - Amalgovinus