Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.203 Beiträge
 
Delphi 12 Athens
 
#12

AW: Prozess kann nicht erzeugt werden

  Alt 1. Feb 2024, 16:41
Ich sollte mich mal wieder mit dem WindowsEventsLog beschäftigen. (hatte da mal angefangen einen Logger/LiveLogger zu basteln)
Da bekommt man auch gestartet Prozesse, bzw. StartVersuche und noch viel mehr mit.

Mit ProcMon sieht man zwar auch viel (zumindest Dateizugriffe und Zugriffsfehler, welche es auch beim Start einer Anwendung gibt)
dagegen kann hat aber das HighPerformenceLog vom Windows enorm viel drin.
Da kann man sogar sehen wo CriticalSections erstellt/angefragt/gesperrt/freigegeben werden. (blöd nur, dass der Billignachbau Delphi-Referenz durchsuchenTMonitor von Embarcadero das Log vergisst zu benachrichtigen)

Die Grundfunktionen vom dotNET / C# füllen das Log sehr gut.
Da hatte ich mal gesehn, wie jemand ein Auswertetool für schrieb, um das Log zu analysieren. Und am Ende konnte für seinen damit geschriebenen WebServer rausfinden wo und raum der immer mal wieder kurz hängt.
Selbst für Delphi kann man Unmassen an Infos darüber rausbekommen -> Speicherverwaltung (nicht FastMM, die Systemfunktionen dahinter), CriticalSections/TCriticalSections (nicht den eigenen TMonitor und TMultiReadWriter oder wie der heißt), Exceptions, Auslagerungsdatei, DLLs/Packages laden, Datei und Registtryzugriffe, Netzwerk und eben auch gestartete oder nichtgestartete Programme uvm.

Wer besondert krank masochistisch veranlagt ist, darf gern mal mit dem Windows Performance Recorder (wpr.exe / wprui.exe) und dem Windows Performance Analyzer (wpa.exe) spielen.

Wir suchen grade bei einem Kunden, warum bei einem seiner Rechner dort unser Programm oft so extrem langsam startet. Dafür hatte ich im Support bei uns mal das zusammengeklimpert:
Zitat:
Außer im Taskmanager und Ressourcenmonitor %windir%\system32\perfmon.exe /res (im Win10-Taskmanager als Link unter Leistung)
zu schauen, ob man irgendwas sieht, was ausgelastet ist oder bremst,

oder explizit Logs erstellen zu lassen, um dort nachzusehn (die Logs lassen sich speichern und an uns schicken),
fällt mir auf die Schnelle auch erstmal noch nichts ein.

Also in den Logs des Prozessmonitors https://learn.microsoft.com/de-de/sy...nloads/procmon
oder dem Windows Performance Recorder C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\WPRUI.exe

Der Recorder, bzw. das Windows SDK, ist bestimmt nicht installiert.
(müsste man echt mal nachsehn, ob man solche Tools auch ohne die fette Installation des SDK bekommt jupp geht, ist bloß ein paar 100MB das nötige Unterverzeichnis)


LiveLogger -> direkt an eine/mehrere LogSources hängen und sofort filtern zu können, ohne dass erst Gigabyte an Logdaten anfallen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat