Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi ShowMessage ohne VCL (https://www.delphipraxis.net/25096-showmessage-ohne-vcl.html)

leddl 1. Jul 2004 01:58


ShowMessage ohne VCL
 
Moinsen!

Ich schreibe zur Zeit ein Programm, das ich möglichst klein halten will. Ich brauche kein Fenster, sondern muß eigentlich nur eine DLL ansteuern.
Da kommt aber auch schon mein Problem. Bevor ich die Prozedur aus der DLL aufrufe, überprüfe ich, ob sie vorhanden ist. Ist das nicht der Fall, will ich einen Dialog wie die normale ShowMessage ausgeben. Wie kann ich das machen, ohne die Unit Dialogs einzubinden?

Und bitte seid lieb zu mir, hab noch nie was ohne VCL gemacht! :mrgreen:

MfG
Leddl

Luckie 1. Jul 2004 02:41

Re: ShowMessage ohne VCL
 
Nimm die API-Funktion MSDN-Library durchsuchenMessagebox. Ist in der unit Windows.pas deklariert.
Delphi-Quellcode:
Messagebox(hWnd, 'Text', 'Caption', MB_ICONWARNING);
Nachtrag: Hast du kein Handle, kannst du als ersten Parameter auch 0 übergeben.

Nicodius 1. Jul 2004 06:52

Re: ShowMessage ohne VCL
 
HERZLICH WILLKOMMEN IN DER DP

luckie ... 0 .. dachte nil müsse man schreiben ;)

alcaeus 1. Jul 2004 07:16

Re: ShowMessage ohne VCL
 
@Nicodius: Es muss ein Integer mitgegeben werden. Mit nil wirst du deshalb nicht weit kommen. 0 wird aber auch nur deshalb mitgegeben, da es das Fensterhandle des Dekstops ist.

Greetz
alcaeus

leddl 1. Jul 2004 09:28

Re: ShowMessage ohne VCL
 
Na wunderbar! MessageBox hatte ich auch probiert, bin aber leider auch nicht auf die Idee gekommen, da nen Integer einzusetzen. :wall: Und mit nil hats ja nich funktioniert.

Vielen Dank für die schnelle Hilfe! :dp: :thuimb:

Leddl

Luckie 1. Jul 2004 11:58

Re: ShowMessage ohne VCL
 
Zitat:

Zitat von leddl
Na wunderbar! MessageBox hatte ich auch probiert, bin aber leider auch nicht auf die Idee gekommen, da nen Integer einzusetzen. :wall: Und mit nil hats ja nich funktioniert.

Und was hat dir die Compilerfehlermeldung gesagt? Desweiteren wenn man die öffnende Klammer schreibt, zeigt Delphi dir doch die Parameterliste mit den Parametertypen an.

leddl 1. Jul 2004 12:19

Re: ShowMessage ohne VCL
 
Daß da ein HWND reinmußte, war mir klar. Soviel hab ich der CodeCompletion und der OH entnommen. Da steht aber nirgendwo, daß man anstatt dem Handle auch einfach nen Integer nehmen kann. Selbiges aus der Compilerfehlermeldung:
Zitat:

Inkompatible Typen: 'HWND' und 'Pointer'
Glaube, daraus muß man nich schließen, daß die richtige Lösung 0 is. :zwinker:

Aber falls doch, laß ich mich gerne eines besseren belehren, man lernt ja schließlich nie aus! Und Kritik is immer gut (nich immer gern gesehen, aber eigentlich doch ganz gut! :-D )

Leddl

MathiasSimmack 1. Jul 2004 12:22

Re: ShowMessage ohne VCL
 
Zitat:

Zitat von leddl
Zitat:

Inkompatible Typen: 'HWND' und 'Pointer'
Glaube, daraus muß man nich schließen, daß die richtige Lösung 0 is. :zwinker:

Nein, muss man nicht. ;) Aber man kann wissen, dass HWND vom Typ LongWord ist und damit eigentlich kein Pointer (Zeiger) sein kann. Und LongWord ... na ja, das deutet ja schon auf Zahlen hin. :stupid:

leddl 1. Jul 2004 12:32

Re: ShowMessage ohne VCL
 
Wichtig daran ist das kann. :wink: Wenn man das aber nicht weiß, dann ist der Sack zu. Steht nämlich auch in der OH nich. Hab ich zumindest nix gefunden.

[Jetzt fällt mir natürlich ein, daß ich einfach in der Windows.pas danach hätte suchen können, aber daran hab ich vorher au nich gedacht. :wall:]

Achso, btw, gibts in der Art von MessageBox auch nen InputDialog?

Luckie 1. Jul 2004 13:04

Re: ShowMessage ohne VCL
 
Nein. Den gibt es nur von der VCL.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:50 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz