compact-frameworkwindows-cesetup-deploymentcabsmart-device

How to make a CAB File Application for Windows Compact 2013?


I have written an application for Windows Compact 2013 and a CAB Application to generate a CAB Installer (on VS 2013) for the device that is running Windows Compact 2013.

Under Add->Project Output, I have included only Primary Output. When I try to install the CAB on the Device, it does not get installed and pops up an error.

Is this the correct way to Create a CAB File for an application? If not please suggest the correct method to do so.

P.S. I have followed the method stated on the MSDN Page.


Solution

  • Personnaly, I prefere use a .ini file and generate cab file with CabWiz program.(You can find it at C:\Program Files (x86)\Microsoft Visual Studio 9.0\SmartDevices\SDK\SDKTools).

    A short sample:

    ; https://msdn.microsoft.com/en-us/windows/hardware/drivers/install/inf-
    
    files
    [Version]
    Signature="$Windows NT$"
    Provider="MyCompany"
    CESignature="$Windows CE$"
    
    [Strings]
    Manufacturer="MyCompany"
    ; There put relative path to your sln projet
    SlnProjectPath=".."
    
    [CEStrings]
    AppName="MyApp"
    InstallDir=\Program Files\%Manufacturer%
    
    [CEDevice]
    VersionMin=4.0
    VersionMax=6.99
    BuildMax=0xE0000000
    
    [DefaultInstall]
    CEShortcuts=Shortcuts
    AddReg=RegKeys
    CopyFiles=Files.Binaries
    
    [SourceDisksNames]
    1=,"ZgRemoteAppBin",,"%SlnProjectPath%\ZgRemoteApp\bin\Release\Remote\"
    2=,"ZgCabInstallerBin",,"%SlnProjectPath%\ExternalLibs\"
    
    [SourceDisksFiles]
    "MyLibrary.dll"=1
    "MyApp.exe"=1
    "Newtonsoft.Json.Compact.dll"=2
    
    [DestinationDirs]
    Shortcuts=0,%CE2%\Start Menu
    Files.Binaries=0,"%InstallDir%\%AppName%"
    
    [Files.Binaries]
    "MyLibrary.dll",,,0
    "MyApp.exe",,,0
    "Newtonsoft.Json.Compact.dll",,,0
    
    [Shortcuts]
    ; If you want desktop shorcut for example
    
    [RegKeys]
    ; https://msdn.microsoft.com/fr-fr/windows/hardware/drivers/install/inf-addreg-directive
    ; reg-root,[subkey],[value-entry-name],[flags],[value][,[value]]
    
    ; Auto start app.
    HKLM,Init,Launch99,0x00000000,%InstallDir%\%AppName%\%AppName%.exe