That looks like expected behaviour to me.

What's happening here is that the installer's created that directory
structure and deployed a bunch of resources. During uninstall, it
determines that those are the files it deployed and removes them. you can
specify Component/@Permanent=yes if you want to change that.

Once it's removed all the files, it finds that the directory is empty and
removes that as well.

Do you have a copy of this book? It's a great reference for understanding
WiX concepts.

http://www.packtpub.com/windows-installer-xml-3-6-developers-guide/book


On 19 November 2013 10:22, Suvrajyoti Panda <suvrajyo...@contata.co.in>wrote:

>  Ok, I have made the following changes to the TortEngineDemo.wxs(also
> they are attached):
>
> <Directory Id='TARGETDIR' Name='SourceDir'>
>       <Directory Id='MyFolder' Name='EnergySolutionsInternational'
> FileSource='D:\'>
>
>         <Directory Id='TORTDEMO' Name='Tort Demo'>
>           <Component Id="TORTDEMO"
> Guid="9D5FEECE-74FE-45A2-BD34-41562EC8ED16">
>             <RemoveFolder Id='TORTDEMO' On='uninstall' />
>             <!--<RegistryValue Root='HKCU'
> Key='Software\[Manufacturer]\[ProductName]' Type='string' Value=''
> KeyPath='yes' />-->
>           </Component>
>           <!--<Component Id="test"
> Guid="A90AAE4F-CEB3-4958-A97D-458B25800D23">
>             <File Id="test" KeyPath="no"
> Source="C:\Users\suvrajyotip\Desktop\test.txt" />
>             <RegistryValue
> Key="Software\[Manufacturer]\[ProductName]_Dummy" Root="HKCU" KeyPath='yes'
> Type='string' Value=''/>
>           </Component>-->
>         </Directory>
>       </Directory>
>
> When i execute Candle and Light, the msi gets created and when i run the
> msi, the directory structure gets created in
> D:\EnergySolutionsInternational\Tort demo.... On uninstalling the
> EnergySolutionsInternational directory also gets removed. Do you think that
> should be the behaviour.?
>
>
> On 19-11-2013 15:44, John Ludlow wrote:
>
>  In theory, just removing this line should do it:
>
>        <Directory Id='DesktopFolder'  Name='PFiles'>
>  I haven't tried that though, so I'm not 100% sure. If not, you can also
> try a custom action which sets the directory.
>
> Generally, you should think twice before dropping files directly under c:\
> - most people like to keep that as clean as possible.
>
>
>  On 19 November 2013 09:27, Suvrajyoti Panda <suvrajyo...@contata.co.in>wrote:
>
>>  Hi John,
>>
>> Thanks for the help...Just followed the steps...worked like a charm. The
>> folder got installed into the program files folder and there were no errors
>> thrown by Light.
>>
>> But I want the db directory to be created into a folder in say
>> c:\[FolderName](c:\[FolderName]\Tort Demo). I have tried with like as
>> mentioned earlier DesktopFolder, LocalAppdatafolder etc just to see if
>> everything goes fine but i was getting the error mentioned in below mail.
>>
>> For those errors i landed on to
>> http://robmensching.com/blog/posts/2007/4/27/how-to-create-an-uninstall-shortcut-and-pass-all-the
>> where it is said that the registry key is created to make 
>> ICE18<http://msdn2.microsoft.com/en-us/library/aa368942.aspx>,
>> ICE38 <http://msdn2.microsoft.com/en-us/library/aa368961.aspx> and 
>> ICE48<http://msdn2.microsoft.com/en-us/library/aa368977.aspx>happy. So can i 
>> ignore those errors and move ahead?
>>
>> How can i get my directory created to c:\[FolderName]\  ?
>>
>> Regards,
>> SuvraJyoti
>>
>>
>> On 19-11-2013 14:05, John Ludlow wrote:
>>
>> That should have read:
>>
>>  If you make this change, you can also remove the following line:
>>
>>  <RegistryValue Root='HKCU' Key='Software\[Manufacturer]\[ProductName]'
>> Type='string' Value='' KeyPath='yes' />
>>
>>
>> On 19 November 2013 08:34, John Ludlow <john.ludlow...@gmail.com> wrote:
>>
>>> That's because of this:
>>>
>>>        <Directory Id='DesktopFolder'  Name='PFiles'>
>>>
>>>  This will put files on the users desktop - are you sure that's what
>>> you want? (Hint: it's probably not) Change this to ProgramFilesFolder (or
>>> ProgramFiles64Folder). Remember how you were getting a similar error
>>> previously?
>>>
>>>  If you make this change, you can also remove the following line:
>>>
>>>
>>>  Alternatively, use a script to modify each component so it contains a
>>> registry entry.
>>>
>>>
>>> On 19 November 2013 07:50, Suvrajyoti Panda 
>>> <suvrajyo...@contata.co.in>wrote:
>>>
>>>>  Hi John/All,
>>>>
>>>> I have used the below commands:
>>>>
>>>>
>>>> heat dir "D:\Project\ESI\Code\trunk\db" -cg trunkdb -gg -sfrag -dr
>>>> TORTDEMO -out trunkdb.wxs
>>>>  candle TortEngineDemo.wxs trunkdb.wxs
>>>> light -b "D:\Project\ESI\Code\trunk\db" -out TrunkDBDemo.msi
>>>> TortEngineDemo.wixobj trunkdb.wixobj
>>>>
>>>> This does create the TrunkDBDemo.msi and when i run it it also creates
>>>> the "Tort Demo" folder on the desktop and the db directory in which i can
>>>> find all the files that were there in the source directory. The required
>>>> registry entry is also created.
>>>> The change i have done is added the part *-b
>>>> "D:\Project\ESI\Code\trunk\db"  *to the Light command
>>>> *. *
>>>> But the Light does throw up some many errors such as :
>>>>
>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(921) : error
>>>> LGHT0204 :
>>>> ICE38: Component cmp159DEBB341761ACFD08D530D4AB638B2 installs to user
>>>> profile. It must use a registry key under HKCU as its KeyPath, not a file.
>>>>
>>>> In the trunkdb.wxs file i have the like below(files are attached)
>>>> <Component Id="cmp159DEBB341761ACFD08D530D4AB638B2"
>>>> Guid="{AA11F234-AF77-4F2C-B4A2-355A25C71234}">
>>>>
>>>>                     <File Id="fil13F4C3BF2526AB7CCACA852D90DAA880"
>>>> KeyPath="yes" Source="SourceDir\alarm.db"/>
>>>>  Do i need to change this file to registry key when generating this
>>>> file from heat? Please suggest as to what the error could be for?
>>>>
>>>> Regards,
>>>> Suvra Jyoti
>>>>
>>>>
>>>> On 18-11-2013 21:31, John Ludlow wrote:
>>>>
>>>>  Yeah I didn't explain that path thing very well. I was referring to
>>>> this path:
>>>>
>>>>   C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs
>>>>
>>>> This probably shouldn't be here. Best to keep this out of the WiX
>>>> install directory. If this is a file which is generated for every build,
>>>> then either use an intermediates folder in your build tree, or put it into
>>>> the %tmp% directory. This is probably because you're not specifying a full
>>>> path for the -out parameter.
>>>>
>>>> I'm not entirely clear on why you're launching an installer from
>>>> CruiseControl - that seems a little weird to me. It sounds like you're
>>>> trying to use MSI to achieve a continuous deployment scenario, and it's not
>>>> really designed for that - is that what you're trying to do?
>>>>
>>>> I've not actually used the heat -var argument, so the advice I can give
>>>> you will be limited. However, I believe that if you add
>>>> "-var:TrunkDbRootDir" to your heat command, it will generate something like
>>>> this:
>>>>
>>>> <File Source="$(var.TrunkDbRootDir)\file.ext"/>
>>>>
>>>> You will have to define that variable elsewhere, and it's up to you to
>>>> make sure that it points to the correct place so that the path is correct
>>>> when the variable is resolved. Someone with more experience of heat.exe
>>>> might be able to help you further.
>>>>
>>>> Hope that helps
>>>>
>>>>
>>>> On 18 November 2013 14:36, Suvrajyoti Panda 
>>>> <suvrajyo...@contata.co.in>wrote:
>>>>
>>>>>  Hi John,
>>>>>
>>>>> When I are created the  trunkdb.wxs file i had ditected it to
>>>>> D:\Project\ESI\Code\trunk\db. These files exist now also and are part of
>>>>> the SVN source control. I do not get what you mean by "C:\Program Files
>>>>> (x86)" and "I'm not sure how it came up with that path" . I am just
>>>>> executing Light from the path C:\Program Files (x86)\WiX Toolset v3.7\bin
>>>>> where in my two source files are also placed(tortenginedemo.wxs and
>>>>> trunkdb.wxs). By File/@Source i guess you mean that as of now in the
>>>>> fragment the path is only SourceDIr. Let me know how we can do that.
>>>>>
>>>>> I need this to be dynamic in the sense that a batch file would execute
>>>>> that would create the directory *db** (*D:\Project\ESI\Code\trunk\db
>>>>> *). * The WIX installer that needs to be created should install the
>>>>> “db” directories that is created by the batch file. Basically i need to
>>>>> execute the installer when the scroipts for cruise control are fired. The
>>>>> firing of the cruisecontrol script fires the installer as well through a
>>>>> batch file.
>>>>>
>>>>> This is the approach that has been decided as of now. In case you
>>>>> other pointers do let me know specially the "You will need to either
>>>>> specify the -var argument to heat.exe with a variable name (and tweak the
>>>>> value so that it matches correctly) or write some build code to tweak the
>>>>> contents of this file." if this helps.
>>>>>
>>>>> Moreover it is not that the error is being shown foll all the files in
>>>>> the db directory . It is showing for about 150 files in the db directory.
>>>>> There are a total of 379 files in the same.
>>>>>
>>>>> Regards,
>>>>> SuvraJyoti
>>>>>
>>>>>
>>>>> On 18-11-2013 19:00, John Ludlow wrote:
>>>>>
>>>>>  Do those files exist at compilation time? They are "C:\Program Files
>>>>> (x86)" paths, and your code doesn't specify a full path in File/@Source.
>>>>> I'm not sure how it came up with that path, but it's probably wrong, since
>>>>> you are likely building your application binaries in a build area.
>>>>>
>>>>> You will need to either specify the -var argument to heat.exe with a
>>>>> variable name (and tweak the value so that it matches correctly) or write
>>>>> some build code to tweak the contents of this file.
>>>>>
>>>>> Heat.exe can, with the correct arguments, give you some generated code
>>>>> you can just plug into your project and go. Probably. In theory. If the
>>>>> planets are all in the correct alignments and you've made the right
>>>>> sacrifices. In practice, you should consider whether this kind of dynamic
>>>>> code generation is really what you need.
>>>>>
>>>>>  Do the contents of that directory change without warning or beyond
>>>>> your team's ability to keep up with the changes? If so, then this kind of
>>>>> code generation is potentially a way around the issue, but ideally you
>>>>> should reconsider the application design.
>>>>>
>>>>>  However, if this is more about generating code so you don't have to
>>>>> crank it by hand, then I'd recommend taking the generated code and adding
>>>>> the missing or incorrect attributes (possibly with PowerShell) and then
>>>>> take that code as source. Further updates to this code can be done by 
>>>>> hand.
>>>>>
>>>>>  Hope that helps
>>>>>
>>>>>
>>>>> On 18 November 2013 11:18, Suvrajyoti Panda <suvrajyo...@contata.co.in
>>>>> > wrote:
>>>>>
>>>>>>  Hi John,
>>>>>>
>>>>>> Any updates on the below issue. I am still stuck there.
>>>>>>
>>>>>>  Regards,
>>>>>> Suvra Jyoti
>>>>>> -------- Original Message --------
>>>>>>   Subject: Fwd: Re: [WiX-users] Referring to fragments  Date: Mon,
>>>>>> 18 Nov 2013 15:06:38 +0530  From: Suvrajyoti Panda
>>>>>> <suvrajyo...@contata.co.in> <suvrajyo...@contata.co.in>  To: John
>>>>>> Ludlow <john.ludlow...@gmail.com> <john.ludlow...@gmail.com>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Attaching the source files once again.
>>>>>>
>>>>>> -------- Original Message --------  Subject: Re: [WiX-users]
>>>>>> Referring to fragments  Date: Mon, 18 Nov 2013 15:04:31 +0530  From: 
>>>>>> Suvrajyoti
>>>>>> Panda <suvrajyo...@contata.co.in> <suvrajyo...@contata.co.in>  To: John
>>>>>> Ludlow <john.ludlow...@gmail.com> <john.ludlow...@gmail.com>  CC: General
>>>>>> discussion about the WiX toolset. 
>>>>>> <wix-users@lists.sourceforge.net><wix-users@lists.sourceforge.net>
>>>>>>
>>>>>> Hi John,
>>>>>>
>>>>>> I did as you suggested. I was getting the error C:\Program Files
>>>>>> (x86)\WiX Toolset v3.7\bin\TortEngineDemo.wxs(24) : error LGHT0
>>>>>> 094 : Unresolved reference to symbol 'Component:TORTDEMO' in section
>>>>>> 'Product:{5
>>>>>> A1581BE-27C3-46A1-8699-4F1D642C97E0}'. So i changed the name to
>>>>>> TORTDEMO instead of cmpTrunkDB earlier as below:
>>>>>>
>>>>>>  <Directory Id='TARGETDIR' Name='SourceDir'>
>>>>>>       <Directory Id='DesktopFolder' Name='PFiles'>
>>>>>>         <Directory Id='TORTDEMO' Name='Tort Demo'>
>>>>>>           <Component Id="*TORTDEMO*"
>>>>>> Guid="9D5FEECE-74FE-45A2-BD34-41562EC8ED16">
>>>>>>             <RemoveFolder Id='TORTDEMO' On='uninstall' />
>>>>>>             <RegistryValue Root='HKCU'
>>>>>> Key='Software\[Manufacturer]\[ProductName]' Type='string' Value=''
>>>>>> KeyPath='yes' />
>>>>>>           </Component>
>>>>>>         </Directory>
>>>>>>       </Directory>
>>>>>>     </Directory>
>>>>>>
>>>>>> Now i am getting the below error.
>>>>>>
>>>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(751) : error
>>>>>> LGHT0103 :
>>>>>> The system cannot find the file 'SourceDir\tortoptions.v2.db'.
>>>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(754) : error
>>>>>> LGHT0103 :
>>>>>> The system cannot find the file 'SourceDir\tortoptions.v3.db'.
>>>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(757) : error
>>>>>> LGHT0103 :
>>>>>> The system cannot find the file 'SourceDir\tortoptions.v4.db'.
>>>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(760) : error
>>>>>> LGHT0103 :
>>>>>> The system cannot find the file 'SourceDir\tortoptions.v5.db'.
>>>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(763) : error
>>>>>> LGHT0103 :
>>>>>> The system cannot find the file 'SourceDir\tortosedata.db'.
>>>>>> C:\Program Files (x86)\WiX Toolset v3.7\bin\trunkdb.wxs(766) : error
>>>>>> LGHT0103 :
>>>>>>
>>>>>> Please suggest on the same.
>>>>>>
>>>>>> On 18-11-2013 14:24, John Ludlow wrote:
>>>>>>
>>>>>> Ah, I missed that.
>>>>>>
>>>>>>  You need to create a reference in your feature to each component,
>>>>>> because now you have components which aren't assigned to any feature, 
>>>>>> which
>>>>>> means they would never be installed.
>>>>>>
>>>>>>  Please try this:
>>>>>>
>>>>>>  1. On your Heat.exe call, specify the -cg argument with a component
>>>>>> name:
>>>>>>
>>>>>>     heat dir "D:\Project\ESI\Code\trunk\db" -cg trunkdb -gg -sfrag
>>>>>> -dr TORTDEMO -out trunkdb.wxs.
>>>>>>
>>>>>>  This should add a component group with all the components in the
>>>>>> output. The ID should be trunkdb, which you can reference in your 
>>>>>> Feature.
>>>>>>
>>>>>>  2. Change your Feature element like so:
>>>>>>
>>>>>>      <Feature Id='Complete' Level='1'>
>>>>>>       <ComponentRef Id='TORTDEMO' />
>>>>>>        <ComponentGroupRef Id='trunkdb'/>
>>>>>>      </Feature>
>>>>>>
>>>>>>  This should reference the component group created in Step #1,
>>>>>> drawing all those components into that feature.
>>>>>>
>>>>>>  At first glance, the registry entry you've created looks fine. I'd
>>>>>> probably specify a value, but that's just me.
>>>>>>
>>>>>>
>>>>>> On 18 November 2013 08:32, Suvrajyoti Panda <
>>>>>> suvrajyo...@contata.co.in> wrote:
>>>>>>
>>>>>>>
>>>>>>> Hi John,
>>>>>>>
>>>>>>> Please also have a look at the directory structure and registry
>>>>>>> entry i am creating. Let me know in case i need a change there as well.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Suvra Jyoti
>>>>>>>
>>>>>>> -------- Original Message --------  Subject: Re: [WiX-users]
>>>>>>> Referring to fragments  Date: Mon, 18 Nov 2013 13:47:44 +0530  From:
>>>>>>> Suvrajyoti Panda <suvrajyo...@contata.co.in><suvrajyo...@contata.co.in> 
>>>>>>>  To:
>>>>>>> General discussion about the WiX toolset.
>>>>>>> <wix-users@lists.sourceforge.net> <wix-users@lists.sourceforge.net>,
>>>>>>> john.ludlow...@gmail.com
>>>>>>>
>>>>>>> Hi John,
>>>>>>>
>>>>>>> Thanks for the clarifications. I have come in in the morning and
>>>>>>> tried to follow the steps as u have suggested. Attaching my two source
>>>>>>> files
>>>>>>> for your reference.
>>>>>>>
>>>>>>> Below is what i have tried to do today:
>>>>>>>
>>>>>>>
>>>>>>>    - I have created the file trunkdb.wxs using the following
>>>>>>>    command:heat dir "D:\Project\ESI\Code\trunk\
>>>>>>>    db" -gg -sfrag -dr TORTDEMO -out trunkdb.wxs.
>>>>>>>    So the file generated looks like the below snippet: <Wix xmlns=
>>>>>>>    
>>>>>>> "http://schemas.microsoft.com/wix/2006/wi";<http://schemas.microsoft.com/wix/2006/wi>
>>>>>>>    >
>>>>>>>        <Fragment>
>>>>>>>            <DirectoryRef Id="TORTDEMO">
>>>>>>>                <Directory Id="dir653F7E432DCA0892A253D0CEC7775D03"
>>>>>>>    Name="db">
>>>>>>>                    <Component
>>>>>>>    Id="cmp159DEBB341761ACFD08D530D4AB638B2"
>>>>>>>    Guid="{F89E44FD-879E-4076-B1A9-4CC2DFDB9DF4}">
>>>>>>>                        <File
>>>>>>>    Id="fil13F4C3BF2526AB7CCACA852D90DAA880" KeyPath="yes"
>>>>>>>    Source="SourceDir\alarm.db" />
>>>>>>>                    </Component>
>>>>>>>                    <Component
>>>>>>>    Id="cmpB5B2B206AA7A6A0007EEC8D894834050"
>>>>>>>    Guid="{88DECB74-680F-4075-B764-4AE663664829}">
>>>>>>>                        <File
>>>>>>>    Id="fil34C37BE68FA25CF6AE6B3151F5727B4B" KeyPath="yes"
>>>>>>>    Source="SourceDir\batch.db" />
>>>>>>>                    </Component>.
>>>>>>>
>>>>>>>  .....
>>>>>>> .....
>>>>>>> .....
>>>>>>> .
>>>>>>> .
>>>>>>> .
>>>>>>>
>>>>>>>  So here i have generated the DirectoryRef Id as suggested by you.
>>>>>>> Now in the TortEngineDemo.wxs i am trying to refer it as below :
>>>>>>>
>>>>>>> <?xml version='1.0' encoding='windows-1252'?>
>>>>>>> <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
>>>>>>>   <Product Name='Tort Demo 1.0'
>>>>>>> Id='5A1581BE-27C3-46A1-8699-4F1D642C97E0'
>>>>>>> UpgradeCode='C54B7D5D-0E66-43E8-A770-C9750693F057'
>>>>>>>     Language='1033' Codepage='1252' Version='1.0.0'
>>>>>>> Manufacturer='Acme Ltd.'>
>>>>>>>
>>>>>>>     <Package Id='*' Keywords='Installer' Description="Tort 1.0
>>>>>>> Installer" Comments='Tort Ltd.' Manufacturer='ESI Ltd.'
>>>>>>>       InstallerVersion='100' Languages='1033' Compressed='yes'
>>>>>>> SummaryCodepage='1252' />
>>>>>>>
>>>>>>>     <Media Id='1' Cabinet='Tort.cab' EmbedCab='yes'
>>>>>>> DiskPrompt="CD-ROM #1" />
>>>>>>>     <Property Id='DiskPrompt' Value="Tort Demo Installation [1]" />
>>>>>>>
>>>>>>>     <Directory Id='TARGETDIR' Name='SourceDir'>
>>>>>>>       <Directory Id='DesktopFolder' Name='PFiles'>
>>>>>>>         <Directory Id='TORTDEMO' Name='Tort Demo'>
>>>>>>>           <Component Id="CmpTrunkDB"
>>>>>>> Guid="9D5FEECE-74FE-45A2-BD34-41562EC8ED16">
>>>>>>>             <RemoveFolder Id='TORTDEMO' On='uninstall' />
>>>>>>>             <RegistryValue Root='HKCU'
>>>>>>> Key='Software\[Manufacturer]\[ProductName]' Type='string' Value=''
>>>>>>> KeyPath='yes' />
>>>>>>>           </Component>
>>>>>>>         </Directory>
>>>>>>>       </Directory>
>>>>>>>     </Directory>
>>>>>>>
>>>>>>>     <Feature Id='Complete' Level='1'>
>>>>>>>       <ComponentRef Id='TORTDEMO' />
>>>>>>>       <ComponentRef Id='cmp159DEBB341761ACFD08D530D4AB638B2'/>
>>>>>>>      </Feature>
>>>>>>>
>>>>>>>   </Product>
>>>>>>>
>>>>>>>    <!--<Fragment>
>>>>>>>     <DirectoryRef Id="dir69CDC966F9D8B6EA694F96E169B0FBFF">
>>>>>>>     </DirectoryRef>
>>>>>>>   </Fragment>-->
>>>>>>>
>>>>>>> </Wix>
>>>>>>>
>>>>>>> I have executed the candle as below:
>>>>>>> *candle TortEngineDemo.wxs trunkdb.wxs* -- this generates the
>>>>>>> WIXOBJ files. Then i execute *light -out TrunkDBDemo.msi
>>>>>>> TortEngineDemo.wixobj trunkdb.wixobj*. On this i am again getting
>>>>>>> multiple errors : C:\Program Files (x86)\WiX Toolset
>>>>>>> v3.7\bin\trunkdb.wxs(1119) : error LGHT0267 :
>>>>>>>  Found orphaned Component 'cmp5FAA008684E68756F59591139AA72C60'.  If
>>>>>>> this is a P
>>>>>>> roduct, every Component must have at least one parent Feature.  To
>>>>>>> include a Com
>>>>>>> ponent in a Module, you must include it directly as a Component
>>>>>>> element of the M
>>>>>>> odule element or indirectly via ComponentRef, ComponentGroup, or
>>>>>>> ComponentGroupR
>>>>>>> ef elements.
>>>>>>>
>>>>>>> I am sure i am not referring the fragment the right way. Please
>>>>>>> suggest how i need to refer to the fragment from my installer. I am 
>>>>>>> really
>>>>>>> stuck and any help would be much appreciable. Let me know if you are on
>>>>>>> Skype, that would be helpful.
>>>>>>>
>>>>>>> Regards,
>>>>>>> SuvraJyoti
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Regards,
>>>>>>> SuvraJyoti
>>>>>>>
>>>>>>> On 15-11-2013 19:19, John Ludlow wrote:
>>>>>>>
>>>>>>> I think you're getting confused between two separate issues. If you're
>>>>>>> getting the ICE error, then that would stop the build from successfully
>>>>>>> completing. You may be using an out of date version of your installer.
>>>>>>>
>>>>>>> Because of that, I would suggest that you do the following
>>>>>>>
>>>>>>> 1. Resolve the ICE issue. You suppress it so that it doesn't get run, 
>>>>>>> but
>>>>>>> the better thing to do is usually to solve the error. In this case, that
>>>>>>> means add a registry entry to the component and mark it as KeyPath=yes.
>>>>>>>
>>>>>>> 2. Determine whether your directory structure is getting added to your
>>>>>>> install. You can do this in a number of ways - using Orca.exe or 
>>>>>>> performing
>>>>>>> an admin install are two of them. Based on your question, I can't see a
>>>>>>> reference to anything in the Fragment which contains the harvested
>>>>>>> directory structure, so I suspect that you need to add a reference to
>>>>>>> something in there.
>>>>>>>
>>>>>>> For example:
>>>>>>>
>>>>>>>      <Feature Id='Complete' Level='1'>
>>>>>>>        <ComponentRef Id='TORTDEMO' />
>>>>>>>        <ComponentRef Id='cmpCB46AAB9A4F3EB62F8247A194B4BBB4B' />
>>>>>>>      </Feature>
>>>>>>>
>>>>>>> Once you've dealt with those issues, you may see WiX complain about 
>>>>>>> other
>>>>>>> issues - for starters, your root DirectoryRef entry in that structure is
>>>>>>> missing an ID, so the structure won't have a valid parent which means 
>>>>>>> MSI
>>>>>>> won't know where to put it.
>>>>>>>
>>>>>>> My advice would be to concentrate on getting a successful compilation, 
>>>>>>> then
>>>>>>> work from there. Keep compiling regularly as you work. If you see a
>>>>>>> compilation failure, stop and deal with it. This makes it much easier to
>>>>>>> deal with issues as you discover them.
>>>>>>>
>>>>>>> Hope that helps
>>>>>>>
>>>>>>>
>>>>>>> On 15 November 2013 11:13, Suvrajyoti Panda <suvrajyo...@contata.co.in> 
>>>>>>> <suvrajyo...@contata.co.in>wrote:
>>>>>>>
>>>>>>>
>>>>>>>  Hi,
>>>>>>>
>>>>>>> I have a fragment that i have created through Heat. Basically i want to
>>>>>>> create a db directory that has db files inside it through the installer.
>>>>>>> It has the structure as below:
>>>>>>>
>>>>>>> <?xml version="1.0" encoding="utf-8"?>
>>>>>>> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"; 
>>>>>>> <http://schemas.microsoft.com/wix/2006/wi>>
>>>>>>>      <Fragment>
>>>>>>>          <DirectoryRef Id="">
>>>>>>>              <Directory Id="" Name="db">
>>>>>>>                  <Component Id="cmpCB46AAB9A4F3EB62F8247A194B4BBB4B"
>>>>>>> Guid="{DE25A51B-AD43-4C74-8F84-9336AAC18BA0}">
>>>>>>>                      <File Id="fil8B6B2F5720D83AD50A3898087E4DADF1"
>>>>>>> KeyPath="yes" Source="SourceDir\alarm.db" />
>>>>>>>                  </Component>
>>>>>>>                   ...... many components follow here
>>>>>>>                   ........
>>>>>>>                   ........
>>>>>>>                  .
>>>>>>>                  .
>>>>>>>                  .
>>>>>>>              </Directory>
>>>>>>>          </DirectoryRef>
>>>>>>>      </Fragment>
>>>>>>> </Wix>
>>>>>>>
>>>>>>> My main WiX installer file is as below:
>>>>>>>
>>>>>>> <?xml version='1.0' encoding='windows-1252'?>
>>>>>>> <Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
>>>>>>>    <Product Name='Tort Demo 1.0'
>>>>>>> Id='0A6A060C-20A5-4716-994D-BC728A904F27'
>>>>>>> UpgradeCode='3F665FE5-D9A9-4C9E-B260-7D54970C99F3'
>>>>>>>      Language='1033' Codepage='1252' Version='1.0.0' Manufacturer='Acme
>>>>>>> Ltd.'>
>>>>>>>
>>>>>>>      <Package Id='*' Keywords='Installer' Description="Tort 1.0
>>>>>>> Installer" Comments='Tort Ltd.' Manufacturer='ESI Ltd.'
>>>>>>>        InstallerVersion='300' Languages='1033' Compressed='yes'
>>>>>>> SummaryCodepage='1252' />
>>>>>>>
>>>>>>>      <Media Id='1' Cabinet='Tort.cab' EmbedCab='yes' DiskPrompt="CD-ROM
>>>>>>> #1" />
>>>>>>>      <Property Id='DiskPrompt' Value="Tort Demo Installation [1]" />
>>>>>>>
>>>>>>>      <Directory Id='TARGETDIR' Name='SourceDir'>
>>>>>>>        <Directory Id='PersonalFolder' Name='PFiles'>
>>>>>>>          <Directory Id='TORTDEMO' Name='Tort Demo'>
>>>>>>>            <Component Id="TORTDEMO"
>>>>>>> Guid="8D286AB1-8C00-4A88-A7EB-C83BB92C480A">
>>>>>>>              <RemoveFolder Id='TORTDEMO' On='uninstall' />
>>>>>>>            </Component>
>>>>>>>          </Directory>
>>>>>>>        </Directory>
>>>>>>>      </Directory>
>>>>>>>
>>>>>>>      <Feature Id='Complete' Level='1'>
>>>>>>>        <ComponentRef Id='TORTDEMO' />
>>>>>>>      </Feature>
>>>>>>>
>>>>>>>    </Product>
>>>>>>> *
>>>>>>> **  <Fragment>**
>>>>>>> **    <DirectoryRef Id="TORTDEMO">**
>>>>>>> **    </DirectoryRef>**
>>>>>>> **  </Fragment>*
>>>>>>>
>>>>>>> </Wix>
>>>>>>>
>>>>>>> I have tried to reference as given in the bold, but the directory
>>>>>>> structure does not get created when i run the .msi installer an i am
>>>>>>> getting the error C:\Program Files (x86)\WiX Toolset
>>>>>>> v3.7\bin\TortEngineDemo.wxs(15) : error LGHT0
>>>>>>> 204 : ICE38: Component TORTDEMO installs to user profile. It must use a
>>>>>>> registry
>>>>>>>   key under HKCU as its KeyPath, not a file.
>>>>>>>
>>>>>>> Please help..
>>>>>>>
>>>>>>> Regards,
>>>>>>> Suvra Jyoti
>>>>>>>
>>>>>>> On 15-11-2013 16:28, uholeschak wrote:
>>>>>>>
>>>>>>>  I have two burn bundles (with different UpgradeCodes)
>>>>>>> that contain the same MsiPackage, but with different versions (different
>>>>>>> ProductCode).
>>>>>>> When I install the first burn bundle all is working fine,
>>>>>>> but when installing the second bundle nothing is happening (the
>>>>>>>
>>>>>>>  MsiPackage
>>>>>>>
>>>>>>>  is not installed).
>>>>>>> Is there a way to force burn to update an existing MsiPackage?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> View this message in context:
>>>>>>>
>>>>>>>  
>>>>>>> http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/MSI-packages-in-different-burn-bundles-not-updated-tp7590668.html
>>>>>>>
>>>>>>>  Sent from the wix-users mailing list archive at Nabble.com.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>  
>>>>>>> ------------------------------------------------------------------------------
>>>>>>>
>>>>>>>  DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps
>>>>>>> OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
>>>>>>> Free app hosting. Or install the open source package on any LAMP server.
>>>>>>> Sign up and see examples for AngularJS, jQuery, Sencha Touch and Native!
>>>>>>>
>>>>>>>
>>>>>>>  
>>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk
>>>>>>>
>>>>>>>  _______________________________________________
>>>>>>> WiX-users mailing listWiX-u <WiX-users@lists.sourceforge.net>
>>>>>>>
>>>>>>>  ...
>
> [Message clipped]
------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to