Windows Err Msg: Cannot Run This Program...

Last reviewed: July 18, 1995
Article ID: Q84042
The information in this article applies to:
  • Microsoft Windows operating system versions 3.1, 3.11

SYMPTOMS

When you try to start an application in Microsoft Windows 3.1 or try to run Windows Setup from within Windows, you receive the following error message:

   Cannot run this program. The program or one of its components is
   compressed. Expand the program files from your Windows setup disks.

CAUSE

You may have old or corrupt Windows .DLL or .MOD files are in your Windows directory.

If this error occurs after you install Windows 3.1, it may be caused by a third-party display driver.

You may also receive this error if you try to run an MS-DOS-based application in Windows, even though the application itself is not compressed; compressed Windows files are actually causing the problem.

WORKAROUND

Remove any Windows 3.0 .DLL or .MOD files from your Windows directory. For more information, see the "Windows 3.0 Files in Your Windows Directory" section below.

If the problem is a third-party display driver, reset it to a generic Microsoft driver, such as VGA.

If you receive this error while running an uncompressed MS-DOS-based application, determine if you have compressed Windows files as explained in the "Compressed Windows Files" discussion later in this article, then expand the files.

MORE INFORMATION

Windows 3.0 Files in Your Windows Directory

When you upgrade a Windows 3.0 installation to Windows 3.1, system .DLL files are replaced in the WINDOWS\SYSTEM directory. If there are duplicate system .DLL files in the Windows directory, they are not replaced or removed during the upgrade to Windows 3.1. Windows 3.1 Setup looks only in the WINDOWS\SYSTEM directory because that is where the system .DLL files are installed. If system .DLL files are in the Windows directory, they were copied or moved to that location manually.

If Windows 3.0 versions of .DLL or .MOD files are in the Windows directory instead of (or in addition to) the Windows 3.1 versions in the WINDOWS\SYSTEM directory, you may experience a variety of problems.

Creating a clean installation of Windows in a new directory can correct these problems; however, this is not a satisfactory solution because many Windows-based applications store critical settings in the WIN.INI file when they are installed. Many of these applications would need to be reinstalled if Windows 3.1 were installed into a new directory.

The only way you can verify that you have the correct files is to check the file dates. The Windows 3.1 files are dated 3/10/92 or later. Windows 3.0 files are dated either 5/1/90 or 10/31/90.

You can search for old Windows files by using the MS-DOS 5.0 DIR command in conjunction with the /O switch and its options. DIR /ON gives you a directory listing of files in the current directory listed alphabetically by name, and DIR /OD lists the files in the current directory by date. The following example lists all the .DLL files in the Windows and WINDOWS\SYSTEM directory on the printer instead of the screen:

   dir c:\windows\*.dll > prn
   dir c:\windows\system\*.dll > prn

NOTE: Do not redirect files to PostScript printers using these commands. There should not be any .DLL or .MOD files in the Windows or WINDOWS\SYSTEM directory dated 5/1/90 or 10/31/90.

Compressed Windows Files

If you receive this error while trying to run an uncompressed MS-DOS- based application, you can determine if compressed Windows files are causing the problem by following these steps:

  1. From the File Manager File menu, choose Create Directory and create a new directory in your root directory (for example, C:\TEST1).

  2. From the File menu, choose Run, type the following command, and press ENTER:

          c:\windows\expand c:\windows\*.* c:\test1
    

  3. If the percentage increase is NOT zero, compressed files did exist. You can copy these files back to the Windows directory.

You should also try this technique in your WINDOWS\SYSTEM subdirectory. (If you copy the files back to the WINDOWS\SYSTEM subdirectory, make sure you don't copy the Windows directory files there also.)

NOTE: When you run the EXPAND utility from inside Windows File Manager, the screen showing the percentage increase disappears very quickly. When you use the COPY command in File Manager, you may receive a number of error messages saying that Windows cannot copy this file because Windows is using it. This is not a problem because if Windows is using a file, it isn't compressed. It may be easier to run EXPAND and COPY from an MS-DOS command prompt outside Windows. (The only advantage to using Windows File Manager is that it doesn't abort the copy when it tries to copy a read-only file.)


KBCategory: kbsetup kbdisplay kberrmsg kbtshoot
KBSubcategory: win31
Additional reference words: 3.10 3.11 missing lzexpand.dll ver.dll
win87em.dll S3 1.2 800X600 64K Colors 1M tshoot


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: July 18, 1995
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.