创建宽带连接,前两个问题解决了,关于鼠标键盘锁定的问题求教
本帖最后由 xiezhuoyi 于 2014-2-17 15:05 编辑先贴出程序:#Region ACN预处理程序参数(常用参数)
#PRE_Icon= ;图标,支持EXE,DLL,ICO
#PRE_OutFile= ;输出文件名
#PRE_OutFile_Type=exe ;文件类型
#PRE_Compression=4 ;压缩等级
#PRE_UseUpx=y ;使用压缩
#PRE_Res_Comment= ;程序注释
#PRE_Res_Description= ;详细信息
#PRE_Res_Fileversion= ;文件版本
#PRE_Res_FileVersion_AutoIncrement=p ;自动更新版本
#PRE_Res_LegalCopyright= ;版权
#PRE_Change2CUI=N ;修改输出的程序为CUI(控制台程序)
;#PRE_Res_Field=AutoIt Version|%AutoItVer% ;自定义资源段
;#PRE_Run_Tidy= ;脚本整理
;#PRE_Run_Obfuscator= ;代码迷惑
;#PRE_Run_AU3Check= ;语法检查
;#PRE_Run_Before= ;运行前
;#PRE_Run_After= ;运行后
;#PRE_UseX64=n ;使用64位解释器
;#PRE_Compile_Both ;进行双平台编译
#EndRegion ACN预处理程序参数设置完成
#cs ____________________________________
Au3 版本: AU3中文版
脚本作者: 虫子樱桃
官方网站: http://czyt.blog.com
QQ/TM:
脚本版本:
脚本功能:
其他说明:
#ce _______________脚本开始_________________
_main()
Exit
Func _main()
Switch @OSVersion
Case "WIN_7"
_win7create()
Case "WIN_XP"
_xpcreate()
EndSwitch
MsgBox(0,"","创建完毕!",3)
EndFunc
Func _win7create()
Local $linkname
Local $title
Local $text
;0
Run("rasphone -a")
$title="Set up a new connection"
$text="宽带(&B)"
;1
WinWaitActive($title,$text)
WinActivate($title,$text)
Send("!b")
;2
$text="这个选项允许可以访问这台计算机的人使用此连接"
WinWaitActive($title,$text)
WinActivate($title,$text)
$linkname=ControlGetText($title,$text,"Edit3")
Send("!a")
Send("!c")
;ConsoleWrite($linkname)
FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"')
;好像用这种方法创建的快捷方式在WIN7下图标不够美观,有没有让图标美观的方法呢?
;RunWait(@ComSpec&" /c "&"rasphone -d "&'"'&"宽带连接 "&$linkname&'"',@WindowsDir&"\system32",@SW_HIDE)
;在XP下可以运行成功在WIN7下运行不成功,从ConsoleWrite($linkname)输出来看似乎是乱码的问题,应该如何解决呢?
EndFunc
Func _xpcreate()
Local $linkname
Local $title
Local $text
;0
Run("rasphone -a")
$title="新建连接向导"
$text="通过宽带连接到网络(&R)"
;1
WinWaitActive($title,$text)
WinActivate($title,$text)
Send("!r")
Send("!n")
;2
$text="单击“完成”来把它存入网络连接文件夹"
WinWaitActive($title,$text)
WinActivate($title,$text)
$linkname=ControlGetText($title,$text,"Edit1")
;$linkname='"'&$linkname&'"'
Send("{Enter}")
FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"')
RunWait(@ComSpec&" /c "&'rasphone -d "'&$linkname&'"',@WindowsDir&"\system32",@SW_HIDE)
EndFunc
在做的过程中遇到了3个问题
1.FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"')
;好像用这种方法创建的快捷方式在WIN7下图标不够美观,有没有让图标美观的方法呢?
2。;RunWait(@ComSpec&" /c "&"rasphone -d "&'"'&"宽带连接 "&$linkname&'"',@WindowsDir&"\system32",@SW_HIDE)
;在XP下可以运行成功在WIN7下运行不成功,从ConsoleWrite($linkname)输出来看似乎是乱码的问题,应该如何解决呢?
3.运行过程中万一有用户碰巧点了鼠标程序会终止运行,有没有办法程序运行期间暂时锁定鼠标键盘呢? 还是释放来的快 回复 2# fuldho
刚刚接触au3不久,释放是要怎么做? 这个源码创建的图标可以
前两个问题已经解决了,最有禁止输入的功能使用了blockinput能锁到最后无法解开是为什么?
最新修改_main()
Exit
Func _main()
Local $r=MsgBox(4+32,"询问","是否建立宽带拨号连接?","3")
;MsgBox(0,"",$r)
BlockInput(1)
Switch $r
Case 6
Switch @OSVersion
Case "WIN_7"
_win7create()
Case "WIN_XP"
_xpcreate()
EndSwitch
Case -1
Switch @OSVersion
Case "WIN_7"
_win7create()
Case "WIN_XP"
_xpcreate()
EndSwitch
Case Else
Exit
EndSwitch
BlockInput(0)
EndFunc
Func _win7create()
BlockInput(1)
Local $linkname
Local $title
Local $text
;0
Run("rasphone -a")
$title="Set up a new connection"
$text="宽带(&B)"
;1
WinWaitActive($title,$text)
WinActivate($title,$text)
Send("!b")
;2
$text="这个选项允许可以访问这台计算机的人使用此连接"
WinWaitActive($title,$text)
WinActivate($title,$text)
$linkname=ControlGetText($title,$text,"Edit3")
Send("!a")
Send("!c")
FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"',"",@WindowsDir&"\system32\imageres.dll","","114")
;好像用这种方法创建的快捷方式在WIN7下图标不够美观,有没有让图标美观的方法呢?OK
Sleep(1000)
;ShellExecute(@DesktopDir&"\"&$linkname&".lnk")
RunWait(@ComSpec&" /c "&'rasphone -d "'&$linkname&'"',@WindowsDir&"\system32",@SW_HIDE)
;在XP下可以运行成功在WIN7下运行不成功,从ConsoleWrite($linkname)输出来看似乎是乱码的问题,应该如何解决呢?
EndFunc
Func _xpcreate()
BlockInput(1)
Local $linkname
Local $title
Local $text
;0
Run("rasphone -a")
$title="新建连接向导"
$text="通过宽带连接到网络(&R)"
;1
WinWaitActive($title,$text)
WinActivate($title,$text)
Send("!r")
Send("!n")
;2
$text="单击“完成”来把它存入网络连接文件夹"
WinWaitActive($title,$text)
WinActivate($title,$text)
$linkname=ControlGetText($title,$text,"Edit1")
;$linkname='"'&$linkname&'"'
Send("{Enter}")
FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"')
Sleep(1000)
RunWait(@ComSpec&" /c "&'rasphone -d "'&$linkname&'"',@WindowsDir&"\system32",@SW_HIDE)
EndFunc 最好的办法就是不用blockinput哈 解决了我的这个问题。
FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"',"",@WindowsDir&"\system32\imageres.dll","","114")
这句加了这段就有个图标了【"",@WindowsDir&"\system32\imageres.dll","","114"】
学习了。
页:
[1]