[comp.os.os2.misc] taking control at startup

papa@pollux.usc.edu (Marco Papa) (01/29/91)

I am trying to fins out if there is a way so that my own application can be
started up as the first program and takes "control" of the system.  Microsoft 
tells me that running my program as a shell (without PM) is a no-no.  So one
possibility could be to install a C program that grabs the mouse and simulates
the selection of my program which then kind of takes over the screen.  I also
should make sure that the Talk list selector is not available (how?). 
Anyway, is any of the above possible?

-- Marco

-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
"Xerox sues somebody for copying?" -- David Letterman
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

yozzo@ibm.com (02/11/91)

> Nntp-Posting-Host: pollux.usc.edu
> Originator: papa@pollux.usc.edu
>
> I am trying to fins out if there is a way so that my own application can be
> started up as the first program and takes "control" of the system.  Microsoft
> tells me that running my program as a shell (without PM) is a no-no.  So one
> possibility could be to install a C program that grabs the mouse and simulates
> the selection of my program which then kind of takes over the screen.  I also
> should make sure that the Talk list selector is not available (how?).
> Anyway, is any of the above possible?
>
> -- Marco
>
> --
One possibility is to create a SYSMODAL window.
Using FS_SYSMODAL and FCF_SYSMODAL in a dialog definition
should allow you to create a Window that does not yield to only windows.


An example DLG file is the following:
DLGTEMPLATE IDX_1100 LOADONCALL MOVEABLE DISCARDABLE
BEGIN
    DIALOG "Thinking...", IDX_1100, 9, 44, 361, 136, FS_NOBYTEALIGN | FS_DLGBORDER | FS_ICON      | FS_SYSMODAL
                WS_VISIBLE | WS_CLIPSIBLINGS | WS_SAVEBITS ,
                FCF_TITLEBAR | FCF_MINMAX | FCF_ICON | FCF_SYSMODAL
    BEGIN
        CONTROL "", IDX_1000, 28, 91, 60, 60, WC_BUTTON, BS_USERBUTTON |
                WS_TABSTOP | WS_VISIBLE

        CONTROL     "",   IDX_1001    , 2 , 72  , 361 , 8 , WC_STATIC, SS_TEXT | DT_LEFT | WS_VISIBLE
    END
END