installing compact framework in .msi

  • Thread starter Thread starter mgarner1980
  • Start date Start date
M

mgarner1980

I am using the approach described by
http://www.codeproject.com/netcf/compframe4.asp to create msi for my
(vb.net)applications. That is working fine.
I now want to add the compact framework to the msi. I've seen a couple of
sites that say "one approach is to simply add the redistributable to the msi
and deploy it". How do I do that?

Thanks in advance
 
Hi,

The Code Project article refers to an MSDN article which contains the
sample source code for the custom installer dll. You need to change the
CustomInstaller sample code given in that DLL.

In order to install .NET CF with your project you have to call CeAppMgr
twice with different .INI file. You should also wait till Process.Start
returns when CeAppMgr exists. If you fail to do so, the second call to
CeAppMgr will cancel the first installation before it is completed.

Here is the part of the code for Installer.vb:

RunAppManager(Path.Combine(arg, "NETCFSetup.ini"))
RunAppManager(Path.Combine(arg, "MyApp.ini"))

The following change is required with in RunAppManager function.
' launch the app with Wait for Exit
Process.Start( String.Format("""{0}""", appManager),
String.Format("""{0}""",
arg)).WaitForExit()

Thanks

Ercan Turkarslan [MSFT]
Microsoft Mobile Devices Developer Support

(e-mail address removed)


This posting is provided "AS IS" with no warranties, and confers no rights.
 
Thanks, I think I understand that. One thing I don't know is which cab files
to include for .netcf sp1 and sqlserverce.

When I run the application from the ide it installs everything I need except
the sp1. However I can't seem to find a list of what it's doing. th eoutput
window give a little of a clue, but not enough.
Any ideas?
 
Hi,

When you install a .NET CF Service Pack, it does not update the binaries
under VS .NET '03. So when deploying through VS .NET, VS .NET will deploy
the RTM bits if .NET CF is not already installed on the device. You need to
install Service Pack to your device manually, before deploying your
application through VS .NET. The same is true for the emulator.

When you are creating an MSI file, you need to include the cab files to
your MSI project with an appropriate INI file.

Please go to www.microsoft.com/downloads and serach for ".NET Compact
Framework Developer Redistributable". This search will return the available
Service Pack distributables. Download and extract the LATEST service pack
to a folder in your desktop computer and use the CAB files from there.

For SQL Server CE, you should use the CAB files from your VS .NET folder.
For example the following folder contains the SQL Server CE cabs for ArmV4
(PPC '03).

D:\Program Files\Microsoft Visual Studio .NET
2003\CompactFrameworkSDK\v1.0.5000\Windows CE\wce400\armv4

Thanks

Ercan Turkarslan [MSFT]
Microsoft Mobile Devices Developer Support

(e-mail address removed)


This posting is provided "AS IS" with no warranties, and confers no rights.
 
Back
Top