WinWaitForShell: Difference between revisions
No edit summary |
|||
Line 77: | Line 77: | ||
A message queue is not required for the thread which calls WinWaitForShell. | A message queue is not required for the thread which calls WinWaitForShell. | ||
The prototype and defines for this function are defined in wpobject.h, which may be inaccessible if not compiling a WPS object class. Copy the defines and the prototype verbatim into your own code or headers for use. It is exported through os2386.lib in the OS/2 Warp 4 Toolkit. | |||
=== OS Version Introduced === | === OS Version Introduced === | ||
OS/2 Warp 4 | OS/2 Warp 4 |
Revision as of 15:35, 4 May 2005
WinWaitForShell
- WinWaitForShell(ulEvent)
Allows an application to wait for the Workplace Shell to become available.
Parameters
- ulEvent - ULONG - input
The event to wait for.
Constants
The following constants are defined for the parameter ulEvent:
#define WWFS_QUERY 0x80000000 #define WWFS_DESKTOPCREATED 1 #define WWFS_DESKTOPOPENED 2 #define WWFS_DESKTOPPOPULATED 3
Returns
This function returns a BOOL with the values of:
Module
Define (C/C++)
BOOL APIENTRY WinWaitForShell( ULONG ulEvent );
Export name/Ordinal
Calling conversion
Example Code
#define INCL_WINWORKPLACE #define INCL_WINDIALOGS #define INCL_WIN #include <os2.h> // Define function not found in headers BOOL APIENTRY WinWaitForShell( ULONG ulEvent ); #define WWFS_QUERY 0x80000000 #define WWFS_DESKTOPCREATED 1 #define WWFS_DESKTOPOPENED 2 #define WWFS_DESKTOPPOPULATED 3 int main(int argc, char *argv[]) { HAB hab; HMQ hmq; BOOL fShellPopulated; fShellPopulated = WinWaitForShell(WWFS_DESKTOPPOPULATED); // Desktop populated if (fShellPopulated) { DosBeep(440, 1000); hab = WinInitialize(0); hmq = WinCreateMsgQueue(hab, 0); WinMessageBox(HWND_DESKTOP, HWND_DESKTOP, "Desktop was populated", "Message", 0x100, MB_OK|MB_ICONASTERISK); WinDestroyMsgQueue(hmq); WinTerminate(hab); } else { DosBeep(220, 1000); } return 0; }
Related Functions
Notes
WinWaitForShell can not be called from detached processes. So a program started by a RUN= statement in config sys, can not rely on this method to wait for the shell to be up.
A message queue is not required for the thread which calls WinWaitForShell.
The prototype and defines for this function are defined in wpobject.h, which may be inaccessible if not compiling a WPS object class. Copy the defines and the prototype verbatim into your own code or headers for use. It is exported through os2386.lib in the OS/2 Warp 4 Toolkit.
OS Version Introduced
OS/2 Warp 4