Custom System Messages
You can create your own system messages and use them to coordinate activities
between applications and other components in the system. This is especially
useful if you have created your own installable drivers or system-level device
drivers. Your custom system messages can carry information to and from your driver
and the applications that use the driver.
You broadcast custom system messages using the
BroadcastSystemMessage function. (System-level device drivers use a related, system-level function.)
The function sends the messages to the recipients in this order: system-level
device drivers, Windows-based network drivers, installable drivers, and
applications. This means that system-level device drivers, if chosen as recipients,
always get the first opportunity to respond to a system message. Within a given
recipient type, no driver is guaranteed to receive a given message before any
other driver. This means that a system message intended for a specific driver
must have a globally-unique message identifier so that no other driver
unintentionally processes it.
Query messages are a useful way to poll recipients for permission to carry out
a given action. You can generate your own query messages by setting the
BSF_QUERY value in the
dwFlags parameter when calling
BroadcastSystemMessage. Each recipient of the query message must return TRUE for the function to send
the message to the next recipient. If any recipient returns
BROADCAST_QUERY_DENY, the broadcast ends immediately and the function returns 0.
You can create installable drivers that broadcast and process system messages.
An installable driver is a dynamic-link library (DLL) that exports a
DriverProc function. The driver receives system messages through its
DriverProc function and can broadcast messages using
BroadcastSystemMessage. Installable drivers are typically used to support multimedia devices, such
as sound boards, but can be used for other devices and purposes too.
Windows-based network drivers are dynamic-link libraries that provide the
underlying support for applications that use the Windows network functions to
connect to and browse network resources. System-level device drivers are
operating-system-specific executable components that provide direct access to and
management of the hardware devices of the computer. The details regarding how these
components process system messages is beyond the scope of this book.
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database