Summary List of Windows SDK Version 3.1 BugsLast reviewed: June 9, 1997Article ID: Q105508 |
The information in this article applies to:
SUMMARYThe information in this article is a summary of individual articles contained in the Microsoft Knowledge Base. These articles can be found by querying on the article's ID number or on words in the title and text. The Microsoft Knowledge Base can be accessed on the Internet (www.microsoft.com). A compiled help file containing the bug list information can be found in the Microsoft Software Library and on the Microsoft Download Service (MSDL). Download SDKBUGS.EXE, a self-extracting file, from the Microsoft Software Library (MSL) on the following services:
BUG LISTING
BUG: No WM_SETFONT to Custom ControlsArticle ID: Q70818 In the Dialog Editor, when the font of the dialog box is changed, the text of custom controls that process WM_SETFONT messages does not change.
BUG: RC Error RW1008 If NULL Entry in PATHArticle ID: Q71022 The resource compiler (RC) exits with the message "fatal error RW1008: RCPP.EXE not found."
BUG: Complex Graphics Image Partially PrintedArticle ID: Q72493 When an application uses the clipping functions to print a complex graphics image on a high resolution output device, the printed output is incomplete; portions of the image are missing.
BUG: FatalExit() Interacts Through Terminal OnlyArticle ID: Q72497 Under the debugging version of Windows, when a debugger is not in use and the FatalExit() function interacts with the user, the interaction is through a terminal connected to the AUX port and not through the console keyboard and a secondary monitor if one is installed.
BUG: MapVirtualKey() Maps Keypad Keys IncorrectlyArticle ID: Q72583 When MapVirtualKey() is passed valid virtual key codes for the keys on the numeric keypad, invalid scan codes and ASCII codes are returned.
BUG: Crash When frexp() in Small or Medium Model DLLArticle ID: Q73184 Although the C run-time function frexp() is included in the Windows version libraries for dynamic-link libraries (DLLs), when it is called from a Windows small model or medium model DLL, the application crashes.
BUG: Combo Boxes in DS_SYSMODAL Dialog BoxesArticle ID: Q74507 When a combo box with the CBS_DROPDOWN or CBS_DROPDOWNLIST style is used inside a system modal dialog box, it causes the following problem in Windows versions 3.0 and 3.1:
BUG: PostScript Driver Version 3.4 Returns Incorrect Page SizeArticle ID: Q76364 In version 3.4 of the PostScript printer driver, when the DC_PAPERSIZE index is specified in the DeviceCapabilities function, the width of the paper is returned for both the x and y coordinates in each POINT structure. This function should return the height and width of each supported paper size.
BUG: Protected-Mode GlobalCompact() Return Not Free MemoryArticle ID: Q76686 When Windows is running in one of its protected modes, the value returned by the GlobalCompact() API does not accurately reflect the amount of free memory available in the system. In enhanced mode, Windows can swap memory objects to disk. This process takes a long time relative to accessing an object in memory. Therefore, GlobalCompact() returns the amount of memory available without performing any paging. In standard mode, GlobalCompact() never reports more than 1 megabyte (MB) of memory free because of a memory allocation limit on the 80286 chip.
BUG: Text Formatting Lost When Edit Text Dialog Box UsedArticle ID: Q80143 When the Edit Text dialog box is used to edit formatted text in an application developed for Microsoft Windows for Pen Computing, formatting is lost.
BUG: Common Dialog GP-Fault on ESC Key with Mouse Button DownArticle ID: Q83009 In an application that uses the File Open or Save As dialog box from the Common Dialogs dynamic-link library (DLL), when the user opens a combo box with the mouse, holds down the left mouse button, and then presses the ESC key to close the dialog box, a GP-fault occurs.
BUG: GlobalPageLock Moves Memory Fixed by GlobalFixArticle ID: Q85329 When an application calls the GlobalPageLock() function specifying the handle to a block of memory that has been fixed in place by the GlobalFix() function, the address of the memory block can change.
BUG: GetModuleFileName Returns Relative File PathArticle ID: Q85330 When the GetModuleFileName() function returns a reference to a dynamic-link library (DLL) file, the reference is relative (not fully qualified) under the following circumstances:
BUG: System Menu Wrong for CS_NOCLOSE-Style MDI ChildArticle ID: Q85331 When an application registers a window class with the CS_NOCLOSE style and creates a multiple document interface (MDI) child window using the class, the menu items in the child window's system menu are incorrect. Specifically, the Switch To option appears where the Next option belongs. Choosing Switch To activates the Windows Task Manager.
BUG: Buttons Painted Incorrectly After Color ChangedArticle ID: Q85593 When the Colors application in the Control Panel is used to change the button shadow color to white, all push button windows are painted incorrectly. Specifically, the Button Shadow and Button Highlight colors are not painted at all.
BUG: SETCOLORTABLE Escape Disables DitheringArticle ID: Q85596 When the VGAPAL video driver is installed on a system, once an application calls the SETCOLORTABLE escape to change an entry in the color table associated with a device context, Windows does not create any dithered brushes for that device context. Instead, Windows returns the solid brush that most closely matches the requested color.
BUG: GetGlyphOutline Returns Blank BitmapArticle ID: Q85598 In the Microsoft Windows graphical environment, when an application calls the GetGlyphOutline() function to retrieve the bitmap for a glyph and the lpmat2 parameter points to a matrix that magnifies the glyph, a blank bitmap is returned.
BUG: Input Focus Lost When Control Returns From Windows HelpArticle ID: Q85896 When an application calls the WinHelp function and specifies HELP_CONTEXTPOPUP as the value for the fuCommand parameter, the input focus disappears. When the user presses the ALT key, the system menu appears for a hidden copy of the Windows Help application.
BUG: LIBENTRY.ASM Missing Include File ErrorArticle ID: Q86409 An attempt to assemble the LIBENTRY.ASM file distributed with version 3.1 of the Microsoft Windows SDK fails with the following message:
Include file not found: CONVDLL.INC. BUG: MDI More Windows Dialog Activates Wrong ChildArticle ID: Q86412 In a multiple document interface (MDI) application developed for Microsoft Windows version 3.1, when the application creates more than nine MDI child windows, the user chooses More Windows from the Window menu, and selects an MDI child window to activate from the list displayed in the Select Window dialog box, the application activates a different window.
BUG: PrintForm() Does Not Print Ink from ControlArticle ID: Q86874 When an application developed using the Visual Basic controls provided in version 1.0 of Microsoft Windows for Pen Computing calls the Visual Basic PrintForm() function, ink entered into the control does not print.
BUG: Dictionary Receives No DIRQ_SYMBOLGRAPH MessageArticle ID: Q87006 In an application developed for Microsoft Windows for Pen Computing, the dictionary function does not receive a DIRQ_SYMBOLGRAPH message for a given recognition session.
BUG: Help Compiler Hangs When .HPJ File [MAP] Section Too BigArticle ID: Q87007 Compiling a help project (HPJ) file with the Microsoft Windows Help Compiler causes the system to hang, reboot, or cause a system integrity violation.
BUG: OpenFile Function Fails on Novell Temp DriveArticle ID: Q87347 In the Microsoft Windows graphical environment, when an application uses the OpenFile() function to open a file on a Novell network temporary drive, the function returns the value HFILE_ERROR to indicate failure.
BUG: HPPCL Driver Reports SETABORTPROC Not SupportedArticle ID: Q87348 When an application for the Microsoft Windows environment sends the QUERYESCSUPPORT printer escape to the Hewlett-Packard (HP) LaserJet (HPPCL) printer driver to determine whether the SETABORTPROC escape is supported, the Escape function returns the value 0 (zero), indicating that the escape is not supported. However, an application can successfully send the SETABORTPROC escape to the HPPCL printer driver.
BUG: Color PostScript Drivers Report Incorrect DataArticle ID: Q87349 In the Microsoft Windows graphical environment, when an application creates a printer device context (DC) for a QMS ColorScript 100 printer or for a Seiko ColorPoint PS printer, and specifies the DC in a call to the GetDeviceCaps() function, each driver reports the following information about itself:
BITSPIXEL = 1 PLANES = 1 NUMCOLORS = 8At least one of these numbers is incorrect in each case.
BUG: GetGlyphOutline Returns Partial GlyphArticle ID: Q87350 In the Microsoft Windows graphical environment, when an application calls the GetGlyphOutline function to retrieve the bitmap for a rotated glyph (the lpmat2 matrix points to a nonidentity rotation matrix) and the glyph is larger than 75 pixels, the returned bitmap contains a partial, nonrotated, glyph.
BUG: Scrolling DIB DC FailsArticle ID: Q87351 When an application developed for version 3.1 of the Microsoft Windows graphical environment uses the BitBlt() or ScrollDC() functions to scroll a device context created using the DIB (device-independent bitmap) driver, the process fails with a variety of symptoms including a general protection (GP) fault, a page fault, or random data appearing in the DIB.
BUG: Setup CreateProgmanItem Does Not Overwrite ItemArticle ID: Q87493 In the Microsoft Setup Toolkit for Windows, when the setup script calls the CreateProgmanItem() subroutine to replace an existing item in a Microsoft Windows Program Manager group with cmo% set to cmoOverwrite and with szOther$ set to a nonempty string, the setup driver does not replace the existing item. Instead, it creates a new item.
BUG: BitBlt Bitmap on VGA Display Causes GP FaultArticle ID: Q87494 When an application for the Microsoft Windows environment calls the BitBlt function to copy a large (640 x 480) bitmap to the VGA screen, the application experiences a general protection (GP) fault.
BUG: HC Error 2050 from #include in Help Project File (.HPJ)Article ID: Q88126 When you are building a Help file with the Microsoft Windows Help Compiler, the process stops with the following error message:
Error 2050: line <number> of <filename>.HPJ : Invalid #include syntax BUG: No Dr. Watson Log File in Drive's Root DirectoryArticle ID: Q88127 In the Microsoft Windows operating system, when the Dr. Watson fault- logging application is installed and an application execution error occurs, the Dr. Watson's Clues dialog box does not appear. Opening the Dr. Watson application reveals that an error exists in the <logical drive>:\\DRWATSON.LOG file.
BUG: Minimized Windows Help Yields Incorrect IconArticle ID: Q88128 In a Microsoft Windows Help file, when a topic is displayed in a secondary window, the icon specified in the ICON statement in the [OPTIONS] section of the Help project (.HPJ) file does not appear when the user minimizes the Help application. This condition persists even after the user closes the secondary window.
BUG: Complex Clipping Region Might Cause UAE/GP FaultArticle ID: Q89641 Drawing lines to a memory DC containing a complex clipping region causes an unrecoverable application error (UAE) or general protection (GP) fault.
BUG: Cannot Map TT Font to Same Name PostScript Device FontArticle ID: Q92411 If a TrueType (TT) font and a PostScript (PS) printer font have the same name, the TT font cannot be mapped to a different printer font. The mapping works correctly for TT fonts whose names are different than the fonts on the printer. For example, the TrueType Symbol font can be mapped only to the Symbol font resident on the PostScript printer.
BUG: CreatePatternBrush with Large Bitmap GP FaultArticle ID: Q92531 On a machine with an 8514/a video adapter running the Microsoft Windows graphical environment with the standard 8514/a video driver, when an application calls the CreatePatternBrush() function to create a brush based on a bitmap larger than 8 pixels by 8 pixels, Windows terminates the application with an application execution error.
BUG: Superclassed Scroll Bar's Parent Not Sent WM_CTLCOLOR MsgArticle ID: Q95391 Controls normally send WM_CTLCOLOR messages to their parents so applications can modify the control background color. However, under Windows 3.0 and 3.1, when a scroll bar is superclassed, its parent is not sent WM_CTLCOLOR messages.
BUG: ProgMan DDE Reload() Command Does Not Work ProperlyArticle ID: Q95981 Attempting to use the Reload() command in Windows version 3.1 for a particular GroupName causes that Program Manager group to disappear. On the other hand, not specifying any GroupName, which supposedly instructs the Program Manager to unload all groups and reload the [Groups] section of PROGMAN.INI, causes all the groups to disappear.
BUG: PostScript Handles lfItalic Field IncorrectlyArticle ID: Q96542 In the Microsoft Windows environment, when the Windows version 3.1 PostScript printer driver is installed and an application specifies a nonzero value in the lfItalic member of a LOGFONT data structure to create an italic font, text prints in a normal (nonitalic) font.
BUG: Graphics Operations Consume GDI MemoryArticle ID: Q98058 In the Microsoft Windows graphical operating environment, when a device driver has rectangle capabilities (such as the 8514/a display driver) and an application draws many large graphic objects, memory in the GDI data segment is lost. Eventually, GDI runs out of memory and Windows crashes.
BUG: ETO_CLIPPED Does Not Clip Rotated TextArticle ID: Q99110 In Microsoft Windows version 3.1, text output with a rotated TrueType font is not clipped when the ETO_CLIPPED flag and a clipping rectangle are specified in ExtTextOut().
BUG: Application Errors From Long Text in the Dialog EditorArticle ID: Q99134 An attempt to use the Dialog Editor provided with version 3.1 of the Microsoft Windows Software Development Kit (SDK) fails and an application error occurs under either of the following circumstances:
BUG: RC /fe Switch Does Not WorkArticle ID: Q99670 Specifying the /fe filename does not create a new executable file with the specified filename. The Resource Compiler (RC) doesn't return an error message indicating there is a problem. For example, when you specify GENERIC.EXE to be renamed to BLAND.EXE with the following command line
RC /fe BLAND.EXE GENERIC.RC GENERIC.EXEBLAND.EXE is not created. Furthermore, the Resource Compiler doesn't tell you that it encountered any problems.
BUG: UngetCommChar Causes Character Loss or GP FaultsArticle ID: Q100183 An application that uses the UngetCommChar() function in Microsoft Windows version 3.1 loses characters or experiences general protection (GP) faults.
BUG: StretchDIBits() Prints Wrong Part of DIB with PSCRIPT.DRVArticle ID: Q100354 When using StretchDIBits() to print a section of a device-independent bitmap (DIB) with the Windows version 3.1 PostScript printer driver, in some cases the wrong part of the DIB is printed. When printing the entire DIB, StretchDIBits() works correctly.
BUG: OpenFile Fails When UNC Server Name Longer than 11 CharsArticle ID: Q101414 OpenFile() successfully opens files with universal naming convention (UNC) names when the server portion of the name is 11 characters or shorter, but fails to open files when the server name is longer than 11 characters. Error code number 2, "File not found," is placed in the nErrCode member of the OFSTRUCT structure passed to OpenFile.
BUG: Extra CN_RECEIVE/CN_TRANSMIT EventsArticle ID: Q101420 Using EnableCommNotification() to enable WM_COMMNOTIFY messages for CN_RECEIVE or CN_TRANSMIT events can cause spurious WM_COMMNOTIFY messages. At higher baud rates, this problem can cause a system to crash and reboot. WM_COMMNOTIFY messages are received with a 0 (zero) value for the NotifyStatus parameter. The system crashes and reboots while receiving or transmitting data.
BUG: DDESPY GP Faults Upon Return of CBR_BLOCKArticle ID: Q102549 DDESPY GP faults when a DDEML server application's dynamic data exchange (DDE) callback function returns CBR_BLOCK from a transaction of XCLASS_DATA class.
BUG: AddAtom Causes Divide by Zero ErrorArticle ID: Q103036 Calling the AddAtom function in the Windows 3.x environment with a string that begins with the pound (#) character causes the system to display the following error message in a system modal dialog:
Application Error integer divide by 0This error occurs if the first AddAtom call in the application passes a string containing a # as the first character, and passes non-numeric characters in the rest of the string. For example, the first call to AddAtom with the string "#string" will cause the error to occur.
BUG: EV_RLSDS Event Does Not Indicate Current RLSD StateArticle ID: Q103636 If SetCommEventMask() is used to enable the EV_RLSDS event, when GetCommEventMask() is called, the EV_RLSDS bit will always be 0 (zero).
BUG: Iconic MDI Application Titles Do Not Update ProperlyArticle ID: Q104137 In a Windows 3.1 multiple document interface (MDI) application, the icon title of the MDI frame window does not update when the SetWindowText function is used to change the text of the icon title.
BUG: SetDIBitsToDevice Faults on 24-BPP PM-Style DIBsArticle ID: Q104334 SetDIBitsToDevice faults inside GDI when passed a 24-bpp Presentation Manager (PM) style device-independent bitmap (DIB) on a device that supports RC_DIBTODEV.
BUG: StretchDIBits Faults on 24-BPP PM-Style DIBsArticle ID: Q104395 StretchDIBits faults inside GDI when passed a 24-bpp Presentation Manager (PM) style device-independent bitmap (DIB) on a device that supports RC_STRETCHDIB.
BUG: PALETTEINDEX Not Working for Thin Lines on HP PaintJetArticle ID: Q104962 In a Windows 3.1 printing application, calling the PALETTEINDEX macro to select a color when drawing lines 1 pixel wide results in the printer drawing black lines no matter what color index was selected from the logical palette.
BUG: SelectClipRgn Does Not Update Properly on PrinterArticle ID: Q104963 In a Windows 3.1 printing application, calling SelectClipRgn with the second parameter set to NULL to reset the clipping region to clip output to the printer page does not reset the clipping region. Clipping on the printer device context is still set to the clipping region specified in the previous call to SelectClipRgn.
BUG: SetPixel Command Doesn't Work Properly on a PS PrinterArticle ID: Q106018 In a Windows 3.1 printing application, calling the SetPixel() command on a device context created for the Windows PostScript printer driver version 3.56 or earlier causes the pixel that is drawn to be larger than expected if a line with a thickness greater than 1 was drawn previously.
BUG: System-Wide WH_DEBUG Hook Causes a GP FaultArticle ID: Q106077 Installing a system-wide hook of WH_DEBUG type causes a general protection (GP) fault in the Windows SDK version 3.1.
BUG: Resolutions for DBWIN Utility Continuous BeepingArticle ID: Q108364 While running an application that has been compiled under debug mode, with the DBWIN application running, the system may beep continuously causing the computer to hang. This can happen when running the debug version of an executable file in the debugger, or by just executing it.
BUG: Menu Bar Covered By Main Window Client AreaArticle ID: Q109539 In an application, the lower half of the menu bar is covered by the client area of the main window.
BUG: GP Fault in LoadLibrary() with C++ DLLArticle ID: Q110180 When loading a dynamic-link library (DLL) developed with Microsoft C/C++ 7.0 or Visual C++ with a large number of exports not listed in the module definition (.DEF) file, LoadLibrary() will cause a general protection (GP) fault in Kernel with the message:
Application Error MYAPP caused a General Protection Fault in module KRNL386.EXE at 0002:0E8D BUG: Problem with DrawText StatementArticle ID: Q110487 When the mapping mode is set to MM_LOMETRIC, DrawText does not properly handle the "&" (ampersand) prefix character. The underscore character that should go beneath the character that follows the "&" in the string is appearing either elsewhere in the client area or not appearing at all.
BUG: Palettes Realized in a Memory DC May Corrupt ScreenArticle ID: Q110636 On a 256-color display, when a palette is realized into a memory device context (DC), its colors are entered into the system palette, which may corrupt the current screen.
BUG: SystemParametersInfo() Does Not Modify WIN.INIArticle ID: Q110662 When a program uses the SystemParametersInfo() function with the SPI_SETMOUSEBUTTONSWAP and SPIF_UPDATEINIFILE flags to reverse the mouse buttons' orientation and modify WIN.INI, the appropiate changes to WIN.INI are not made. The next time Windows starts, the buttons are back to the default orientation.
BUG: DDEML Fails to Free Item Name HSZ on a LATEACKArticle ID: Q110664 On an advise loop started with the XTYPF_ACKREQ flag, the item name string is mistakenly removed from the global atom table after a certain period of time causing a subsequent call to DdePostAdvise() on that item name string to fail.
BUG: Ampersand in Menu Item Is Not ConvertedArticle ID: Q110713 If a menu item has tabbed or right-justified text that contains a mnemonic access character, an ampersand ("&") will appear in front of the desired access character and the character will not be underlined. If the menu item has a cascading menu associated with it, the right- justified text may partially overwrite the arrow that indicates the presence of a submenu.
BUG: SetWindowPlacement and ptMin.x or ptMax.x = -1Article ID: Q110793 Passing an X coordinate value of -1 to SetWindowPlacement causes the parameter to be ignored. If ptMinPosition.x is set to -1, SetWindowPlacement won't reset the minimized window coordinate; this is also true for ptMaxPosition.x. This was undocumented in the Windows 3.1 SDK documentation.
BUG: MDI Child Window's "Minimize" System Menu DisabledArticle ID: Q110795 After creating a new multiple document interface (MDI) child window in an MDI application, the child window's Minimize System menu option will be disabled after the following actions:
NOTE: The Minimize menu item is not disabled if the System menu is accessed through the ALT+"-" (minus) shortcut key or the mouse. Also, the Minimize menu item is not disabled if the window is moved.
BUG: MoveTo/LineTo Causes Divide by 0 ErrorArticle ID: Q111007 Using MoveTo and LineTo with a delta X or delta Y greater than 16K to draw within a complex clipping region, causes the system to display the following error message in a system modal dialog box:
Application Error integer divide by 0 BUG: Gaps Between Wedges Drawn with The Pie FunctionArticle ID: Q111008 Under certain circumstances, the Windows SDK Pie function will leave gaps between pie wedges when there should be a solid line.
BUG: DDE Warning Message: Invalid Value: -32767Article ID: Q111013 When executing a call to DdeClientTransaction() from a Microsoft Foundation Class (MFC) Library application in the debug version of Windows 3.1, the following warning message is displayed in the debug monitor:
wn CLIENTAPP CallNextHookEx + 2C: Invalid value: -32767" BUG: Nonscrolling Region in Help File Topic Does ScrollArticle ID: Q111095 A Windows Help file topic that has been formatted to provide a nonscrolling region does scroll.
BUG: Size of Owner-Draw Drop-Down Combo Box in Dialog Is WrongArticle ID: Q111096 When creating an owner-draw drop-down combo box in a dialog box, the size of the static portion is not the same as a non-owner-draw combo box in the same dialog box. WM_MEASUREITEM is not being processed, and therefore the size of the owner-draw combo box and non-owner-draw combo box should be the same.
BUG: SetWindowPos() on an Iconic Window and its CaptionArticle ID: Q111335 SetWindowPos() is called on a minimized window to either move or hide the window. When moving, the window is moved but the caption is left behind. When Hiding, the window is hidden but the caption is still visible.
BUG: R2_XORPEN Binary ROP Code Ignored for Wide PensArticle ID: Q111336 If a wide pen is selected in a device context and SetROP2() is called to set the binary raster-operation (ROP) code to R2_XORPEN, the desired effect is not achieved for ellipses, arcs, roundrects, or rectangles. The ROP is basically ignored.
BUG: Pie() and Arc() Functions Fail with a Wide PenArticle ID: Q111337 When creating a wide (multiple pixel) pen and drawing a reasonably large object, the drawing function returns 0 (zero) or does not draw anything. Choosing a thin (single pixel) pen or choosing a pen smaller than X pixels corrects the problem.
BUG: Vector Font Rotation Skewed with Non-Top-Left AlignmentArticle ID: Q111338 Vector fonts do not rotate properly with a text alignment set to other than the top left. To reproduce this problem, create a logical font for the Script vector font. Call SetTextAlign() to set the text alignment to TA_BASELINE and TA_CENTER. Rotate the font, perhaps in a whirl pattern as the FONTEST sample does. Note that the rotation axis is skewed in the northwest- southeast direction. This problem occurs in all mapping modes.
BUG: Text Truncated in Edit ControlArticle ID: Q111341 Copying and pasting a very large block of text in a multiline edit control may result in part of the text being truncated or some of the text being misaligned. This problem is more likely to happen when using a large size font instead of the default font for the edit control.
BUG: LineTo() Endcaps Misaligned with Large Pen WidthArticle ID: Q111576 If LineTo() is used with a wide pen selected, the endcaps are misaligned with the line; they are skewed at an angle relative to the line.
BUG: Rotated TrueType Font Repaints Many TimesArticle ID: Q111579 Drawing a rotated TrueType font into a nonrectangular clipping region causes the font to be drawn many (perhaps a hundred) times.
BUG: Some ROP Codes Cause Inconsistent Polygon() Line SegmentsArticle ID: Q111580 When a ROP (raster operation) such as R2_XORPEN or R2_NOT is used with the Polygon() function, the line segments may be inconsistent; they may appear highlighted or ragged when they should appear smooth. This may be more apparent when the polygon is filled with a gray brush (80h).
BUG: Pie() Vertex Not Drawn Completely with Wide PenArticle ID: Q111581 When calling Pie() with a wide pen selected, the vertex of the pie slice is not drawn correctly. The wide lines do not meet at the vertex.
BUG: Arc() Not Drawn Completely with a Wide PenArticle ID: Q111582 When calling Arc() with a wide pen selected, occasionally there will be an unfilled line in the third quadrant of the arc.
BUG: Occasional Gap Between Adjacent Pie() WedgesArticle ID: Q111584 If the Pie() function is used to draw two pie wedges with the same bounding rectangle and the end point of the first wedge is equal to the start point of the second wedge, there can be a gap between adjacent wedges. This gap only occurs occasionally, and with certain pie sizes and start-and-end points.
BUG: GetRasterizerCaps Returns Zero When TrueType Is DisabledArticle ID: Q111586 When TrueType is disabled from the Control Panel, GetRasterizerCaps() returns zero (failure) instead of clearing the TT_ENABLED flag in the RASTERIZER_STATUS structure.
BUG: _lread() Functions Incorrectly When No Floppy in DriveArticle ID: Q111587 Using the function _lread() to read a floppy disk when there is no disk in the floppy drive results in the System error-message box "Cannot Read from Drive..." with Retry and Cancel buttons. If the Cancel button is clicked, _lread() returns, indicating incorrectly that it read the number of bytes requested. Instead, it should return -1, indicating failure.
BUG: OpenFile() Doesn't Handle Forward Slash ("/") CharacterArticle ID: Q111588 OpenFile() does not correctly handle paths beginning with a forward slash character ("/") (for example, as in "x:/").
BUG: Brush Misaligned in PaintRgn()Article ID: Q111589 In a mapping mode other than MM_TEXT with the background mode set to TRANSPARENT, when calling PaintRgn() to paint a nonrectangular region with a hatched brush, the brush is misaligned.
BUG: Some TrueType Character Pairs Run Together on VGAArticle ID: Q111590 On some displays such as the standard VGA display that ships with Windows 3.1, certain TrueType font character pairs do not have any space between them and run together. For example, when using the Arial TrueType font at a point size of 14 or greater, the characters "f7" don't have any space between them.
BUG: IsBadStringPtr() Reports Bad String as ValidArticle ID: Q111591 Under a particular condition, IsBadStringPtr() will report that a bad string is valid. If the pointer passed to IsBadStringPtr() refers to a block of memory of size 0xFFFF and is filled with all nonzero data, IsBadStringPtr() returns 0.
BUG: DeleteObject() Generates Debug Errors in WEPArticle ID: Q111592 Freeing GDI objects in the Windows Exit Procedure (WEP) of a dynamic-link library (DLL) will generate errors from the debug version of Windows 3.1. The errors are incorrectly generated if the application has an implicit link to the DLL and the application is terminating.
BUG: DPMI Function 0203h Does Not Report ErrorArticle ID: Q111593 Using the DOS Protected Mode Interface (DPMI) function 0203h (set processor exception handler vector) to set an exception handler does not report an error (carry flag set) if the selector:offset pair is invalid.
BUG: Dr. Watson Fails to Write Log FileArticle ID: Q111596 Assume that the drive for the Windows directory is substituted using the MS- DOS SUBST command. For example:
subst w: c:\win31Under this condition, Dr. Watson fails to write to its log file, either the default DRWATSON.LOG or any other changed log filename. In fact, when the Dr. Watson icon is double-clicked, the message box that follows shows the log filename as W:\\DRWATSON.LOG, which is incorrect.
BUG: Debug Kernel Ignores Fatal Exits When OutputTo=Article ID: Q111597 By default, the Windows debugging kernel sends its debug messages to the AUX device (which maps to the COM1 port). When the debug output from the Windows kernel is redirected by using OutputTo=NUL or OutputTo=<filename> in the [DEBUG] section of the SYSTEM.INI file, Fatal Exit messages are ignored automatically.
BUG: Opaque Rectangle Too Small on Rotated TrueType FontsArticle ID: Q111598 When a TrueType font is rotated, the text background is too small to completely enclose the glyphs; the same text unrotated is enclosed.
BUG: Character Background Is Not Painted CorrectlyArticle ID: Q111599 When text is displayed on a window with a background different than the background of the DC (used to display the text), slivers will display between the characters. The slivers seem to occur only between certain character combinations, such as "Th". This problem is only evident with some drivers, such as the standard VGA.
BUG: Polygons Drawn with Pens of Odd Width (> 5) MisalignArticle ID: Q111600 When drawing frames with Polygon(), if the pen width results in an odd number of pixels (and therefore cannot be centered exactly on its coordinates), the extra pixel of width goes up and/or to the left for widths greater than 5 pixels, whereas it correctly goes down and to the right for widths less than or equal to 5 pixels.
BUG: Misleading Default Pushbutton PaintingArticle ID: Q111601 Under some conditions in Windows 3.0 and Windows 3.1, more than one pushbutton (or Command button)(style BS_PUSHBUTTON) may be painted with the dark border used to designate a default pushbutton. A default pushbutton is the pushbutton designated to be activated when the user presses the ENTER key.
BUG: GetPrivateProfileInt() May Not Read Correct ValueArticle ID: Q111602 If GetPrivateProfileInt() is used to read a number that has preceding white space, the value returned may be incorrect. For example, if the .INI file entry is as follows, GetPrivateProfileInt() may return 0 (zero):
MyValue= 5 BUG: GlobalCompact() May Return an Inaccurate ValueArticle ID: Q111603 GlobalCompact() may return a very inaccurate value when paging is enabled.
BUG: Explicitly Loaded Modules Not Removed from MemoryArticle ID: Q111604 Modules that are loaded via LoadModule() are not removed from memory when a GP (general protection) fault causes the application that loaded it to terminate. You must exit Windows to unload the module.
BUG: LoadResource() GP Faults When Passed an Invalid HRSRCArticle ID: Q111605 Passing an invalid handle as the HRSRC parameter for LoadResource() may result in a general protection (GP) fault.
BUG: ROP2 Code Applied Incorrectly in Pie() FunctionArticle ID: Q111606 When calling the Windows SDK function Pie() using a ROP2 code other than the default R2_COPYPEN, and using a pen with a width greater than 1 (one), you may notice that the pie border is not drawn correctly.
BUG: LB_SETTOPINDEX Doesn't Conform to DocumentationArticle ID: Q111647 Code written to handle a return of LB_ERR does not function properly. The online documentation for LB_SETTOPINDEX states that the result is LB_ERR if an error occurs. However, when an error occurs, LB_SETTOPINDEX returns with a value of 0 (zero) rather than LB_ERR.
BUG: EM_CANUNDO Returns Zero After EM_REPLACESELArticle ID: Q111648 EM_CANUNDO returns 0 (zero) after text in an edit control has been set or replaced using EM_REPLACESEL. EM_CANUNDO should return nonzero, and EM_UNDO should undo the change.
BUG: Left Part of Character Is Clipped with ExtTextOut/TextOutArticle ID: Q111649 The left part of a TrueType character such as an italic "f" is clipped.
BUG: DrawFocusRect() Doesn't Work in MM_LOMETRIC ModeArticle ID: Q111650 If DrawFocusRect() is called when the mapping mode is MM_LOMETRIC, no rectangle is drawn. DrawFocusRect() is documented to take logical units and works properly in MM_TEXT mapping mode. However, if the mapping mode is changed to MM_LOMETRIC, as in the following code fragment, DrawFocusRect() called with an appropriate rectangle (logical units) does not work. Calling Rectangle() with the same rectangle does work.
case WM_PAINT: hDC = BeginPaint(hWnd, &ps); SetRect(&rc, 0,0,100,100); DrawFocusRect(hDC, &rc); // Works as documented. SetMapMode(hDC, MM_LOMETRIC); SetRect(&rc, 1,-200,100,-300); DrawFocusRect(hDC, &rc); // Doesn't do anything. Rectangle(hDC, rc.left, rc.top, rc.right, rc.bottom); // Works EndPaint(hWnd, &ps); break; BUG: GetGlyphOutline() with GGO_BITMAP Fails with Large ScaleArticle ID: Q111651 Calling GetGlyphOutline() for a bitmap and passing a large X or Y scaling factor in the transformation matrix causes the return value to not properly track the bitmap size. For example, Times New Roman Regular 72 point "1", with a scaling factor of 4.0 in eM11 of the transformation matrix, returns a black box of 100,64. This requires a bitmap of at least 800 bytes but GetGlyphOutline() only returns 256. The native buffer is returned with no problems.
BUG: Edit Controls and WS_CLIPCHILDREN Function DifferentlyArticle ID: Q111652 Unnecessary painting is done when an edit control window is created with the WS_CLIPCHILDREN style bit set.
BUG: Printer Driver Receives "bigfonts" When Not SupportedArticle ID: Q111653 If the installed display driver of a Windows 3.1 installation supports raster fonts that are greater than 64K, then any printer driver on the system is expected to support the fonts, even if [GetDeviceCaps(hPrnDC, RASTERCAPS) & RC_BIGFONT] returns NULL for the printer driver.
BUG: StretchDIBits Not Correctly Stretching RLE DIBs w/ JumpsArticle ID: Q111654 Calling StretchDIBits() to stretch an RLE device-independent bitmap (DIB) with jumps in it results in random garbage being displayed.
BUG: StretchBlt() Does Not Perform Palette TranslationsArticle ID: Q111729 Normally, the StretchBlt() function performs a palette translation when the destination and source bitmaps do not contain the same color format or palette. When the destination rectangle is the exact size of the source rectangle (no stretching is performed), the palette translation is not performed.
BUG: TabbedTextOut in Metric Mapping Mode Working IncorrectlyArticle ID: Q111862 When using TabbedTextOut() in one of the metric mapping modes, a rectangle is displayed in the current background color above the text that is displayed. This rectangle is the width and height of the line of text. The text is displayed with a background that is the current background color. However, the space between the text (where the tab is) is not displayed with a background that is the current background color.
BUG: Driver vs. GDI-Simulated Styled Lines Don't MatchArticle ID: Q111863 Lines drawn using the same styled pen may appear slightly different. For example, when drawing styled lines with the R2_XORPEN raster operation to draw and remove lines quickly, some pixels may be left behind.
BUG: GP Fault When Drawing on a Memory-Based DCArticle ID: Q111864 A general protection (GP) fault can occur on a memory-based device context (DC) when a bitmap previously selected in the DC is selected out and another is selected in. This is a common problem when using the SaveDC() and RestoreDC() functions with a memory DC.
BUG: StretchBlt()/StretchDIBits() Fail with Very Large StretchArticle ID: Q111865 If the stretching factor is large, for example, when stretching from a very small to a large height, StretchDIBits() and StretchBlt() may return 0 (zero) and display nothing. The same bitmap with a smaller stretch is displayed correctly.
BUG: Outline of a Pie() Slice May Not Be Completely SmoothArticle ID: Q111866 The outline of a Pie() slice may not be completely smooth.
BUG: GetTimerResolution not in LIBW.LIBArticle ID: Q112386 When using the Windows Application Programming Interface (API) GetTimerResolution() function, you may get unresolved externals from the linker.
BUG: General Protection Fault When Accessing an HFONTArticle ID: Q114013 On rare occasions, in low memory situations or after calling the function GlobalCompact(-1), a general protection fault (GPF) may occur when calling SelectObject() to select a handle to a logical font (HFONT) into a device context. This happens when the application caches the handle to the logical font.
BUG: DDESPY and Ctrl Key Cause GP Fault in Windows NTArticle ID: Q114530 The 16-bit DDESpy utility, supplied with the Windows SDK version 3.1 and Visual C++ for Windows version 1.5, can cause a general protection (GP) fault in KRNL386.EXE when the CTRL key is pressed. This problem only occurs when running DDESPY under Windows NT version 3.1.
BUG: Caching GDI Objects Causes Temporary GDI Resource LeakArticle ID: Q118471 The amount of free GDI resources decreases as an application prints, especially over the course of several print jobs. NOTE: The information in this article also applies to the screen; however, this issue more often impacts applications when printing, and therefore that is the specific subject of this article.
BUG: MCIWndClass Popup Window Palette FlashesArticle ID: Q121330 An MCIWndClass popup window realizes its logical palette in the foreground instead of the background as requested in a call to MCIWndRealize() with the fBkgnd flag set to TRUE. The foreground palette realization is seen as a flash. The following code demonstrates the setting that results in the flash. The flash occurs when the popup window receives the input focus from another application using a different logical palette.
hwndPanel = MCIWndCreate(hwndParent, hInst, MCIWNDF_NOAUTOSIZEMOVIE | MCIWNDF_NOMENU | WS_OVERLAPPED | WS_BORDER | WS_CAPTION | WS_SYSMENU | WS_POPUP, NULL); MCIWndOpen(hwndPanel, fname, 0); MCIWndRealize(hwndPanel, TRUE); SetWindowPos(hwndPanel, HWND_TOP, X, Y, 0, 0, SWP_NOSIZE | SWP_DRAWFRAME | SWP_SHOWWINDOW); MCIWndPlay(hwndPanel); |
Keywords : GenSDK kblist kbbuglist kbfile kbref kbtlc
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |