Wow. That's quite a project you've got going there. Congratulations on
everything you've done so far. After building the XML file with the real
WiX binaries, and then comparing it with your MSI file, I found that the
InstallExecuteSequence table was missing several actions which I believe are
required. After copying them from the WiX generated MSI into your MSI file,
it worked.
Here are some other things you may want to investigate:
It looks like a few of your table column types are incorrectly. After
exporting the schema.msi tables (you can find the MSI in the Platform SDK or
Windows SDK), and windiffing them against yours, here at the differences
that I found:
File table:
Column: Sequence
Type:
Yours> i4
Schema> i2
Media table:
Column: LastSequence
Type:
Yours> i4
Schema> i2
Property table:
Column: Value
Type:
Yours> l255
Schema> l0
While yours works (after I added the additional InstallExecuteSequence
entries), the differing column types could potentially cause problems down
the road. One such problem that you may encounter is in merging a MSM which
is authored using the correct schema.
If you run the MSI file through msiinfo.exe (also included in the Platform
SDK or Windows SDK), and compare the results with a WiX generated MSI, you
will find that the authoring application name string is displaying some
invalid text.
--Mike
"Gary Setter" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
> Hi,
> I'm trying to make a C++ version of the WiX Msi creation tool. I made my
> first Msi file, attempted to install it, and received the following error
> log in my temp directory.
>
> The installer has encountered an unexpected error installing this package.
> This may indicate a problem with this package. The error code is 2235. The
> arguments are: , State, SELECT
> `File`.`FileName`,`Version`,`File`.`State`,`File`.`Attributes`,`TempAttribut
> es`,`File`.`File`,`File`.`FileSize`,`Language`,`Sequence`, `Directory_`,
> `Installed`,`FileAction`.`Action`,`File`.`Component_`,`FileAction`.`ForceLoc
> alFiles`, `ComponentId` FROM `File`,`FileAction` WHERE
> `File`.`File`=`FileAction`.`File` ORDER BY `Sequence`, `Directory_`
> === Logging stopped: 3/23/07 20:03:51 ===
>
> The doc for error 2235 is:
>
> Database: [2]. Column '[3]' not present or ambiguous in SQL query: [4]
>
> Which I take to mean that State is not column of the File table. The MSDN
> doc for the File table is in sync with what I'm importing into the Msi
> file
> and there is no State column.
>
> So I don't know what to do. I'm zipping up my files including the Xml
> source
> for, the Msi file and the Idt files that where generated and imported into
> the Msi file. If any kind person would download it and point out my flaw,
> I
> would greatly appreciate it. Alternatively, are there any free tools that
> I
> could use to expose the flaw myself?
>
> The zip file is:
> home.att.net/~setterg/Badmsi.zip
>
|