SB AWE32 Developer's Information Pack
PART III Windows Driver API
••
37
Copyright
Creative Technology Ltd., 1994-1996
Version 3.00
•
AWE Manager Message Function
•
AWE Manager Messages
•
AWE Manager Message Reference
•
AWE Manager Error Messages
The first section describes how to gain access to the AWE Manager entry point function. The second
section gives a quick and brief description of what the AWE Manager DLL offers. The third section
takes a deeper view into the message functions. The fourth section explains anticipated error messages.
In this chapter, AWE Manager DLL is also referenced as DLL or AWE Manager. And it could refer to
either AWEMAN.DLL or AWEMAN32.DLL.
AWE Manager message function
AWEMAN.DLL provides a single message-based function entry point. This function has the following
prototype:
LRESULT
FAR PASCAL AWEManager(
AWEHANDLE
hUserID,
UINT
unMsg,
LPARAM
lParam1,
LPARAM
lParam2
)
AWEMAN32.DLL provides an entry point which differ from the 16bit version.
LRESULT
WINAPI AWEManager(
AWEHANDLE
hUserID,
UINT
unMsg,
LPARAM
lParam1,
LPARAM
lParam2
)
The parameters' descriptions for both AWEMAN and AWEMAN32.DLL are as follows:
hUserID
Specify a user ID, issued by AWE Manager.
unMsg
Identifies a message that AWE Manager must process.
lParam1
lParam2
Specify message dependent parameters.
The AWEHANDLE is actually a handle to a data structure, classed as CAWEObject, describing the
settings and relationship between the application and the DLL. It is recommended that the AWE
Manager DLL be dynamically linked with the application. In the application, the pointer to function
declaration should bear the same parameter declaration as stated above. A copy of the declaration
appears in the header file provided.
After making such declaration in the code and loading the DLL using the
LoadLibrary()
function
call in Windows, the manager's message function can be accessed using a pointer to a function. It is
important to realize that AWE Manager will only support one user application accessing the AWE32 per
hardware device. It is the task of user application to 'release' the device before it can be accessed by
other user application.