Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Windows API SetEvent, ResetEvent... (https://www.delphipraxis.net/49542-windows-api-setevent-resetevent.html)

delphifan2004 12. Jul 2005 18:39


Windows API SetEvent, ResetEvent...
 
Hallo!

Beim Studium des Windows API bin ich auf die Funktionen SetEvent, ResetEvent, CreateEvent usw. gestoßen. Meine Frage:

Wie ist das "EventObject" aufgebaut. Gibt es da ein standardisiertes Format, damit Windows dann auch damit arbeiten kann und wenn ja, wie sieht das dann aus. Wo finde ich weitere Informationen dazu? Die Delphi Hilfe studiere ich gerade.

Danke im Voraus für Eure Hilfe

Delphifan2004

Niko 12. Jul 2005 19:02

Re: Windows API SetEvent, ResetEvent...
 
Hi,

das benötigte Handle bekommst du von der Funktion MSDN-Library durchsuchenCreateEvent oder MSDN-Library durchsuchenOpenEvent. Ein Beispiel dazu (allerdings in C) gibt's in der SDK-Dokumentation.

Luckie 12. Jul 2005 19:10

Re: Windows API SetEvent, ResetEvent...
 
Sollte in meinem Threading Tutorial erklärt sein mit Demo.

delphifan2004 12. Jul 2005 20:28

Re: Windows API SetEvent, ResetEvent...
 
Hallo Luckie und Niko!

Danke Euch für die Tips. Werde mir erst mal alles durcharbeiten. Wie ich die Sache bis jetzt verstanden habe, ist das Format des Ereignisobjektes durch CreateEvent vorgegeben, da ich ja dort ein Handle auf das Ereignisobjekt erhalte. Aber CreateEvent ist andererseits eine API Funktion. Wo muß also mein Code zur Auswertung meiner Ereignisse stehen?

Delphifan2004

DP-Maintenance 13. Jul 2005 10:17

DP-Maintenance
 
Dieses Thema wurde von "sakura" von "Internet / LAN / ASP.NET" nach "Windows API / MS.NET Framework API" verschoben.

Robert Marquardt 13. Jul 2005 10:48

Re: Windows API SetEvent, ResetEvent...
 
Du scheinst hier Delphi-Objekte und Windows API zu vermischen.
Was Windows als Event bezeichnet hat nichts mit dem zu tun was Delphi als Event bezeichnet.

Olli 13. Jul 2005 11:28

Re: Windows API SetEvent, ResetEvent...
 
Man schreibt normalerweise eine Ereignisbehandling über eine der Wait*-Funktionen. WaitForSingleObject und Co. sind dein Freund. Dazu würde ich aber empfehlen einen separaten Thread zu benutzen, oder alternativ asynchronen I/O, wenn du mit Dateien etc. arbeitest. In letzterem Fall kannst du komplett auf die Events verzichten.

Wie Robert schon sagte, sind Events nicht das was man in Delphi als Events kennt. Vielmehr sind es Kernelobjekte, die einen Namen haben und zur Übermittlung von Zuständen dienen können.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:33 Uhr.

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