[comp.windows.ms.programmer] Undoc'd functions in Windows 3.0 SDK

risto@tuura.UUCP (Risto Lankinen) (11/22/90)

Hi!

There is a number of 'internal' functions in Windows KERNEL.EXE, USER.EXE
and GDI.EXE .  If you make a listing of the LIBW.LIB with the LIB.EXE , you
will find many more functions than in the SDK Reference.  No doubt most of
them are useful only internally by Windows, but there are some cookies, too!

The only thing needed to use them is to declare them in the program or in
an include file (say, <wcookies.h>) .  No need to import them implicitly,
if (as always) the LIBW.LIB is being used, and their import info is there.

There's one problem remaining: to find the proper declarations for the useful
ones.  Here are a few I've been checking out:

*DISCLAIMER*  The user of this information agrees, that any problem or damage
originating thereof is in his/her own responsibility alone.  I will *not* be
obliged to anything should such situation occur, nor were this information
found inaccurate.  If you check out for more, please consider that you may
screw up your system pretty bad if you inadvertedly do what you shouldn't.

--- Cut here for WCOOKIES.H ---
void FAR PASCAL CascadeChildWindows( HWND );
void FAR PASCAL TileChildWindows( HWND );
BOOL FAR PASCAL IsUserIdle( void );
int FAR PASCAL RSin( int,int );
int FAR PASCAL RCos( int,int );
--- Cut here, too ---

The three first are self-explanatory.  The trigonometric functions seem to
be used by the GDI.EXE for circles, round corners, etc:

RSin(int iScale,int iAngle) returns 'iScale*SIN(iAngle/10)' where iAngle
   is in degrees, and must be between 0..3600
RCos(int iScale,int iAngle) returns 'iScale*COS(iAngle/10)' where iAngle
   is in degrees, and must be between 0..3600

Example:  RSin( 1234,300 ) is 1234 times the sine of 30 degree angle, 0.5 ,
or 0.5*1234 = 617 .

I would like to receive mail, if you have any information of the other such
functions in Windows.

Terveisin: Risto Lankinen
-- 
Risto Lankinen / product specialist ***************************************
Nokia Data Systems, Technology Dept *  2                              2   *
THIS SPACE INTENTIONALLY LEFT BLANK * 2 -1 is PRIME!  Now working on 2 +1 *
replies: risto@yj.data.nokia.fi     ***************************************

pmoore@hemel.bull.co.uk (Paul Moore) (11/26/90)

Presumably IsUserIdle is used to determine if the user is a couch potato .

Plus, is TileChildWindows used if you want to confine your kids to their
rooms?

Sorry couldn't resist :->