leiflundgren
leiflundgren

Reputation: 2966

WiX: Define made in included file not avaible from wxs-fragment-file

I have a defines.wxi-file which contains some good definitions used in all my wxs-files.

When I attempt to reference the defined value from one of the <Fragment>-files I get Undefined preprocessor variable '$(var.IMAGE_FOLDER)' back in my face.

I guess there is something trivial I am missing here... Any ideas?

Edit 19:th April.
Found that issue only occurs if reference from a Fragment-file.
Re-wrote sample to match that.


defines.wxi

<Include>
    <?define IMAGE_FOLDER="Images" ?> 
</Include>

some-Fragment.wxs

<Fragment>
  <?Include defines.wxi ?>

  <Component Id='c.Images' Guid=".." Directory='INSTALLDIR.Images' >
     <File Id='f.sample.jpg' Source='$(var.IMAGE_FOLDER)sample.jpg' Name='sample.jpg' />
  </Component>

Upvotes: 5

Views: 2034

Answers (3)

leiflundgren
leiflundgren

Reputation: 2966

Solved it.

Where it in the sample says:

<?Include defines.wxi ?>

it should be lower case...

<?include defines.wxi ?>

then it works like a charm!

/L

Upvotes: 6

Yan Sklyarenko
Yan Sklyarenko

Reputation: 32280

Ok, another try. Do you reference anything in that <Fragment/> from the main <Product/> ? The contents of the fragment are visible to the rest of the code in case you reference anything from it. For instance, you can reference a component (<ComponentRef/>) or component group (<ComponentGroupRef/>). Once anything is referenced, the entire fragment is included.

Hope this helps.

Upvotes: 1

Yan Sklyarenko
Yan Sklyarenko

Reputation: 32280

In the text of the error message you provided it says "Undefined preprocessor variable '$(var.MAGE_FOLDER)'", not $(var.IMAGE_FOLDER) - the leading 'I' is missing. This made me think that you reference the same variable somewhere in the rest of your code, but misspelling it.

In this case, the candle.exe is absolutely right - it can find IMAGE_FOLDER, but can't find MAGE_FOLDER.

Hope this is the case and you'll fix it quickly. ;-)

Upvotes: 0

Related Questions