![]() |
"WinSat.exe formal" mit Delphi
Hallo,
wie kann man mit Delphi 7 "WinSat.exe formal" (zur Erstellung des Leistungsindexes) starten. Bitte nicht lächeln! Weder Shellexecute(ex) noch createprocess macht es richtig! Jedenfalls bei mir nicht (Win 10). Wenn man "Winsat formal" in der Console startet, öffnet es ein neues Fenster mit dem Titel: "C:\windo2ws\system32\winsat.exe". Nur, in diesem Ordner gibt es das Programm garnicht. Es liegt in "C:\Windows\WinSxS\amd64_microsoft-windows-w..ystemassessmenttool_31bf3856ad364e35_10.0.17134 .1_ none_6115843020845ee4\" Wenn ich es allerdings aus diesem Ordner starte, wird keine Datei angelegt - jedenfalls finde ich keine. Ich kann also nix auswerten. Außerdem wird sie dann nicht auf Deutsch gestartet! Also, was tun? Gruß Mattze |
AW: "WinSat.exe formal" mit Delphi
Zitat:
Zitat:
Zitat:
Grüße Dalai |
AW: "WinSat.exe formal" mit Delphi
Soweit ich weiß wird WinSAT über Interfaces angesprochen und nicht als externer .exe Aufruf.
![]() Zu meiner Schande, ich habe es nicht getestet da ich keinen Windows Leistungsindex benötige. |
AW: "WinSat.exe formal" mit Delphi
Zitat:
Ich kann es hier ganz normal aufrufen, wenn der Pfad stimmt. Unter 32 Bit Windows in '\system32\WinSAT.exe' und unter 64 Bit Windows unter '\Sysnative\WinSAT.exe'. Den Aufruf selbst habe ich mit ShellExecuteAndWait gemacht, weil die Eingabeaufforderung dann solange offen bleibt, bis die Leistungsbewertung abgeschlossen ist und danach mit deiner Programmausführung die Ergebnisse abgerufen werden können. Alles in ein Memo umleiten wäre dann noch die elegantere Variante... |
AW: "WinSat.exe formal" mit Delphi
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
|
AW: "WinSat.exe formal" mit Delphi
Hallo
und komisch "isses". Den Ordner sysnative habe ich gar nicht. Mitdem Explorer gesucht, wird sie tatsächlich in System32 gefunden!!! Wäre ja sonst auch komisch! Fragt sich, wie ich die mit einem 32-Bit-Programm dort finden und ausführen kann? (Das läuft sicher darauf hinaus, wie ich diese 32-Bit-Umleitung (temporär) verhindern kann.) Delphi 7 ist nun mal "bloß" 32-Bit. Habt Ihr einen Tipp? Gruß Mattze |
AW: "WinSat.exe formal" mit Delphi
Hallo,
vergesst den vorigen Post. Ich hatte nur nicht mitbekommen, dass sysnative ein Alias von system32 für 32-Bit-Programme ist. Jetzt läuft alles wunderbar. (Ich bin trotzdem etwas frustriert! Jetzt computere ich schon sooo lange, aber von sysnative habe ich noch nix gewusst! Und da gibt es bestimmt noch vieles...) Gruß Mattze |
AW: "WinSat.exe formal" mit Delphi
@KodeZwerg: Vielleicht mag es WinSAT.exe nicht, wenn man sie aus einer 32-bit CMD ruft? Schließlich wird die ihre WinSATAPI.dll von dort laden wollen, aber 64-bit Programme haben keinen Zugriff auf SysNative (wozu auch).
Grüße Dalai |
AW: "WinSat.exe formal" mit Delphi
Zitat:
Also ich kann nachvollziehen das ne 32bit CMD da eventuell was falsch macht. Wie starte ich eine 64bit CMD? Wie kann ein Delphi 7 (32bit) Kompilat darauf zugreifen ich aber mit CMD nicht, da wären wir wieder bei Zeile 1 :) Aber Danke, passt schon, ich will es eh nicht benutzen, aber hatte mich interessiert was da übers starten aus verschiedenen Verzeichnissen bei rauskommt. Meine Ergebnisse kann man da ja sehen. |
AW: "WinSat.exe formal" mit Delphi
Zitat:
Zitat:
Die Antwort auf die Frage selbst lautet: Entweder unter Benutzung des SysNative-Verzeichnisses oder unter temporärer Abschaltung der WOW64-Redirection ( ![]() ![]() Grüße Dalai |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz