![]() |
MessageBox - Kompatibilitätsproblem
Moinsen ihr DP'sen :hi:
ich versuche derzeit mal ein paar ordentliche Fehlermeldungen in mein Programm einzubauen. Leider bin ich hierbei gescheitert: In einer MessageBox sollen erst Text, dann ein String (also auch Text), dann ein Zeilenumbruch und dann wieder Text ausgegeben werden. Das ganze hab ich so versucht (datei ist eine Variable vom Typ String)
Delphi-Quellcode:
Leider bekomme ich eine böse Fehlermeldung:
MessageBox(Self.Handle, 'Fehler #5: ' + datei + #13 + 'Die angegebene Datei ist bereits geöffnet !','Auftragsmanagement', 16);
Zitat:
Danke schonmal. ;) |
Re: MessageBox - Kompatibilitätsproblem
Zitat:
var
Delphi-Quellcode:
datei : string;
begin datei := 'Tabelle.db'; MessageBox(Self.Handle, pchar('Fehler #5: ' + Datei + #13 + 'Die angegebene Datei ist bereits geöffnet !'),pchar('Auftragsmanagement'), 16); end; |
Re: MessageBox - Kompatibilitätsproblem
Zitat:
einfach den string zum PChat typecasten, dann klappts ;)
Delphi-Quellcode:
aenogym
PChar('hallo')
|
Re: MessageBox - Kompatibilitätsproblem
Vielen Dank ihr beiden, so gehts. :cheers:
|
Re: MessageBox - Kompatibilitätsproblem
Auch wenns schon klappt, hier noch ein Tipp:
Mit MessageDlg können auch Dialoge angezeigt werden. Das hat den Vorteil, dass kein lästiges Handle übergeben werden muss. Außerdem wird die Nachricht als String angegeben und muss deswegen nicht mit PChar getypcastet zu werden. Bsp.
Delphi-Quellcode:
IF MessageDlg('Programm schließen?', mtConfirmation, [mbYes, mbNo], 0) = IDYes THEN Close;
CU |
Re: MessageBox - Kompatibilitätsproblem
Hat aber den Nachteil, dass sie die Sprache der Delphi Version haben.
@Assun: Fehlercode #5 ist aber: 'Access is denied.' ;) Wie wäre es mit:
Delphi-Quellcode:
Messagebox(Handle, PChar('Fehlercode: ' + IntToStr(GetLastError) + #13#10 + SysErrorMessage(GetLastError)), 'Foobar', MB_ICONSTOP);
|
Re: MessageBox - Kompatibilitätsproblem
Zitat:
1.) ich bin nicht Assun :shock: 2.) Naja, ich habe für mein Programm eigene Fehlercodes, hat also nichts mit den normalen zu tun. ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:46 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