microsoft / winfile

Original Windows File Manager (winfile) with enhancements
MIT License
6.82k stars 706 forks source link

Help not working #353

Open wojtekpolska opened 1 year ago

wojtekpolska commented 1 year ago

Trying to open help from here: image Or from here: image Results in: image

wojtekpolska commented 1 year ago

it seems it just can't find the file. i downloaded WINFILE.CHM from this github (winfile/help) and it works fine, tho idk how to let the program itself be able to open it

wojtekpolska commented 1 year ago

I believe potential solution (and the source of the problem) have been mentioned here: https://github.com/Microsoft/winfile/issues/60

.hlp files have been deprecated in Windows 10, but .chm still work properly

malxau commented 1 year ago

Note there's PR #211 to use HTML help, which is the easy part. The harder part is we have a .hlp file from NT 4 that's a fair predecessor to the current code, and a .chm file from Windows 98 which didn't include any of the NT enhancements, and seems much less comprehensive in general. Making help work "well" means decomposing the .hlp file into HTML parts and assembling a .chm file from it.

wojtekpolska commented 1 year ago

@malxau I managed to open that .hlp file and it does seem mostly still up to date imo, do u think its possible to convert it to a more modern format?

and maybe its possible to find a more recent/up to date help file? wikipedia says: "The last 32-bit WINFILE.EXE build (4.0.1381.318) was distributed as part of Windows NT 4.0 Service Pack 6a (SP6a). The last 16-bit WINFILE.EXE build (4.90.3000) was distributed as part of Windows Me operating system." Windows ME seems to be the last with winfile, maybe it also has more modern help file bundled?

Sorry if i dont rly know what im talking about, i just found the help menu doesnt work and dove into a rabbit hole :p

malxau commented 1 year ago

The Windows ME one will be similar to the .CHM in Windows 98. I thought the .HLP one here was the one from NT 4.

I don't know of good tools for this conversion, although they probably exist. .HLP files were created from .RTF files that contain a lot of footnotes which get compiled into .HLP. .CHM is a compressed HTML archive. Doing this without a tool seems very painful (you'd need to navigate each page, copy/paste, and recreate all the links.) So automation seems essentially mandatory.

YELLO-belly commented 1 year ago

So I took the liberty of converting the old "WINFILE.HLP" file into plain html format. I used HELPDECO to convert the original HLP file into .rtf format and then I used Microsoft HTML Help Workshop to generate the .htm files. Following this I did some manual editing by adding the navigation buttons (Contents, Back, Forward), changing hyperlinks to teal color (for better look and similarity to the old HLP format) and some cleanup.

I made no attempt to add any new information or to check for possibly redundant old information in the text. But at the very least these .htm files could provided a basis for further help file updates...

Programs used:

malxau commented 1 year ago

Thanks for looking into it. I took this to see what it would take to make a .CHM from it, but I think the winfile.hlp in this tree is really, really old. This file is 78Kb, which compares to 153Kb in NT 3.1 and NT 3.5, 155Kb in NT 3.51, and 140Kb in NT 4.0. These each include cute navigation graphics that are missing from the one in this tree.

I noticed this when trying to construct an .HHC file and noticing half the topics in the NT 4 help file aren't here. The Windows 95/NT 4.0 WinHelp has a nice contents view that's functionally similar to HTML Help.

I think this file must have come from an early NT beta. One thing that made me laugh is "Names of Open Windows NT" in "Window Menu Commands." This doesn't appear in any of the released versions.

YELLO-belly commented 1 year ago

Oh, I see what you mean now! Attached are the Microsoft HTML Help Workshop project files for the "hopefully" more recent Windows NT 4.0 HLP file converted to .chm with the raw .htm files included. winhelp-nt4-chm-project-files.zip

YELLO-belly commented 1 year ago

P.S. HELPDECO has source code available here: https://github.com/pmachapman/helpdeco I used an older compiled version 2.1 myself from my personal archives. I have not tested the newer versions.

Microsft HTML Workshop used to be available here: https://learn.microsoft.com/en-us/previous-versions/windows/desktop/htmlhelp/microsoft-html-help-downloads But the download links are now dead...

You can get it still from Internet Archive by searching for the direct dl link and selecting one of the older dates like 2007 for example. https://download.microsoft.com/download/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe

YELLO-belly commented 1 year ago

I updated the html help files a bit to remove the obsolete information and update some other parts. These help files should now be usable although they still lack text for the new features and could be made richer in content.

I believe using plain html (.htm) files would be the best choice for future compatibility as .chm files may also stop working at some point like .hlp and editing them may also require old and obsolete software.

My latest edits to the Winfile html help files can now be found here: https://github.com/YELLO-belly/winfile/tree/master/help

P.S. The old link to .hlp files could be replaced to open the .htm files in the web browser instead. See: https://github.com/YELLO-belly/winfile/commit/31921ef3f13742ad37970f9514325a497777adf3

Also I think the 'Search for Help on...' and 'How to Use Help' menu entries can be removed leaving only the 'Contents' option to open the help in the web browser (of course F1 key will also work). See: https://github.com/YELLO-belly/winfile/commit/8cc997afc7eee1dc82d842955ac6b86f4d39c918