xuzhenjun130 发表于 2012-2-14 22:45:52

au3如何调用HTMLHelp?(调用chm文件,并搜索关键字)【已解决】

本帖最后由 xuzhenjun130 于 2012-2-15 20:22 编辑

SCITE编辑器中,按F1,就能弹出相关的函数帮助。想用au3写出这样的功能
但是chm 文件怎么样才能调用它,并且搜索指定的关键字呢?
只找到一篇《在VC++ 6.0中使用 HTML Help》
http://wenku.baidu.com/view/115dbc1dc281e53a5802ff08.html

希望高手指点

____________________________________________________________________
搜索英文论坛,找到答案,国外有人写htmlHelp udf ,很强大,连使用手册都写有,佩服国外的高手啊,写东西非常细。
有人能帮汉化一下就好了


------------------------------------------------------
我x,以为解决了,没想到看老外的udf ,搜索chm,居然用按键模拟的方式。
期待高手能用api的方式
-----------------------------------------------------------------
搞定标签的而已Const $HH_DISPLAY_TOPIC= 0x0    ; select last opened tab,
Const $HH_DISPLAY_TOC= 0x1      ; select contents tab,
Const $HH_DISPLAY_INDEX= 0x2    ; select index tab and searches for a keyword
Const $HH_DISPLAY_SEARCH= 0x3   ; select search tab and perform a search
Const $HH_HELP_CONTEXT= 0xF   ; display mapped numeric value in dwData
;~ HWND WINAPI HtmlHelpA(
;~   HWND hwndCaller,
;~   LPCSTR pszFile,
;~   UINT uCommand,
;~   DWORD_PTR dwData
;~ );
$sfunc = "_StringEncrypt"
$hwndHelp = DllCall("hhctrl.ocx","hwnd","HtmlHelpA","hwnd",0,"str","Autoit.chm","int",$HH_DISPLAY_INDEX,"str",$sfunc)
if WinWaitActive($hwndHelp,"",5) Then Send("{ENTER}")
While WinExists($hwndHelp)
    Sleep(250)
WEnd

oplmamik 发表于 2012-2-15 09:34:54

百度收chm 这后面有参数

oplmamik 发表于 2012-2-15 10:02:53

回复 5# zxxputian3


    百度收chm 这后面有参数
识字吗?

xuzhenjun130 发表于 2012-2-15 17:50:53

回复 2# oplmamik

HTMLHelp api,au3 怎么调用?
百度不出来

chm 的cmd参数不算,不管用的

xuzhenjun130 发表于 2012-2-15 20:23:50

Apparently, the actual search component (in the API) has NEVER worked!
Seehttp://support.microsoft.com/kb/241381
微软说不支持,此题无解了

oplmamik 发表于 2012-2-17 09:04:26

回复 4# xuzhenjun130


    哎!还不想用按键模拟的。。


在资源管理器中双击生成的C:\test\test.chm,在页面单击右键,在菜单中选择“属性”,在“属性”对话框中复制其中的“地址”(应该为mk: @MSITStore:C:\test\test.chm::/index.html)。将上面的地址粘贴到浏览器的地址栏中,如果正确,按回车可以在浏览器中看到正确的页面。
页: [1]
查看完整版本: au3如何调用HTMLHelp?(调用chm文件,并搜索关键字)【已解决】