Microsoft KB Archive/185244

Message Boxes Are Hidden on the Desktop

PSS ID Number: Q185244 Article last modified on 08-12-1998

WINDOWS:98

WINDOWS

================================================================ ==

The information in this article applies to:

 == Microsoft Windows 98 == 

IMPORTANT: This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore it if a problem occurs. For information about how to do this, view the “Restoring the Registry” Help topic in Regedit.exe or the “Restoring a Registry Key” Help topic in Regedt32.exe.

= SYMPTOMS =

When you run a program that opens a message box, you may not see the message box on the desktop while you run other programs.

For example, if your computer participates in a network, you may not see a pop-up message from the network administrator.

If you run a debugger program, set a break point in your program code, and then run other programs, the debug terminal window may not appear in the foreground when the break point is reached.

= CAUSE =

This behavior can occur if the program in the foreground uses one of the following Application Programming Interface (API) methods:


 * SetForegroundWindow
 * SetActiveWindow
 * SetFocus

Windows 98 may return a value of FALSE to a program when one or more of these API methods is used. Microsoft Windows 95 generally returns a value of TRUE and allows a program to immediately open a message box on top of the desktop.

= RESOLUTION =

To resolve this behavior, add a compatibility entry for each program to the [Compatibility95] section of the Win.ini file, the [Compatibility32] section of the Win.ini file, or both sections. This causes Windows 98 to emulate the behavior of Windows 95 for each program with an appropriate entry.

For example, Microsoft Visual C++ has the following entry in the [Compatability95] section of the Win.ini file:

MSDEV=0x00000002

Watcom Debugger 11.0a requires the following entry in the [Compatibility95] section of the Win.ini file:

WDW=0x00000002

Contact the software manufacturer for the appropriate compatibility entry.

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the “Changing Keys And Values” Help topic in Registry Editor (Regedit.exe) or the “Add and Delete Information in the Registry” and “Edit Registry Data” Help topics in Regedt32.exe. Note that you should back up the registry before you edit it.

To work around this behavior, add a “ForegroundLockTimeout” (without quotation marks) binary value with a data value of “00 00 00 00” to the following registry key:

HKEY_CURRENT_USERPanel

Note that this alters the behavior of Windows 98 and all your programs. This can lead to unexpected results.

You can also work around this behavior by pressing ALT+TAB to switch between programs in the foreground or minimize other programs on the desktop.

= MORE INFORMATION =

The following programs may demonstrate this behavior:


 * Windows 98 Infrared Monitor Control Panel tool
 * Watcom Debugger version 11.0a
 * Borland Turbo Debugger
 * Blue Sky Software RoboHelp 5.0
 * IBM Global Network Dialer
 * Setup programs that use InstallShield by InstallShield Software

A programmer writing a program can use an API method to make requests of the operating system or another program. The SetForegroundWindow API method is used in Windows 98 by a program to bring an object to the desktop foreground when you take any of the following actions:


 * Click Start, click Run, and then type the name of a program in the Open box.
 * Drag a data file to a program.
 * Click a command in a program that opens a new window.

= Additional query words: block =

Keywords : kbenv win98 Version : WINDOWS:98 Platform : WINDOWS Issue type : kbprb ============================================================================= Copyright Microsoft Corporation 1998.