Microsoft KB Archive/89372

= INFO: List of Articles for Win32 SDK User Programming Issues =

ID: Q89372

The information in this article applies to:


 * FastTips for the Microsoft Win32 Software Development Kit (SDK) versions 3.1, 3.5, 3.51, 4.0

INSTRUCTIONS
Microsoft FastTips is available 24 hours a day, 7 days a week, from a touch-tone telephone. To order items from this catalog, first select the items you want to receive, noting the five- to six-digit number of the Item ID shown below for each item, and then:


 * Dial the toll-free FastTips number (800) 936-4300.
 * When prompted, select the Win32 Software Development Kit.
 * Press one (1) on your phone keypad to select Express Order Service.
 * When prompted, select the delivery method, fax.
 * When prompted, enter your three-digit area code and seven-digit fax number on your phone keypad.
 * When prompted, enter the number of the Item ID and press #, for up to five items.

When finished, simply hang up. If you have problems receiving a fax, please call (425) 635-3105.

ARTICLE LISTING
ITEM ID ARTICLE TITLE                                               PAGES Q 10841 Using Extra Fields in Window Class Structure                    1 Q 11337 PRB: Dialog Box and Parent Window Disabled                      1 Q 11365 Creating a List Box Without a Scroll Bar                        1 Q 11570 Translating Client Coordinates to Screen Coordinates            1 Q 11590 Windows Dialog-Box Style DS_ABSALIGN                            1

Q 11606 Use of Allocations w/ cbClsExtra & cbWndExtra in Windows        1 Q 11619 Panning and Scrolling in Windows                                1 Q 11654 Clipboard Memory Sharing in Windows                             1 Q 12118 Customizing a Pop-Up Menu                                       1 Q 12190 Placing a Caret After Edit-Control Text                         1

Q 12273 Using SendMessage As Opposed to SendDlgItemMessage          1 Q 19963 BeginPaint Invalid Rectangle in Client Coordinates            1 Q 20011 Length of STRINGTABLE Resources                                 1 Q 24252 SetClipboardData and CF_PRIVATEFIRST                          1 Q 24646 Captions for Dialog List Boxes                                  1

Q 26234 PRB: Windows REQUEST Function Not Working With Excel            1 Q 29961 Location of the Cursor in a List Box                            1 Q 31073 CS_SAVEBITS Class Style Bit                                     1 Q 31668 The Clipboard and the WM_RENDERFORMAT Message                   1 Q 32519 Using SetClassLong Function to Subclass a Window Class          1

Q 32785 Placing Text in an Edit Control                                 1 Q 33161 Using the GetWindow Function                                  1 Q 33690 PRB: Cannot Alter Messages with WH_KEYBOARD Hook                1 Q 34611 Allocating and Using Class and Window Extra Bytes               2 Q 35100 Method for Sending Text to the Clipboard                        3

Q 35605 GetInputState Is Faster Than GetMessage or PeekMessage          1 Q 35930 Detecting Keystrokes While a Menu Is Pulled Down                1 Q 38901 Case Sensitivity in Atoms                                       1 Q 39480 Graying the Text of a Button or Static Text Control             1 Q 40669 Posting Frequent Messages Within an Application                 2

Q 43596 GetClientRect Coordinates Are Not Inclusive                   1 Q 45702 GetCurrentTime and GetTickCount Functions Identical             1 Q 45714 How To Pass Numbers to a Named Range in Excel through DDE       1 Q 47674 Placing Double Quotation Mark Symbol in a Resource String       1 Q 57808 SizeofResource Rounds to Alignment Size                       1

Q 57959 Switching Between Single and Multiple List Boxes                1 Q 61980 MAKEINTATOM Does Not Return a Valid LPSTR                     2 Q 62068 How to Ignore WM_MOUSEACTIVATE Message for an MDI Window        1 Q 64296 Broadcasting Messages Using PostMessage & SendMessage       1 Q 64327 Owner-Draw: Overview and Sources of Information                 2

Q 64504 Multicolumn List Boxes in Microsoft Windows                     1 Q 64758 Showing the Beginning of an Edit Control after EM_SETSEL        1 Q 65256 Changing How Pop-Up Menus Respond to Mouse Actions              2 Q 65257 Reasons Why RegisterClass and CreateWindow Fail             2 Q 65881 The Parts of a Windows Combo Box and How They Relate            1

Q 65882 WindowFromPoint Caveats                                       2 Q 65883 Action of Static Text Controls with Mnemonics                   2 Q 66244 How to Keep a Window Iconic                                     1 Q 66365 Processing CBN_SELCHANGE Notification Message                   1 Q 66479 Preventing Screen Flash During List Box Multiple Update         1

Q 66668 Multiline Edit Control Does Not Show First Line                 1 Q 66943 Determining the Topmost Pop-Up Window                           1 Q 66944 Efficiency of Using SendMessage Versus SendDlgItemMessage       1 Q 66946 Disabling the Mnemonic on a Disabled Static Text Control        1 Q 66947 Removing Focus from a Control When Mouse Released Outside       2

Q 67166 Process WM_GETMINMAXINFO to Constrain Window Size               1 Q 67210 Creating a Multiple Line Message Box                            1 Q 67248 Using UnregisterClass When Removing Custom Control Class        1 Q 67293 Some CTRL Accelerator Keys Conflict with Edit Controls          3 Q 67655 Changing/Setting the Default Push Button in a Dialog Box        1

Q 67688 Retrieving Handles to Menus and Submenus                        1 Q 67715 Owner-Draw Buttons with Bitmaps on Non-Standard Displays        1 Q 67716 Assigning Mnemonics to Owner-Draw Push Buttons                  1 Q 67722 Multiline Edit Control Wraps Text Different than DrawText       2 Q 68115 Creating a List Box with No Vertical Scroll Bar                 1

Q 68116 Creating a List Box That Does Not Sort                          1 Q 68566 Default/Private Dialog Classes, Procedures, DefDlgProc          3 Q 68572 Caret Position & Line Numbers in Multiline Edit Controls        2 Q 68580 Changing a List Box from Single-Column to Multicolumn           1 Q 68583 Cases Where &quot;Normal&quot; Window Position, Size Not Available        1

Q 68586 How to Simulate Changing the Font in a Message Box              2 Q 69752 Using Quoted Strings with Profile String Functions              1 Q 69899 PRB: ExitProgman DDE Service Does Not Work If PROGMAN Is Shell 1

Q 69969 Top-Level Menu Items in Owner-Draw Menus                        1 Q 70079 Use MoveWindow to Move an Iconic MDI Child and Its Title        1

Q 70080 Creating a Hidden MDI Child Window                              1 Q 71223 Custom Controls Must Use CS_DBLCLKS with Dialog Editor          1 Q 71450 Using One IsDialogMessage Call for Many Modeless Dialogs      2 Q 71454 Various Ways to Access Submenus and Menu Items                  2 Q 71759 Determining Selected Items in a Multiselection List Box         1

Q 71836 Menu Operations When MDI Child Maximized                        1 Q 72136 Using a Modeless Dialog Box with No Dialog Function             1 Q 72552 WM_CHARTOITEM Messages Not Received by Parent of List Box       1 Q 74041 Windows Does Not Support Nested MDI Client Windows              1 Q 74042 How to Use PeekMessage Correctly in Windows                   3

Q 74266 Default Edit Control Entry Validation Done by Windows           1 Q 74274 WM_SIZECLIPBOARD Must Be Sent by Clipboard Viewer App           1 Q 74277 Dangers of Uninitialized Data Structures                        1 Q 74280 Translating Dialog-Box Size Units to Screen Units               1 Q 74297 Button and Static Control Styles Are Not Inclusive              1

Q 74334 Dialog Box Frame Styles                                         1 Q 74345 Associating Data with a List Box Entry                          2 Q 74366 PRB: Applications Cannot Change the Desktop Bitmap              1 Q 74444 Clearing a Message Box                                          1 Q 74476 Some Basic Concepts of a Message-Passing Architecture           3

Q 74514 Creating and Using a Custom Caret                               2 Q 74547 Importance of Calling DefHookProc                             1 Q 74548 Handling WM_CANCELMODE in a Custom Control                      1 Q 74607 Creating a Nonblinking Caret                                    1 Q 74609 Using Private Templates with Common Dialogs                     1

Q 74610 Common Dialog Boxes and the WM_INITDIALOG Message               1 Q 74612 Open File Dialog Box -- Pros and Cons                           2 Q 74737 Changing the Font Used by Dialog Controls in Windows            2 Q 74789 PRB: MDI Program Menu Items Changed Unexpectedly                1 Q 74792 Making a List Box Item Unavailable for Selection                4

Q 74798 Centering a Dialog Box on the Screen                            1 Q 74857 Avoid Calling SendMessage Inside a Hook Filter Function       1 Q 74888 Specifying Time to Display and Remove a Dialog Box              1 Q 75236 Determining Visible Window Area When Windows Overlap            1 Q 75254 PRB: TrackPopupMenu on LoadMenuIndirect Menu Causes UAE     1

Q 75630 Initializing Menus Dynamically                                  1 Q 76365 PRB: Moving or Resizing the Parent of an Open Combo Box         1 Q 76947 Extending Standard Windows Controls Through Superclassing       2 Q 77550 Differentiating Between the Two ENTER Keys                      1 Q 77750 Placing Captions on Control Windows                             1

Q 77842 WM_DDE_EXECUTE Message Must Be Posted to a Window               1 Q 77843 Fractional Point Sizes Not Supported in ChooseFont            1 Q 77991 Using a Fixed-Pitch Font in a Dialog Box                        1 Q 78241 Limiting the Number of Entries in a List Box                    1 Q 78952 Determining the Number of Visible Items in a List Box           1

Q 79981 Overlapping Controls Are Not Supported by Windows               1 Q 80382 Global Classes in Win32                                         1 Q 81137 How to Create a Topmost Window                                  1 Q 82078 Combo Box w/Edit Control & Owner-Draw Style Incompatible        1 Q 82171 Managing Per-Window Accelerator Tables                          2

Q 82299 Changing the Controls in a Common Dialog Box                    1 Q 83366 Value Returned by GetWindowLong(hWnd, GWL_STYLE)                3 Q 83413 Freeing Memory in a DDEML Server Application                    1 Q 83453 Querying and Modifying the States of System Menu Items          1 Q 83808 Multiple References to the Same Resource                        1

Q 83912 Freeing Memory for Transactions in a DDEML Client App           2 Q 83999 PRB: GP Fault in DDEML from XTYP_EXECUTE Timeout Value          2 Q 84054 Controlling the Caret Color                                     2 Q 84190 Window Owners and Parents                                       2 Q 84843 PRB: IsCharAlpha Return Value Different Between Versions        1

Q 85680 Application Can Allocate Memory with DdeCreateDataHandle        2 Q 86268 Call the Windows Help Search Dialog Box from Application        1 Q 86331 Retrieving the Text Color from the Font Common Dialog Box       2 Q 86429 PRB: Successful LoadResource of Metafile Yields Random Data     1 Q 86720 Adding a Custom Template to a Common Dialog Box                 2

Q 86721 Adding a Hook Function to a Common Dialog Box                   2 Q 86724 Using Drag-Drop in an Edit Control or a Combo Box               2 Q 86835 Defining Private Messages for Application Use                   1 Q 87344 Using the DS_SETFONT Dialog Box Style                           1 Q 87345 Using the DeferWindowPos Family of Functions                    1

Q 88358 Using DWL_USER to Access Extra Bytes in a Dialog Box            1 Q 88387 Determining the Visible Area of a Multiline Edit Control        1 Q 89544 PRB: Printer Font too Small with ChooseFont Common Dialog     1 Q 89712 Multiline Edit Control Limits in Windows NT                     1 Q 89739 Reasons for Failure of Menu Functions                           3

Q 89828 Do Not Forward DDEML Messages from a Hook Procedure             2 Q 89866 Writing Multiple-Language Resources                             1 Q 90912 Getting the WinMain lpCmdLine in Unicode                      1 Q 90975 Creating Windows in a Multithreaded Application                 1 Q 92526 Transparent Windows                                             1 Q 92527 Accessing Parent Window's Menu from Child Window w/ focus       1 Q 92530 Reasons for Failure of Clipboard Functions                      3 Q 92626 Implementing a Line-Based Interface for Edit Controls           2 Q 92659 PRB: SetWindowsHookEx Fails to Install Task-Specific Filter   1

Q 94091 DDEML Application-Instance IDs Are Thread Local                 1 Q 94149 Freeing PackDDElParam Memory                                  1 Q 94917 Uniqueness Values in User and GDI Handles                       1 Q 94953 Instance-Specific String Handles (HSZs) in DDEML                2 Q 94955 DDE Error Message: Application Using DDE Did Not Respond        1

Q 95000 SendMessage in a Multithreaded Environment                    1 Q 95982 PRB: DDEML with Excel Error: Remote Data Not Accessible         1 Q 95983 Establishing Advise Loop on Same topic!item!format! Name       3 Q 96006 Window Message Priorities                                       1 Q 96134 PRB: TAB Key, Mnemonics with FindText and ReplaceText Dialogs   1

Q 96135 PRB: FindText, ReplaceText Hook Function                        1 Q 96479 Message Retrieval in a DLL                                      2 Q 96674 PRB:Unselecting Edit Control Text at Dialog Box Initialization 2

Q 97922 LB_GETCARETINDEX Returns 0 for Zero Entries in List Box         1 Q 97925 SetActiveWindow and SetForegroundWindow Clarification       1

Q 98486 How to Stop a Journal Playback                                  2 Q 99046 How to Draw a Custom Window Caption                             3 Q 99047 Using GetUpdateRgn                                            1 Q 99338 PRB: Error with GetOpenFileName and OFN_ALLOWMULTISELECT      1 Q 99339 DlgDirList on Novell Drive Doesn't Show Double Dots [..]        1

Q 99359 UNICODE and _UNICODE Needed to Compile for Unicode              1 Q 99392 Using SetThreadLocale for Language Resources                  1 Q 99411 PRB: Processing the WM_QUERYOPEN Message in an MDI Application 1

Q 99668 Adding Point Sizes to the ChooseFont Common Dialog Box        2

Q 99799 PRB: Pressing the ENTER Key in an MDI Application               2 Q 99800 Adding to or Removing Windows from the Task List                1 Q 99806 Mirroring Main Menu with TrackPopupMenu                       2 Q 100488 System Versus User Locale Identifiers                          1

Q 102428 Debugging a System-Wide Hook                                   1 Q 102482 SetTimer Should Not Be Used in Console Applications          1 Q 102485 The SBS_SIZEBOX Style                                          1 Q 102552 PRB:Scroll Bar Continues Scrolling After Mouse Button Released 3

Q 102571 Calling DdePostAdvise from XTYP_ADVREQ                       2

Q 102574 XTYP_EXECUTE and its Return Value Limitations                  2 Q 102576 PRB: DDEML Fails to Call TranslateMessage in its Modal Loop  2 Q 102584 Returning CBR_BLOCK from DDEML Transactions                    3 Q 102588 Nonzero Return from SendMsg with HWND_BROADCAST              1 Q 102589 Using ENTER Key from Edit Controls in a Dialog Box             4

Q 102765 Clarification of the &quot;Country&quot; Setting                         1 Q 103315 Explanation of the NEWCPLINFO Structure                        1 Q 103644 Differences Between hInstance on Win 3.1 and Windows NT        2 Q 103977 Unicode Implementation in Windows NT 3.1 and 3.5               1 Q 104011 Propagating Environment Variables to the System                1

Q 104069 SetParent and Control Notifications                            1 Q 104311 32-Bit Scroll Ranges                                           1 Q 104316 How Keyboard Data Gets Translated                              1 Q 105300 COMCTL32 APIs Unsupported in the Win32 SDK                     1 Q 105446 Win32 Shell Dynamic Data Exchange (DDE) Interface              2

Q 105530 Win32 Drag and Drop Server                                     1 Q 106079 PRB: CBT_CREATEWND Struct Returns Invalid Class Name           3 Q 106385 Identifying a Previous Instance of an Application              1 Q 106386 Retrieving DIBs from the Clipboard                             1 Q 106716 Using SendMessageTimeout in a Multithreaded Application      2

Q 106717 Journal Hooks and Compatibility                                1 Q 107387 PRB: Inadequate Buffer Length Causes Strange Problems in DDEML 2

Q 107980 PRB: Excel's =REQUEST from DDEML Application Returns #N/A    2 Q 108232 Hooking Console Applications and the Desktop                   1 Q 108233 PRB: GetOpenFileName and Spaces in Long Filenames            1

Q 108315 How to Keep an MDI Window Always on Top                        2 Q 108925 DdeInitialize, DdeNameService, APPCMD_FILTERINITS          1 Q 108927 Hot Versus Warm Links in a DDEML Server Application            2 Q 108936 Using a Dialog Box as the Main Window of an Application        2 Q 108938 Windows WM_SYSTIMER Message Is an Undocumented Message         1

Q 108940 Text Alignment in Single Line Edit Controls                    1 Q 108941 Using the WM_VKEYTOITEM Message Correctly                      1 Q 109550 Programatically Appending Text to an Edit Control              2 Q 109551 Providing a Custom Wordbreak Function in Edit Controls         3 Q 109696 How to Update the List of Files in the Common Dialogs          2

Q 110704 Replacing Windows NT Control Panel's Mouse Applet              1 Q 114612 Getting a Dialog to Use an Icon When Minimized                 2 Q 118624 Using GetForegroundWindow When Desktop Is Not Active         1 Q 121541 How to Override Full Drag                                      1 Q 121623 How to Program Keyboard Interface for Owner-Draw Menus         2

Q 124835 PRB: JournalPlayback Hook Can Cause Windows NT to Hang         3 Q 125614 PRB: Can't Disable CTRL+ESC and ALT+TAB Under Windows NT       1 Q 125628 PRB: Listview Comes Up with No Images                          1 Q 125629 How to Overlay Images Using Image List Controls                2 Q 125669 How to Create Non-rectangular Windows                          1

Q 125670 How to Implement Context-Sensitive Help in Windows 95 Dialogs  2 Q 125672 Using the Windows 95 Common Controls on Windows NT and Win32s  1 Q 125673 New Windows 95 Styles Make Attaching Bitmap to Button Easier   2 Q 125674 Calling a New 32-bit API from a 16-bit Application             1 Q 125675 How to Right-Justify Menu Items in Windows 95                  2

Q 125676 New User Heap Limits Under Windows 95                          1 Q 125678 New Dialog Styles in Windows 95                                1 Q 125679 New Window Styles in Windows 95                                2 Q 125680 How to Subclass a Window in Windows 95                         2 Q 125681 How to Calculate Dialog Base Units with Non-System-Based Font  2

Q 125682 How to Use the Small Icon in Windows 95                        1 Q 125684 How to Use SS_GRAYRECT SS_BLACKRECT SS_WHITERECT in Windows 95 1 Q 125686 How to Add Windows 95 Controls to Visual C++ 2.0 Dialog Editor 1

Q 125687 PRB: Inter-thread SetWindowText Fails to Update Window Text  1 Q 125694 How to Find Out Which Listview Column Was Right-Clicked        2

Q 125695 SystemParametersInfo Add-On Gets or Sets System Parameters   1 Q 125703 Windows 95 Support for Network DDE                             1 Q 125705 Application Version Marking in Windows 95                      2 Q 125706 Customizing the FileOpen Common Dialog in Windows 95           2 Q 125752 How to Increase Windows NT System and Desktop Heap Sizes       1

Q 126625 How to Change the International Settings Programmatically      1 Q 126630 Resource Sections are Read-only                                1 Q 127066 Advanced Graphics Settings Slider under Windows 95             1 Q 127190 How to Toggle the NUM LOCK, CAPS LOCK, and SCROLL LOCK Keys    1 Q 127861 Network DDE For 16-bit Windows-based Apps Under Windows NT     1

Q 128110 PRB: CBS_SIMPLE ComboBox Repainting Problem                    2 Q 128125 Trusted DDE Shares                                             2 Q 128558 Rich Edit Control Does Not Support Unicode                     1 Q 129595 WM_SYSCOLORCHANGE Must Be Sent to Windows 95 Common Controls   1 Q 129859 Using Text Bullets in a Rich Edit Control                      1

Q 129860 Using Built-In Printing Features from a Rich Edit Control      3 Q 130692 PRB: Editing Labels in a TreeView Gives WM_COMMAND|IDOK Errors 1

Q 130693 How to Use CTL3D Under the Windows 95 Operating System         1 Q 130758 How to Change Small Icon for FileOpen and Other Common Dialogs 2

Q 130759 EM_SETHANDLE and EM_GETHANDLE Messages Not Supported           1 Q 130760 PRB: Can't Remove Minimize or Maximize Button from Caption Bar 1

Q 130761 Using FileOpen Common Dialog w/ OFN_ALLOWMULTIPLESELECT Style  1 Q 130762 How to Use DWL_MSGRESULT in Property Sheets & Wizard Controls  1 Q 130763 How to Create 3D Controls in Client Area of Non-Dialog Window  1 Q 130764 How to Obtain Fonts, ToolTips, and Other Non-Client Metrics    1

Q 130765 PRB: Property Sheet w/ Multiline Edit Control Ignores ESC Key  2 Q 130951 PRB: Private Button Class Can't Get BM_SETSTYLE in Windows 95  1 Q 130952 WM_CTLCOLORxxx Message Changes for Windows 95                  1 Q 131025 PRB: NetDDE Fails to Connect Under Windows 95                  1 Q 131225 PRB: CFileDialog::DoModal Does Not Display FileOpen Dialog   1

Q 131259 How to Detect Slow CPU & Unaccelerated Video Under Windows 95  1 Q 131278 Using cChildren Member of TV_ITEM to Add Speed & Use Less RAM  3 Q 131279 PRB: SelectObject Fails After ImageList_GetImageInfo       1 Q 131280 PRB: LoadCursor Fails on IDC_SIZE/IDC_ICON                   1 Q 131281 PRB: Calling LoadMenuIndirect with Invalid Data Hangs System 1

Q 131282 How to Display Old-Style FileOpen Common Dialog in Windows 95  1 Q 131283 PRB: Can't Use TAB to Move from Standard Controls to Custom    1 Q 131284 How to Select a Listview Item Programmatically in Windows 95   2 Q 131285 How to Use LVIF_DI_SETITEM on an LVN_GETDISPINFO Notification  2 Q 131286 PRB: LB_DIR with Long Filenames Returns LB_ERR in Windows 95   2

Q 131287 Treeviews Share Image Lists by Default                         1 Q 131288 PRB: RegisterClass/ClassEx Fails If cbWndExtra > 40 Bytes  1 Q 131381 PRB: RichEdit Control Hides Mouse Pointer (Cursor)             1 Q 131462 How to Handle FNERR_BUFFERTOOSMALL in Windows 95               3 Q 131500 How to Obtain Icon Information from an .EXE in Windows 95      2

Q 131845 How to Modify the Width of the Drop Down List in a Combo Box   3 End of listing.

Additional query words:

Keywords         : kbcode Version          : 3.10 3.50 3.51 | 4.00 Platform         : NT WINDOWS Last Reviewed: December 9, 1998