5065366 发表于 2012-4-22 16:20:21

怎么样让做出来的程序打开最大化?[已解决]

本帖最后由 5065366 于 2012-4-24 00:33 编辑

代码:$oIE = ObjCreate("InternetExplorer.Application")
后面加什么参数能让它打开的时候最大化?

我要做的东西代码如下:#NoTrayIcon
#region ;**** 参数创建于 ACNWrapper_GUI ****
#PRE_Icon=ie.ico
#PRE_Outfile=ClearADIE.exe
#PRE_Compression=4
#PRE_Res_Comment=Www.Xp512.Com
#PRE_Res_Description=阳光之约工作室专用浏览器
#PRE_Res_Fileversion=1.0.0.0
#PRE_Res_LegalCopyright=Www.Xp512.Com
#PRE_Run_Tidy=y
#PRE_Run_Obfuscator=y
#Obfuscator_Parameters=/cv 0
#endregion ;**** 参数创建于 ACNWrapper_GUI ****
#endregion ;**** 参数创建于 ACNWrapper_GUI ****
;Global $g_eventerror = 0
;$oMyError = ObjEvent("AutoIt.Error","MyErrFunc")
$url = "http://www.baidu.com"
If $CmdLine == 1 Then $url = $CmdLine
RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{2BA8AE89-A9D8-40AA-91DA-37B1A407DF07}")
_OPEN($url)

;======================打开主页================================
Func _OPEN($url)
        RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3", "1601", "REG_DWORD", 0)
        $oIE = ObjCreate("InternetExplorer.Application")
        $oIE.visible = 1
        $oIE.Navigate($url)
EndFunc   ;==>_OPEN
;Func MyErrFunc()
;        $HexNumber=hex($oMyError.number,8)
;        $g_eventerror = 1 ; something to check for when this function returns
;Endfunc

user3000 发表于 2012-4-22 17:51:01

回复 1# 5065366


标题有岐义: 其实是想IE最大化吧?
测试过, WinSetState 不管用.
可以考虑用 -k 参数, 以全屏方式打开IE! 但此全屏模式不方便操作!
还可考虑把IE内嵌入一个最大化的窗口内, 就能轻易设置IE的大小!

yufei8051 发表于 2012-4-22 17:53:21

还没入门,不懂啊,绑定,帮顶

5065366 发表于 2012-4-22 17:57:54

我也是只知道写入注册表这一项,其实我的目的很简单,就是做一个这样的程序出来,打开的时候把里面的加载项删除,然后在桌面上生成一个Internet Explorer,把原来的IE隐藏起来。我不知道怎么实现。请高手帮帮忙。

5065366 发表于 2012-4-22 17:59:08

Browser Helper Objects下有很多,都可以加进去。

5065366 发表于 2012-4-22 18:03:07

汗。将就着用吧。窗口小就小了,菜单也不管了。

5065366 发表于 2012-4-22 20:18:01

找到了,加上这些参数就可以了,但不是最大化,只是铺满了屏幕        $oIE.left = 0
        $oIE.top = 0
        $oIE.height = @DesktopHeight - 30
        $oIE.width = @DesktopWidth

5065366 发表于 2012-4-22 20:20:48

应该还有两种方法可以,像WinSetState($title,"",@SW_MAXIMIZE)
但这样要声明变量,$title但是这步我不会。

user3000 发表于 2012-4-22 21:09:18

本帖最后由 user3000 于 2012-4-22 21:10 编辑

回复 8# 5065366

WinSetSate 的第一个参数是窗口的标题,
一般情况是直接输入该窗口标题(相关文字).
如果是经常性使用到该标题, 或者该标题过长不利于读写, 那应该考虑把该标题赋值给一个变量!

程序窗口标题 , 可用   "AU3窗口信息工具" 查看 (在Scite编辑器 按 Ctrl +F6)

xms77 发表于 2012-4-22 21:16:04

回复 8# 5065366
不需要申明变量吧,用Class试试
WinWaitActive("")
WinSetState("","",@SW_MAXIMIZE)

user3000 发表于 2012-4-22 21:25:47

回复 10# xms77

用类名模式在我机器上实现不了最大代,试过用完整窗口标题也不行!
不知道是不是IE给太多软件'强奸'了还是本来就不行!?

xms77 发表于 2012-4-22 21:32:09

回复 11# user3000
我试过可以才发出来的,win7系统IE9,IE窗口一定要激活才行的

user3000 发表于 2012-4-22 21:33:19

回复 12# xms77

那是我网吧机器的IE加载太多垃圾的原因!

xms77 发表于 2012-4-22 21:40:42

回复 13# user3000
是嘛!3000兄是网吧的Boss?

user3000 发表于 2012-4-22 21:44:06

回复 14# xms77

汗,   打份工, 养家糊口之辈罢了!
页: [1] 2
查看完整版本: 怎么样让做出来的程序打开最大化?[已解决]