i am not sure what doc you are reffering to, maybe the help document?
anyway, i found another problem, but this one lets the msi actually install
and seems to bury a 2228 error, and is also easy to replicate as well.
what happens now is that i added a progid element above my extension
element, and added a verb element underneath it. (note, there are no
advertised classes anywhere in my installation, therefore no table is
created in the compiled msi.) this is the code snippet:
<Component Id='player.exe' Guid='{GUIIDDDDD}' Directory='player'>
<File Id='player.exe' Name='player.exe' KeyPath='yes' Source='.\program
files\player\player.exe' />
<ProgId Id='RM.3gp' Description='Video File' Icon='IconP.ico'
IconIndex='1' Advertise='yes'>
<Extension Id='3gp' Advertise='yes'>
<MIME Class='{CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA}'
ContentType='video/3gpp' Default='yes' />
<Verb Id='open' Argument='"%1"' Command='Play' />
</Extension>
</ProgId>
</Component>
it compiles and validates perfectly fine. the installation even installs
without error. the problem now is that the progid i am creating does not
get the description or the default icon. the verb table values go in
correctly, but not the progid stuff. looking at the log file, i see this:
MSI (s) (6C:38) [14:26:07:953]: Doing action: RegisterProgIdInfo
Action ended 14:26:07: RegisterExtensionInfo. Return value 1.
MSI (s) (6C:38) [14:26:07:953]: Note: 1: 2205 2: 3: Class
MSI (s) (6C:38) [14:26:07:953]: Note: 1: 2228 2: 3: Class 4: SELECT
DISTINCT `BinaryType`, `ProgId`, `Class_`, `ProgId`.`Description`,
`ProgId`.`Icon_`, `ProgId`.`IconIndex`, null, `Component`.`RuntimeFlags`,
`Component`.`Component` FROM `ProgId`, `Class`, `Feature`, `Component` WHERE
`ProgId`.`Class_` = `Class`.`CLSID` AND `Class`.`Feature_` = `Feature` AND
`Class`.`Component_` = `Component` AND ((`Feature`.`Action` = 1 OR
`Feature`.`Action` = 2) OR (`Feature`.`Action` = 4 AND
`Feature`.`Installed` = 0) OR (`Feature`.`Action` = 3 AND
(`Feature`.`Installed` = 1 OR `Feature`.`Installed` = 2 OR
`Feature`.`Installed` = 4)) OR (`Feature`.`Action` = NULL AND
(`Component`.`Action` = 1 OR `Component`.`Action` = 2) AND
((`Feature`.`Installed` = 1 OR `Feature`.`Installed` = 2 OR
`Feature`.`Installed` = 4))))
Action start 14:26:07: RegisterProgIdInfo.
MSI (s) (6C:38) [14:26:07:953]: Doing action: RegisterMIMEInfo
Action ended 14:26:07: RegisterProgIdInfo. Return value 0.
the return value tells me there is something wrong, and so i add an empty
class table (since the two about notes seems to be metioning something is
wrong with it) using orca this time, and now the installation is fine. the
log now reads like this.
MSI (s) (6C:24) [14:32:14:078]: Doing action: RegisterProgIdInfo
Action ended 14:32:14: RegisterExtensionInfo. Return value 1.
MSI (s) (6C:24) [14:32:14:078]: Note: 1: 2262 2: Class 3: -2147287038
Action start 14:32:14: RegisterProgIdInfo.
MSI (s) (6C:24) [14:32:14:078]: Doing action: RegisterMIMEInfo
Action ended 14:32:14: RegisterProgIdInfo. Return value 1.
the error 2262 i am guessing is because there is no info in the class table
that the progid points to, but this is not fatal and the results (or the
final installation) is ok.
i guess i am wondering why if the extension table is dependent on the verb
table (from the first post), and the progid table seems to be dependent on
the class table, why then are they not included during a compile, even if
they do not need to contain any data? why does this not seem to be
documented anywhere? it took me the entire day so far (6 hours) to figure
out why the progid description and default icon were not coming up and could
not find any documentation anywhere that helped or specified that you need
this table, albeit empty, jsut to exist for the registration of the other
tables to occur correctly. let me know if i am off the wall on this one.
also, would this be two bugs or one if i were to file, and is this a bug in
the documentation, or the compiler?
thanks
doug
On 7/28/07, Bob Arnson <[EMAIL PROTECTED]> wrote:
>
> koawmfot wrote:
> > i need to advertise a ffew file extensions so that self repair can
> > kick off for some specific HKCU registry keys. the problem i have is
> > that i am only adding an extension element and a MIME element, but no
> > verb element, and that leaves the verb table out of the final MSI.
> > now if i try and install the MSI, it dies registering the extension,
> > with error 2228. if i add an empty verb table using orca, the
> > installation is fine. in other words, it needs to see a verb table,
> > but doesn't need it to have any data in it.
> >
> > shouldn't this table then be by light.exe once it is detected that the
> > extension element is advertised? maybe light.exe needs to be
> > updated? or maybe i am doing something completely wrong?
>
> The doc seems pretty clear, so please enter a bug. If you can include a
> small sample that shows the problem, that'd be helpful.
>
> --
> sig://boB
> http://joyofsetup.com/
>
>
>
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users