[wix-users] Light fails to report UnresolvedReference (94) for custom table/compiler extension

Jacques Eloff repstosd at gmail.com
Mon Apr 22 22:17:19 PDT 2019


Solved!

I forgot to call Core.CreateWixSimpleReferenceRow when parsing the
attribute.

Jacques

On Mon, Apr 22, 2019 at 9:42 PM Jacques Eloff <repstosd at gmail.com> wrote:

> Hi
>
> I've written a compiler extension. Everything seems to be working fine,
> except during linking. In my table definition, I have a keyTable reference
> to ChainPackage. I figured this is how to ensure that an ID in my table
> exists in ChainPackage (and ultimately comes from an existing MsiPackage,
> ExePackage, etc.)
>
> The column definition in my table:
>
> <columnDefinition name="Package"  type="string" length="0"
> category="identifier" primaryKey="yes" keyTable="ChainPackage"
> keyColumn="1" description="Reference to a ChainPackage entry in the
> ChainPackage table."/>
>
> The table is defined as bootstrapperApplicationData="yes",
> createSymbols="yes". This seems to be what other tables do, e.g.
> WixPackageProperties. In fact my column definition is identical to
> WixPackageProperties insofar the ChainPackage reference is concerned.
>
> However, when I reference an unknown package ID, everything links fine and
> the table is created, although it has invalid information. I was expecting
> Light to report an UnresolvedReference error, but it's not.
>
> Is there something I might have overlooked? I noticed that ChainPackage is
> marked as unreal. Is it possible that table definition is dropped by the
> linker so my reference becomes moot?
>
> Thanks,
> Jacques
>



More information about the wix-users mailing list