AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Too stupid to execute and wait

Ein Thema von QuickAndDirty · begonnen am 9. Aug 2011 · letzter Beitrag vom 10. Aug 2011
Antwort Antwort
Benutzerbild von himitsu
himitsu

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

AW: Too stupid to execute and wait

  Alt 9. Aug 2011, 10:13
Zitat:
Delphi-Quellcode:
else if GetLastError = ERROR_FILE_NOT_FOUND then
      Showmessage('Fehler beim Starten der Anwendung:' + Filename +
                   #13#10'System Fehler: ERROR_FILE_NOT_FOUND')
    else if GetLastError = ERROR_PATH_NOT_FOUND then
      Showmessage('Fehler beim Starten der Anwendung:' + Filename +
               #13#10'System Fehler: ERROR_PATH_NOT_FOUND')
    else if GetLastError = ERROR_DDE_FAIL then
...
Kennst du schon Delphi-Referenz durchsuchenSysErrorMessage oder Delphi-Referenz durchsuchenRaiseLastOSError?

PS: Bei einem dir unbekannten Fehler oder bei neuen Fehler in neueren Windowsen, wird bei dir niemals ein Fehler angezeigt.


Abgesehn davon ist es bei solchen "Funktionen" nicht schöön, wenn Fehler mit ShowMessage und Co. angezeigt werden,
denn was wäre, wenn ich in meinem Programm solche Fehler über abfangen möchte, ohne daß etwas angezeigt wird? (z.B. ein externes Try-Except, was bei ShowMessage aber nicht geht)


Zitat:
WaitForSingleObject
Schau dir mal Delay in der DP-CodeLib an, damit kann man in der aktiven Methode warten und die restliche GUI läuft dennoch weiter.
Oder man lagert das aktuelle ExecAndWait in einen Thread aus, da bleibt dann nur der Thread "hängen" und der GUI-Thread kann problemlos weiterarbeiten.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 9. Aug 2011 um 10:16 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.993 Beiträge
 
Delphi 12 Athens
 
#2

AW: Too stupid to execute and wait

  Alt 9. Aug 2011, 10:15
Zitat:
Delphi-Quellcode:
else if GetLastError = ERROR_FILE_NOT_FOUND then
      Showmessage('Fehler beim Starten der Anwendung:' + Filename +
                   #13#10'System Fehler: ERROR_FILE_NOT_FOUND')
    else if GetLastError = ERROR_PATH_NOT_FOUND then
      Showmessage('Fehler beim Starten der Anwendung:' + Filename +
               #13#10'System Fehler: ERROR_PATH_NOT_FOUND')
    else if GetLastError = ERROR_DDE_FAIL then
...
Kennst du schon Delphi-Referenz durchsuchenSysErrorMessage oder Delphi-Referenz durchsuchenRaiseLastOSError?

PS: Bei einem dir unbekannten Fehler oder bei neuen Fehler in neueren Windowsen, wird bei dir niemals ein Fehler angezeigt.


Abgesehn davon ist es bei solchen "Funktionen" nicht schöön, wenn Fehler mit ShowMessage und Co. angezeigt werden,
denn was wäre, wenn ich in meinem Programm solche Fehler über abfangen möchte, ohne daß etwas angezeigt wird? (z.B. ein externes Try-Except, was bei ShowMessage aber nicht geht)
Himitsu die Showmessages sind nur zum debuggen ^^

du hast also auch keine Idee warum es nicht geht ja?
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Too stupid to execute and wait

  Alt 9. Aug 2011, 10:18
Auch mit SysErrorMessage und Co. kann man debuggen.

Und siehe mein Edit im letzen Post.

wie schon jemand sagte:
- bei ShExecInfoA, SHELLEXECUTEINFOA und ShellExecuteExA das A weg
- WideString zu String
- die AnsiString-Casts raus

Wer sagt, daß das ForegroundWindow zu deinem Prozess gehört? ... Keiner, also kannst du da doch nicht einfach was dranhängen.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 9. Aug 2011 um 10:22 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.993 Beiträge
 
Delphi 12 Athens
 
#4

AW: Too stupid to execute and wait

  Alt 9. Aug 2011, 10:24
Auch mit SysErrorMessage und Co. kann man debuggen.

Und siehe mein Edit im letzen Post.

wie schon jemand sagte:
- bei ShExecInfoA, SHELLEXECUTEINFOA und ShellExecuteExA das A weg
- WideString zu String
- die AnsiString-Casts raus

Wer sagt, daß das ForegroundWindow zu deinem Prozess gehört? ... Keiner, also kannst du da doch nicht einfach was dranhängen.
Ok. wie gesagt habe es kopiert weil ich mal schnell was brauchte... und mit Kommandline programmen ging es auch.

Ich bin in sachen Windows API relativ unbeleckt! Und hoffte eigentlich was fertiges zu finden was einfach einen Prozess startet und wartet bis er fertig ist! Der code hat mit Kommandlinetools auch super hingehauen.
(gsecexe, Isql.exe)
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty ( 9. Aug 2011 um 10:26 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:26 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-2025 by Thomas Breitkreuz