![]() |
Text einer Fehlermeldung (Messagebox) in Delphi bekommen
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo liebe Delphi-Gemeinde,
nachdem ich mich jetzt auf der Suche nach Antwort den ganzen Nachmittag durchs WWW gewühlt habe, wende ich mich nun direkt an euch. Zunächst einmal zum Anhang: Ist eine Fehlermeldung aus der Installation von Office 2003. Warum, wieso und weshalb die Fehlermeldung kommt ist ja für das Problem erstmal zweitrangig. Weiterhin ist die Fehlermeldung quasi erzwungen. Was ich nun brauche ist der Text der in der Fehlermeldung (Messagebox) steht. Im Speziellen brauche ich die Pfadangabe welche Datei das Setup nicht finden kann. Was ich bisher erreicht habe: Ein Handle auf die Fehlermeldung zu bekommen habe ich mit FindWindow erfolgreich geschafft. Doch dann hört es auf. Was ich probiert habe sind GetDlgItemText() und GetWindowText(). Beide Funktionen ohne Erfolg. Was wäre eine probate Lösung hierfür? Mit bestem Dank :) |
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
bei deiner spezellen Fehlermeldung kann ich nix genaues sagen. Wenn ich allerdings auf "Start->Ausführen->s:" gehe dann kommt bei nicht existierendem laufwerk "s" auch eine Fehlermeldung. Diese Fehlermeldung hat ein Static in dem der Text angezeigt wird. Nimm dir einfach mal ein programm mit dem du per mauszeiger die darunterliegende Fensterklasse ermitteln kannst. Wenn du damit den Text erreicht ist es auch möglich mit EnumWindowChilds an den Text heran zu kommen. (Luckie müsste so nen programm haben und auch ich hab schonmal ein programm namens "Componentfinder" gepostet mit dem sowas geht)
|
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
Liste der Anhänge anzeigen (Anzahl: 1)
Hab mal den componentspy von AutoIt bemüht und selbiger liefert folgendes Resultat. (siehe Anhang)
|
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
Du hättest theoretisch auch einfach ctrl+c auf das meldungsfenster simulieren können, wodurch der inhalt der meldung in die zwischenablage kopiert wird. Dies funktioniert aber nur bei MessageBoxes.
ciao, Philipp |
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
wäre auch ein ansatz gewesen, danke.
dank der hinweise von SirThornberry im ICQ hats jetzt auch über den "alten" Weg geklappt :) |
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
Nein,
ich würde dir globales Exceptionhandling empfehlen. Sieh dir dazu das Streams-Tutorial unter Delphi-Source.de an. Link: ![]() Teste es einfach mal aus. Mit E.Message kannst du auf die Fehlermeldung zugreifen. greetz mytar |
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
Danke für den Tipp aber die jetzige Lösung find ich gut.
Mein nächstes Problem: Ich möchte gern automatisiert den mittleren Button der MessageBox klicken. Geht das auch über SendMessage Ereignisse? Was ich bis jetzt probiert habe: hWnd := FindWindow(nil,'Microsoft Office Professional Edition 2003'); hWnd := GetWindow(hWnd,GW_CHILD); SendMessage(hWnd,WM_KEYDOWN,VK_TAB,1); SendMessage(hWnd,WM_KEYUP,VK_TAB,1); SendMessage(hWnd,WM_KEYDOWN,VK_RETURN,1); SendMessage(hWnd,WM_KEYUP,VK_RETURN,1); funktioniert leider nicht ;) |
Re: Text einer Fehlermeldung (Messagebox) in Delphi bekommen
Eröffne bitte einen neuen Thread wenn du eine neue Frage hast.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:17 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