[Wine] trouble with chm files

m31ark wineforum-user at winehq.org
Tue Apr 26 20:37:11 CDT 2011


Hi,

I have been trying to configure Wine to associate kchmviewer with chm files in hopes of having kchmviewer launch whenever I push a help button within SkyTools 3 (http://www.skyhound.com).  I am running Wine 1.3.18 under Ubuntu 10.10 on an amd64 machine.  I followed the instructions in the Wine FAQ at

http://wiki.winehq.org/FAQ#head-91bf3f0a8ccbfab8dee96f82fae2f1a489e0d243

and have tried both methods outlined there.  But every time I open a chm file from within SkyTools, the system uses hh instead.  And hh isn't properly reading the files.  Further details are below.  I have already spent quite a lot of time on this issue and any help would be very greatly appreciated!

Mark

P.S. I'd file a bug report for hh but I'm not free to share the chm files.

---------------------------------------

The command line for directly using hh to attempt to read one of the chm files and the resulting error messages are below.
 
---------------------------------------

mark at chimera:~/.wine/drive_c/Program Files/Skyhound/SkyTools 3$ wine hh SKYTOOLS3P.chm

fixme:htmlhelp:HtmlHelpW Not all HH cases handled correctly
fixme:shdocvw:PersistStorage_InitNew (0x165610)->(0x7ed2a544)
fixme:urlmon:URLMoniker_BindToObject use running object table
fixme:shdocvw:BindStatusCallback_OnProgress status code 11
fixme:shdocvw:handle_navigation_error Navigate to error page
fixme:shdocvw:bind_to_object BindToObject failed: 80030002

---------------------------------------

I have also read many of the threads that show up as results when you search this Forum for "chm" and tried all of the permutations of corresponding registry entries that seemed reasonable.

When I attempted to use the first method outlined in the FAQ, which invokes the system default handler for chm files, I set the default application via Nautilus and then used registry values analogous to those outlined in the FAQ.  The remaining information pertains to using the second method outlined in the FAQ, which explicitly instructs Wine to execute kchmviewer.

My script for executing a linux command from within Wine is

#!/bin/sh
$1 "`wine winepath -u "$2"`"

It resides in /home/mark/bin/wine_run_linux_app.  The permissions on the script are

-rwxr-xr-x 1 mark mark 39 2011-04-25 16:02 wine_run_linux_app

And my PATH is

/home/mark/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

The file chm.reg that I created to modify the registry contains

[HKEY_CLASSES_ROOT\.chm]
@="chm.file"
"Content Type"="application/x-chm"
[HKEY_CLASSES_ROOT\chm.file\Shell\Open\command]
@="/bin/sh wine_run_linux_app kchmviewer \"%1\""

And I used the command "regedit chm.reg" to load the changes into the registry.

Later, I used regedit to manually try several other reasonable permutations of the corresponding registry values.  I tried using double quotes around %1 on the command lines as above and omitting the quotes as below.  I tried explicitly including /bin/sh as above and executing the script itself directly as below.  I tried referring to the script simply by name or using the full path as below.  And I tried all of the different possible combinations of these different possibilities.

The stanzas in my registry that currently correspond to chm files are

[HKEY_CLASSES_ROOT\.chm]
@="chm.file"
"Content Type"="application/x-chm"

[HKEY_CLASSES_ROOT\chm.file]
@="/home/mark/bin/wine_run_linux_app kchmviewer %1"

[HKEY_CLASSES_ROOT\chm.file\shell]

[HKEY_CLASSES_ROOT\chm.file\shell\open]

[HKEY_CLASSES_ROOT\chm.file\shell\open\command]
@="/home/mark/bin/wine_run_linux_app kchmviewer %1"

[HKEY_CURRENT_USER\Software\Wine\FileOpenAssociations\.chm]
"AppName"="wine_run_linux_app"
"DesktopFile"="/home/mark/.local/share/applications/wine-extension-chm.desktop"
"MimeType"="application/x-chm"
"OpenWithIcon"="17EA_wine_run_linux_app.0"
"ProgID"="chm.file"

[HKEY_LOCAL_MACHINE\Software\Classes\.chm]
@="chm.file"
"Content Type"="application/x-chm"

[HKEY_LOCAL_MACHINE\Software\Classes\chm.file]
@="/home/mark/bin/wine_run_linux_app kchmviewer %1"

[HKEY_LOCAL_MACHINE\Software\Classes\chm.file\shell]

[HKEY_LOCAL_MACHINE\Software\Classes\chm.file\shell\open]

[HKEY_LOCAL_MACHINE\Software\Classes\chm.file\shell\open\command]
@="/home/mark/bin/wine_run_linux_app kchmviewer %1"

[HKEY_USERS\S-1-5-21-0-0-0-1000\Software\Wine\FileOpenAssociations\.chm]
"AppName"="wine_run_linux_app"
"DesktopFile"="/home/mark/.local/share/applications/wine-extension-chm.desktop"
"MimeType"="application/x-chm"
"OpenWithIcon"="17EA_wine_run_linux_app.0"
"ProgID"="chm.file"







More information about the wine-users mailing list