Microsoft KB Archive/155861

{|
 * width="100%"|

DOC: Errors in Win32s Compatibility

 * }

Q155861

-

The information in this article applies to:


 * Microsoft Win32s version 1.30c

-

SUMMARY
The following Win32 APIs are listed in the Win32 Programmer's Reference as being supported under Win32s. This is incorrect. These Win32 APIs are not supported under Win32s:


 * mouse_event
 * CreateDIBPatternBrushPt
 * GetBinaryType

The following Win32 APIs are not listed in the Win32 Programmer's Reference as being supported under Win32s. This is incorrect. These Win32 APIs are supported under Win32s:


 * There are none identified yet for 1.30c.

In addition, all of the BS_ button styles are marked as not supported under Win32s. However, Win32s supports all of the button styles that Windows 3.1 supports.

MORE INFORMATION
The following Win32 APIs and CRT (C Run-time) routines are supported under Win32s, with the restrictions noted.

Function                       Associated Restriction

=
============================================================== CreateFile                     FILE_FLAG_NO_BUFFERING, FILE_FLAG_WRITE_THROUGH, FILE_FLAG_OVERLAPPED, FILE_DELETE_ON_CLOSE, FILE_ATTRIBUTE_COMPRESSED, FILE_FLAG_RANDOM_ACCESS, FILE_FLAG_SEQUENTIAL_SCAN, FILE_FLAG_BACKUP_SEMANTICS, FILE_FLAG_POSIX_SEMANTICS and all SECURITY_* flags are not supported.

FILE_FLAG_SEQUENTIAL_SCAN and FILE_FLAG_RANDOM_ACCESS are only for optimization purposes, so no functionality limitation is related with these flags.

lpSecurityAttributes and hTemplateFile parameters are ignored.

Passing dwShareMode=0 opens the file in                               compatibility mode, not in exclusive mode. --- CreateFileMapping              SEC_COMMIT is supported, but not SEC_IMAGE, SEC_NOCACHE or SEC_RESERVE.

PAGE_WRITECOPY is not supported.

lpFileMappingAttributes parameter is                               ignored. The size of named shared memory is limited by Windows memory. --- CreateDIBitmap                 DIB_PAL_INDICES CreateDIBPatternBrush          DIB_PAL_PHYSINDICES GetDIBits                      DIB_PAL_LOGINDICES   are not supported. SetDIBits SetDIBitsToDevice StretchDIBits --- CreateHalftonePallette       Is supported only in 1.30 and later. --- CreatePolyPolygonRgn           The polygon must be closed. --- ExtEscape                    Ignores the cbOutput parameter. --- GetDCOrgEx                   Thunked to GetDCOrg. Does not return any error codes --- GetDCOrg - A Win16 API that is not supported by Win32s. This is because of compatibility reasons. --- GdiFlush                     Does nothing. --- SetGraphicsMode              Does nothing and fails unless GM_COMPATIBLE is specified --- SetGraphicsMode              Always returns GM_COMPATIBLE. --- CreateProcess                  Handle inheritance is not supported. Only creation flags supported are DEBUG_PROCESS and DEBUG_ONLY_THIS_PROCESS. The only priority supported is                               NORMAL_PRIORITY_CLASS. The security attributes are ignored. --- GetFileInformationByHandle     ftCreationTime, ftLastAccessTime, dwVolumeSerialNumber, nFileIndexHigh, and nFileIndexLow are all 0. --- GetFileTime                    Only lpLastWriteTime is supported. SetFileTime --- GetPrivateProfileString        lpszSection parameter cannot be NULL. GetProfileString --- GetSystemMetrics               SM_CMOUSEBUTTONS is not supported. --- GetSystemPaletteEntries        The fourth parameter cannot be NULL. --- GetVolumeInformation           Volume ID is not supported. --- OpenProcess                    Settings for fdwAccess and fInherit are ignored. In the implementation, fdwAccess=PROCESS_ALL_ACCESS and fInherit=TRUE. --- PeekMessage                    hWnd cannot be -1. --- PlaySound                      SND_ALIAS, SND_FILENAME, and SND_NOWAIT are not supported. --- RegisterClassEx                Only partially implemented, similar to NT. GetClassInfoEx                 Both APIs ignores the small icon that is                                associated with the window class. Hence, the hIconSm member of the WNDCLASSEX structure is always set to NULL. --- RegSetValueEx                  Only supports the REG_SZ entries. --- SetClipboardData               Use only a global handle. --- SetWindowsHookEx               dwThreadId parameter is ignored. --- signal                         SIGBREAK is not supported. --- spawn                          P_WAIT is not supported. --- WaitForDebugEvent              Any dwTimeOut other than 0 is treated as                                INFINITE. --- WNetAddConnection              Password cannot be NULL, but can be "". Additional query words: kbdss docbug

Keywords : kbdocerr kbref kbOSWin32s

Issue type :

Technology : kbWin32sSearch