Knowledge Base

BUG: Win32s 1.25a Bug List

PSS ID Number: 130138

Article Last Modified on 2/15/2002


The information in this article applies to:


This article was previously published under Q130138

SUMMARY

The following is a list of the known bugs in Win32s version 1.25 at the time of its release.

  • Incorrect context at EXIT_PROCESS_DEBUG_EVENT.
  • Progman gets restored when debugger app exits.
  • Using StartDoc() does not produce document from printer.
  • EM_GETWORDBREAKPROC return code is incorrect.
  • Int 3 cannot be trapped via Structured Exception Handling (SEH) on Win32s.
  • Win32s does not open all files in RAW mode, as Windows NT does.
  • Cannot do ReadProcessMemory (RPM) on memory that has a hardware breakpoint set on it.
  • C run-time functions getdcwd()/getcwd() do not work.
  • GetFullPathName() returns the root directory for any drive that is not the current drive.
  • PlayMetaFileRecord()/EnumMetaFile() contains incorrect lpHTable.
  • Size of memory mapped files is rounded to a whole number of pages, meaning that the size is a multiple of 4096 bytes.
  • Functions chdrive() and SetCurrentDirectory() fail on PCNFS network drives.
  • GetExitCodeProcess() does not return exit codes for 16-bit Windows-based applications.
  • Memory passed to Netbios() must be allocated with GlobalAlloc().
  • biSizeImage field of BITMAPINFOHEADER is zero.
  • CreateFile() on certain invalid long filesnames closes Windows.
  • Only the first CBT hook gets messages.
  • Most registry functions return the Windows 3.1 return codes, not the Windows NT return codes.
  • GlobalReAlloc(x,y,GMEM_MOVEABLE) returns wrong handle type.
  • GetVolumeInformation() fails for Universal Naming Convention (UNC) root path.
  • ResumeThread while debugging writes to debuggee stack.
  • GetShortPathName() doesn't fail with a bad path, as it does on Windows NT.
  • CreateDirectory()/RemoveDirectory() handle errors differently than on Windows NT.
  • SetCurrentDirctory() returns different error codes than on Windows NT.
  • FindText() leaks memory.
  • Win32s doesn't support language files other than default (l_intl.nls).
  • spawnl does not pass parameters to an MS-DOS-based application.
  • Win32s does not support forwarded exports.
  • GetDlgItemInt() only translates numbers <= 32767 (a 16-bit integer).
  • Changing system locale in Win32s will not have an effect until Win32s is loaded again, unlike on Windows NT.
  • Module Management APIs missing ANSI to OEM translation.
  • When WS_TABSTOP is passed to CreateWindow(), this forces a WS_MAXIMIZEBOX.
  • Stubbed API FindFirstFileW() does not return -1 to indicate failure.
  • SearchPath() and OpenFile() don't work properly with OEM chars in the filename.
  • GetSystemInfo() doesn't set correct ProcessorType for the Pentium.
  • FormatMessage() doesn't set last error.
  • FormatMessage() fails with LANG_NEUTRAL | SUBLANG_DEFAULT, but works with LANG_ENGLISH | SUBLANG_ENGLISH_US.
  • After calling CreateFile() on a write-protected floppy GetLastError() returns 2, instead of 19, as it should.
  • VirtualProtect() with anything other than PAGE_NOACCESS, PAGE_READ, OR PAGE_READWRITE yields unpredictable page protections.
  • COMPAREITEMSTRUCT, DELETEITEMSTRUCT, DRAWITEMSTRUCT, AND MEASUREITEMSTRUCT incorrectly sign-extend fields.
  • GetWindowTextLength() & GetWindowText() incorrectly sign-extend the return value.
  • MoveFile() fails on Windows for Workgroups when the source is remote and the destination is local.

Additional query words: 1.25

Keywords: KB130138
Technology: kbWin32s125a kbWin32sSearch