CAB/INF, install directory out of control with user selected install volume

CAB/INF/CeAppMgr together with user selected installation volume.
When users let the installation be done on device as suggested by CeAppMgr/Add-Rem-Prog the installation directory
is set as described by Installdir in the .inf.
When user choose to select another installation volym the suggested (and unchangeble) install directed is no longer
the one set in the .inf? Now it's generated by two variables in .inf, Provider under [Version] and AppName under
[CEStrings] are merged together with a blankspace in between.

Details
-
INF:
[Version]
Signature = "$Windows NT$"
Provider = "MyComp"
CESignature = "$Windows CE$"

[CEStrings]
AppName="MyApp"
Installdir=\mydir

; ... some other stuff before EOF...

Cabwiz call:
> CabWiz.exe myapp.inf /err err.log
Resulting in a new cab: myapp.CAB

INI:
[CEAppManager]
Version=1.0
Component=MYAPP

[MYAPP]
Description="MyApp in a CAB"
Uninstall=MYAPP
CabFiles=myapp.CAB

NSIS is used for install scripting, in the script the CeAppMgr is called with my INI as source.
; ... some other stuff before ...

var CeAppMgrLocation
ReadRegStr $CeAppMgrLocation HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\CEAPPMGR.EXE" ""
ExecWait '"$CeAppMgrLocation" "$INSTDIR\myapp.ini"' $0

; ... some other stuff after ...

The Add/Remove Program part of ActiveSync starts and prompts for user interaction:
> Install "MyComp MyApp" using the default application directory?
> YES/NO/CANCEL

1. Choose YES. The application is installed on the device as defined in the INF:
"My Device\mydir"

2. Choose NO. Here the problem occures, when users choose NO the installation continues with promt for selection
of install volume as it should but ... when installed the defined installation directory is replaced with "MyComp MyApp"?:
"My Device\Storage Card\MyComp MyApp"

I've search the web and MSDN but I can't find any solution or description for this odd behaviour.
Could anyone point me in right direction because I don't know what I'm doing wrong?

Ref:
User Selected Installation Volume
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcepbguide5/html/wce51conUserSelectedInstallationLocationSPOnly.asp

Create an Application Installation Package
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnce30/html/appinstall30.asp

Create an .inf for the CAB Wizard
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcesetup/html/_wcesdk_Creating_an_inf_File_for_the_CAB_Wizard.asp

/Regs jutsi

[3764 byte] By [jutsi] at [2007-12-16]
# 1
Since many of you have seen this post and no one replied I hope the reason is my unclear way of describing the problem. This is an attempt to clearify the problem, hopefully someone can look into it and leave me a suggestion on what I could do better.

Clearification of the problem

The intention:
Install an application package (CAB) on a user-selected media (e.g. "Storage Card") on the device.

The expected result:
"My Device\Storage Card\InstallDir\ ..."

The problem:
The script defined (inf/cabwiz) installation directory is overruled and replaced with a combination of "Provider" and "AppName" that are defined in script (inf/cabwiz).

The result:
"My Device\Storage Card\Provider AppName\..."

/regs jutsi

jutsi at 2007-9-9 > top of Msdn Tech,Smart Device Development,Smart Devices General...
# 2

That's expected. InstallDir is a macro which can be substituted upon installation

That means whatever default value you've set for InstallDir (i.e. \mydir) is gone.

Now, you do not have any other folders for your app, so WCELOAD would pick one for you.

IlyaTumanov at 2007-9-9 > top of Msdn Tech,Smart Device Development,Smart Devices General...
# 3

Is there any way (signal to WCELOAD, etc?) to achieve what I'm trying to do with "InstallDir" in cabwizard, in other words:
Can one control the install directory in cases where target media is user-selected?

/jutsi

jutsi at 2007-9-9 > top of Msdn Tech,Smart Device Development,Smart Devices General...
# 4

I suppose you should be able to specify another folder to install to based on InstallDir macro and change files to use that instead of InstallDir.

However, I do not see any reasons to do that. Why do you care about been in particular folder? Since location is user selectable, you’d have to determine location at run time anyway.

IlyaTumanov at 2007-9-9 > top of Msdn Tech,Smart Device Development,Smart Devices General...
# 5

Hi,

The moderators answer doesnt solve the problem. I have the same problem. To explain a bit more.

If the user choosed not to use the default installation directory on the desktop prompt and selects the storage card the CAB gets copied across to the root of the storage card with the name "Company Application.cab". The installation then fails because CeAppMgr running on the device fails to find the CAB it is looking for because the name has been changed.

Is there anyway of disabling this option on the desktop prompt as it is redundant and the user still has the choice to install to Storage card when they complete the installation on the device itself?

goelectric at 2007-9-9 > top of Msdn Tech,Smart Device Development,Smart Devices General...