The MASM Forum

Miscellaneous => The Orphanage => Topic started by: Magnum on January 16, 2015, 09:21:38 AM

Title: undocumented exports in user32.dll
Post by: Magnum on January 16, 2015, 09:21:38 AM
Why are there undocumented exports in user32.dll ?

Are they items that M.S. did not get around to developing ?

I have Documented/Partially documented the undocumented exports of windows XP user32 DLL file. There are still quite a few that are a total mystery but it may be useful for people searching.

For the sake of search engines and people searching for function input and output params:

        WCSToMBEx
        CharNextExA
        CharNextExW
        CharPrevExA
        CharPrevExW
        SetSysColorTemp
        SetSysColorsTemp
        EditWndProcA
        EditWndProcW
        GetAppCompatFlags
        GetAppCompatFlags
        SetLogonNotifyWindow
        GrayString
        QuerySendMsg
        RegisterLogonProcess
        RegisterServicesProcess
        IMPGetIMEA
        IMPQueryIMEA
        IMPSetIMEA
        KillSystemTimer
        LoadKeyboardLayoutEx
        LoadRemoteFonts
        LoadLocalFonts
        LoadRemoteFonts
        LockWindowStation
        MBToWCSEx
        MB_GetString
        MenuWindowProcW
        MessageBoxTimeoutA
        MessageBoxTimeoutW
        PrivateExtractIconEx
        PrivateExtractIcons
        PrivateExtractIconsA
        WinHelpA
        WinHelpW
        GetTaskmanWindow
        SetTaskmanWindow
        SetSystemMenu
        SetSystemTimer
        SetMessageQueue
        SetProgmanWindow
        GetInputDesktop
        GetInternalWindowPos
        GetProgmanWindow
        UINT GetTabbedTextExtent
        ScrollChildren
        SetConsoleReserveKeys
        SetCursorContents
        SetDebugErrorLeve
        SetDeskWallpaper
        SetInternalWindowPos
        UserRegisterWowHandlers
        WINNLSGetEnableStatus
        WINNLSGetIMEHotkey
        UserClientDllInitialize
        CascadeChildWindows
        ChangeClipboardChain
        CharUpperBuffA
        CharUpperBuffW
        ClientThreadSetup;
        CreateDialogIndirectParamAorW
        DdeGetQualityOfService
        SetShellWindow
        SetShellWindowEx
        setSysColors
        SetWindowStationUser
        ShowStartGlass
        SoftModalMessageBox
        TileChildWindows
        UnlockWindowStation
        UpdatePerUserSystemParameters
        UserClientDllInitialize
        DialogBoxIndirectParamAorW
        DlgDirSelectExW
        DlgDirSelectExA
        DragObject
        DrawCaptionTemp
        DrawFrame
        DrawMenuBarTemp
        RegisterSystemThread
        RegisterTasklist
Title: Re: undocumented exports in user32.dll
Post by: Vortex on January 17, 2015, 06:34:25 AM
Probably undocumented for internal usage.
Title: Re: undocumented exports in user32.dll
Post by: Tedd on January 20, 2015, 05:18:56 AM
Many are left-overs from Windows 3.
They're still there for backwards compatibility, but are deprecated because they shouldn't be used in new code.

Many others are documented, but not with the exact name given, e.g. CharNextExA and variants fall under CharNext (http://msdn.microsoft.com/en-us/library/windows/desktop/ms647469%28v=vs.85%29.aspx).

And some actually are documented, so I'm not sure how you got this list.
Title: Re: undocumented exports in user32.dll
Post by: Vortex on January 20, 2015, 05:41:57 AM
Here is an interesting link :

http://undocumented.ntinternals.net/
Title: Re: undocumented exports in user32.dll
Post by: Magnum on January 20, 2015, 06:22:50 AM
Quote from: Tedd on January 20, 2015, 05:18:56 AM
Many are left-overs from Windows 3.
They're still there for backwards compatibility, but are deprecated because they shouldn't be used in new code.

Many others are documented, but not with the exact name given, e.g. CharNextExA and variants fall under CharNext (http://msdn.microsoft.com/en-us/library/windows/desktop/ms647469%28v=vs.85%29.aspx).

And some actually are documented, so I'm not sure how you got this list.

Thanks.

Someone probed user32.dll to get that list.