我正在使用 Pastebin 来存储我的 python 程序的代码,以使其在多台计算机上保持更新。我现在正在尝试类似地维护更新的帮助窗口。我看到我可以使用 .chm 文件将完整的帮助对话框保存在单个文件中,但是这些文件不能很好地转换为文本。
我使用了来自Microsoft的示例 .chm 文件,我用记事本打开了文件(“Viewhlp.chm”)并将文本复制到Pastebin,然后使用下面的脚本尝试重新创建 .chm 文件。这不起作用。直接打开时它会给出“无法打开文件”消息,并且在 PyWin32 中会被忽略。是否有另一种可以使用 python 加载的帮助对话框的单一文件格式?
import urllib2, sys
helpUrl = "http://pastebin.com/raw.php?i=a8rF2i8a"
originalPath = "Viewhlp.chm"
newPath = "NewHlp.chm"
try:
helpData = urllib2.urlopen(helpUrl)
except urllib2.URLError:
sys.exit()
currentHelp = helpData.read()
with open(newPath, mode="wb") as helpFile:
helpFile.write(currentHelp)
# briefly display using PyWin32 or just open the chm files directly
import win32help
win32help.HtmlHelp(0, None, win32help.HH_INITIALIZE, None)
link = win32help.HH_AKLINK()
link.indexOnFail = 1
link.url = ""
link.msgText = ""
link.msgTitle = ""
link.window = ""
win32help.HtmlHelp(0, originalPath, win32help.HH_KEYWORD_LOOKUP, link)
win32help.HtmlHelp(0, newPath, win32help.HH_KEYWORD_LOOKUP, link)