强制chm最大化打开,一劳永逸(不知道那位大大有更方便的方法)[已解决]
本帖最后由 kyniel 于 2011-11-25 08:46 编辑我的两台电脑,使用chm文件的时候,打开的时候总是不能默认最大化打开。我可能是装的系统的原因,话说我的两台电脑都是xp,但不是同个封装啊,不知道其他人有没有这种情况。所以写了个au3自启动强制最大化来解决,发在这里希望能帮助有类似情况的朋友,同时哪位大大有更好的方法,希望赐教!#NoTrayIcon
If Not @Compiled Then
MsgBox(0,"","请先编译,然后运行.exe文件")
Exit
EndIf
HotKeySet("!{F10}","_quit")
If Not FileExists("D:\chmmax.exe") Then
FileCopy(@ScriptDir&"\chmmax.exe","D:\chmmax.exe")
EndIf
If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","chmmax")="" Then
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run","chmmax","REG_SZ","D:\chmmax.exe")
EndIf
While 1
If WinExists("") Then
Local $state=WinGetState("")
If BitAND($state,8) Then
WinSetState("","",@SW_MAXIMIZE)
EndIf
EndIf
WEnd
Func _quit()
Exit
EndFunc
上面是代码,编译以后,运行一下,以后开机就自启动了。要关闭就按shift+f10就行了。 鼠标一点的事情还自己编个程序啊! 回复 1# kyniel
这个不用什么程序也可以实现.
看看注册表CHM是怎么打开的,
HKEY_CLASSES_ROOT\chm.file\shell\open\command
REG_EXPAND_SZ值:"%SystemRoot%\hh.exe" %1
你的要求利用CMD命令可以搞定.start /max "" "%SystemRoot%\hh.exe" %1但是【HKEY_CLASSES_ROOT\chm.file\shell\open\command】这里有些系统是无法修改的.
所以修改【HKEY_CURRENT_USER】当前的用户信息.
HKEY_CURRENT_USER\Software\Classes\ 下添加信息就可以了.
RegWrite("HKEY_CURRENT_USER\Software\Classes\chm.file\shell\open\command", "", "REG_EXPAND_SZ", "cmd.exe /c start /max """" ""%SystemRoot%\hh.exe"" %1")
;删除
;~ RegDelete("HKEY_CURRENT_USER\Software\Classes\chm.file")
添加后打开CHM文件试试. 支持一下。有源码新手学习了 回复 3# lixiaolong
谢谢你的回复,看了一下确实打开.chm的文件,直接调用cmd命令最大化打开了,在scite编辑工具中按f1查看帮助文档(即非右键选择打开的其他方式)打开文件还是不能最大化打开,其实我也知道修改注册表肯定能达到这个效果,不过上次百度了一天,也没查到理想的方式。 回复 2# xms77
其实你的签名说明我的现状!
{:face (245):}
每次打开都要点一次最大化真的很麻烦! 最简单的方法就是修改注册表吧 回复 6# kyniel
能够想尽一切办法来偷懒的人其实一点都不懒! 楼上说的好{:1_508:}
支持个 本帖最后由 lixiaolong 于 2011-11-24 18:59 编辑
回复 5# kyniel
哈哈,我琢磨琢磨有解决办法了.
首先编译一个程序,内容是这样.
ShellExecute(@ScriptDir & "\AutoIt3Help.exe", "", "", "", @SW_MAXIMIZE)
把它的名字改为【AutoIt3HelpMaximize.exe.exe】,把它放在和【AutoIt3Help.exe】同一个目录下.
在【C:\Program Files\AutoIt3\SciTE\Properties】里找【au3.properties】这个文件用记事本打开.
找这个部分.command.help.$(au3)=$(autoit3dir)\AutoIt3Help.exe "$(CurrentWord)"
command.help.subsystem.$(au3)=2把它改为(先备份)command.help.$(au3)=$(autoit3dir)\AutoIt3HelpMaximize.exe "$(CurrentWord)"
command.help.subsystem.$(au3)=2保存后打开SciTE按F1.
这个还是有点问题。。。
我又测试了,程序内容改成这个没问题了.
Run("AutoIt3Help.exe", "", @SW_MAXIMIZE)
页:
[1]