| Autor |
Beitrag |
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 22.01.09 01:04
Moin!
Ich hab´ da ein kleines Problem, bei dem ich nicht so richtig den Ansatz finde  vielleicht könntet ihr mir mal auf die Sprünge helfen.
Ich muss ein Script debuggen, dass im Rahmen eines automatischen Installationsverfahrens (Enterprise Software Management) aufgerufen wird. Bei dem Vorgang wird vom InstallerService nicht nur mein Script aufgerufen, sondern auch ein kleines externes Tool temporär auf der Platte abgelegt, aufgerufen und dann wieder gelöscht.
Ich vermute, dass die Kommandozeilen-Parameter, mit denen das ext. Tool vom InstallerService aufgerufen wird, nicht korrekt sind oder zumindest nicht vollständig. Der Hersteller/Hotline resp. "mein Ansprechpartner" für das ESM-Werkzeug sagt natürlich, "das kann gar nicht sein, dass muss an meinem Script liegen".  Glaub ich aber nicht...
Problem: wie komme ich an die Kommandozeile, mit der das - ja leider nur temporär auf der Platte befindliche - Tool aufgerufen wird?!  Ich würde ja einfach eine Dummy-Anwendung "dazwischen" hängen, die einfach die übergebenen Parameter an das Original weiterleitet, aber das geht ja nicht, weil die Anwendung nur temporär da ist (und so Tricks mit vorher hinkopieren und Schreibschützen geht nicht, weil dann der InstallerService den Vorgang abbricht)...
Was tun?!
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 22.01.09 01:07
Zeigt der Process Explorer den Prozess nicht an? Dort kann man die Kommandozeile ja einsehen.
technet.microsoft.co...ernals/bb896653.aspx
Und ab Vista zeigt der Original Taskmanager ja die Kommandozeile auch bereits an.
|
|
Narses 
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 22.01.09 01:10
Moin!
jaenicke hat folgendes geschrieben : | | Zeigt der Process Explorer den Prozess nicht an? Dort kann man die Kommandozeile ja einsehen. |
IIRC zeigt mir der PE doch keine beendeten Prozesse an, oder?  Weil, das Tool läuft max. 500ms, soo schnell kann ich nicht lesen...
jaenicke hat folgendes geschrieben : | | Und ab Vista zeigt der Original Taskmanager ja die Kommandozeile auch bereits an. |
a) dito, b) XP pro.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 22.01.09 01:14
Man kann dem PE sagen, dass er beendete Prozesse für etwa 9 Sekunden noch anzeigen soll. Das sollte doch schon eher reichen.
Problem ist aber, dass man ggf. schnell genug Doppelklicken muss auf den Prozess, da die Kommandozeile IIRC nicht in den Datenspalten anzeigbar war ...
Ansonsten (Extrem-Lösung): Hook im InstallerService CreateProcessExW und schreib jegliche Aufrufe davon auf Platte ... 2ct usw. Du weißt 
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 22.01.09 01:16
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: Do 22.01.09 01:22
Oh. Vergesst es, hab den OP nicht zuende gelesen.
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
Zuletzt bearbeitet von Martok am Do 22.01.09 01:23, insgesamt 1-mal bearbeitet
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 22.01.09 01:23
|
|
Narses 
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 22.01.09 01:25
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 22.01.09 01:27
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 22.01.09 01:27
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: Do 22.01.09 01:28
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
Narses 
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 22.01.09 01:31
Moin!
Martok hat folgendes geschrieben : | | Was aber geht, ist den Host-Process mit Process Monitor überwachen. Auf 'Process Activity' überwachen, dann bleiben nur noch die CreateProcess-Aufrufe übrig. |
 Was, wie?! Details!
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 22.01.09 01:34
|
|
Narses 
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 22.01.09 01:41
Moin!
Ich danke euch!  Schätze, damit komme ich weiter, ich werde das morgen mal intensiv verfolgen.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Do 22.01.09 01:43
Das geht sehr einfach, einfach Filter --> Filter... oder Strg + L und dann wie im angehängten Bild den Filter einstellen (Operation is "Process Create") und Add.
Einloggen, um Attachments anzusehen!
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: Do 22.01.09 01:47
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: Do 22.01.09 09:05
Anscheinend kann auch FileMon von den SysInternals Parameter anzeigen. Dort werden alle Festplattenzugriffe aufgelistet, das ist vll. sogar schneller ausprobiert 
|
|
Narses 
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 27.01.09 22:41
Moin!
UGrohne hat folgendes geschrieben : | Anscheinend kann auch FileMon von den SysInternals Parameter anzeigen. Dort werden alle Festplattenzugriffe aufgelistet, das ist vll. sogar schneller ausprobiert  |
Wenn ich das auf der MS-Site richtig interpretiere, dann ist ProcessMonitor der Nachfolger von FileMon&RegMon.
Soo, dann will ich doch hier noch mal die Ergebnisse der Aktion vermelden:  - Das Fazit vorab: ich habe es damit hingekriegt
aber...
- ProcMon runtergeladen, gestartet, ein paar Sekunden den reinlaufenden Ereignissen zugesehen - Bluescreen (nur aus dem Augenwinkel gesehen!) - Reboot (ohne, dass ich das in den Systemeigeschaften erlaubt hätte)!
- Hm
das Ding auf einem anderen Rechner gestartet - gleicher Effekt.
- Gibt´s doch nicht
Was kann das sein?! Erstmal direkt nach dem Start das Capturing gestoppt, Backing auf File gestellt, den Filter eingerichtet und Haken bei "gefilterte Ereignisse droppen" gesetzt, IP-Adressresolution ausgemacht. Wieder gestartet, besser. Trotzdem, nach 15 Minuten Bluescreen, Reboot.
Der Virenscanner! Den ganzen Rotz disabled, ProcMon gestartet, läuft stabil. Uff...
- Software-Verteilungswerkzeug angeworfen, Job angelegt, gestartet - Fehler!
Hm... nochmal gestartet - Fehler. Auf dem andern Rechner (der von oben) den Job gestartet - Fehler! Auf einem dritten Rechner den Job ausgeführt - geht. Fazit: auf den Rechnern, auf denen ProcMon einen Reset ausgelöst hat, läuft das SW-Verteilungs-Tool nicht mehr... Ahhhhhhhhhrg! Warum?
- Also den dritten Rechner entsprechend vorbereitet und höllig aufgepasst, dass ProcMon keinen Reset auslöst.
Job gestartet, läuft an (besteht aber leider aus mehreren Teilschritten), kurz bevor der letzte Teilschritt (mit meinem Script) kommt - Reboot... AAAAAAAAAAAHHHHHHHHHHHHHRRRRRRRGGGG!!!
- Diesmal
hat der kleine Narses aber keine Hardware, sondern eine VM genommen und klickt kalt lächelnd auf "Revert to Snapshot"... und weiter gehts...
- Ohne ProcMon den Job bis vor den entscheidenden Teilschritt laufen lassen und dann erst ProcMon gestartet.
Bingo! Parameter erwischt. Und wie ich es mir gedacht habe, die Parameter sind nicht die, die da stehen sollten. Hehe. Also, Erfolg!
- Dummerweise sind nun aber leider auch zwei Arbeitsplatzrechner (softwaremäßig) defekt
so dass ich die jetzt neu installieren darf... einer davon ist natürlich mein Desktop... klar eigentlich, oder? *seufz*
- Dieses Tool ist entweder grandios buggy oder ich habe nicht die Lizenz zur Nutzung.

Nachdem ich nun zur allgemeinen Erheiterung beigetragen habe,
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 28.01.09 01:43
Narses hat folgendes geschrieben : | | Dieses Tool ist entweder grandios buggy oder ich habe nicht die Lizenz zur Nutzung. |
Naja, dass es bei mir funktioniert zeigt ja der Screenshot.
Aber was da derart schief laufen kann weiß ich nicht. Vielleicht funkt ja das Antivirenprogramm / die Firewall dazwischen und verursacht sowas. Bei mir springt bei sowas z.B. die Firewall an (ZoneAlarm).
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mi 28.01.09 03:53
Also bei mir verursacht ProcMon auch teilweise von "Programm hängt" bis Bluescreen verschiedene Dinge ...
Wobei mein Windows auch beim Stecken von 4 GB gar nicht hochfährt, von daher kann ich nicht wirklich sagen, ob mein System da noch wirklich als Testsystem für solch eine Beurteilung herhalten kann ...
Fakt ist, dass ProcMon durchaus Hänger verursachen kann. Ähnliche Effekte kann auch TcpMon haben (verursacht bei mir öfters BlueScreens, besonders, wenn man versucht, TcpMon zu beenden.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
|