HOWTO: Troubleshoot WinCE Application Installations

Last reviewed: February 12, 1998
Article ID: Q181007
The information in this article applies to:
  • Microsoft Visual C++ for Windows CE, version 2.0

SUMMARY

The Windows CE SDK provides tools for installing applications to a Windows CE device. This process involves writing a setup INF file (.inf), which will be used by the Application Installation tools to create cabinet (CAB) files containing the files need for the application. An Application Manager INI (.ini) file must also be created to register the CAB files with the desktop Windows CE Application Manager. The following addresses common problems encountered with the Application Installation mechanism.

MORE INFORMATION

CAB Wizard

  • To use a percent (%) character in an INF file, use %%, as specified in the Win32 SDK documentation. However, this method will not work under the [Strings] section.
  • INF files created for Windows CE cannot be used for installing to Windows 95 or Windows NT.
  • CAB files created for Windows CE cannot be used for installing to Windows 95 or Windows NT.
  • The Windows CE SDK-included files Makecab.exe and Cabwiz.ddf must be in the same directory as Cabwiz.exe.
  • Cabwiz.exe must be called with the full path.
  • Creating a CAB file using the Windows CE SDK-included file Makecab.exe doesn't work with Windows CE. You must use Cabwiz.exe (which uses Makecab.exe) to generate the CAB files for Windows CE.
  • CAB files cannot have the read-only file attribute.
  • Verify in the INF file that string lists do not have trailing commas or unnecessary/extra spaces.

          Invalid:  CopyFiles=Files.Common,  Files.Cpu,
    
          Valid:    CopyFiles=Files.Common,Files.Cpu
    
    

Application Manager (AppMgr)

  • When calling Ceappmgr.exe to register an application, use the full path for the location of the AppMgr INI file(s).
  • Use the "/report" parameter in debug versions to verify that AppMgr is using the correct information for the CAB files.

Errors When Registering Applications with Application Manager

  • Verify in the AppMgr INI file that the string list in the "CabFiles" key matches the actual CAB file name and relative path.
  • Verify in the AppMgr INI file that the string value in the "Component" key exists elsewhere in the INI file.
  • Verify that the desktop setup program is calling the correct AppMgr INI file, using a full path.
  • Verify in the AppMgr INI file that the string list in the "CabFiles" key contains no unnecessary spaces.

          Invalid:   CabFiles=app.sh3.cab,  app.mips.cab
          Valid:   CabFiles=app.sh3.cab,app.mips.cab
    
    

Miscellaneous

There are various third-party desktop setup programs that do not correctly update the actual file sizes when overwriting existing files. Because the Application Manager verifies the actual file size with the embedded file size of the CAB file, make sure that the installed CAB file sizes are correct. To ensure this happens for future upgrade scenarios, you can delete the known, existing CAB files on a reinstallation scenario.

Keywords          : kbtshoot
Version           : WINDOWS:2.0
Platform          : WINDOWS
Issue type        : kbhowto


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


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: February 12, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.