xiezhuoyi 发表于 2014-2-15 22:37:28

创建宽带连接,前两个问题解决了,关于鼠标键盘锁定的问题求教

本帖最后由 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.运行过程中万一有用户碰巧点了鼠标程序会终止运行,有没有办法程序运行期间暂时锁定鼠标键盘呢?

fuldho 发表于 2014-2-16 07:46:53

还是释放来的快

xiezhuoyi 发表于 2014-2-16 08:22:39

回复 2# fuldho


    刚刚接触au3不久,释放是要怎么做?

1960025285 发表于 2014-2-16 10:19:26

这个源码创建的图标可以

xiezhuoyi 发表于 2014-2-17 15:04:19

前两个问题已经解决了,最有禁止输入的功能使用了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

menfan1 发表于 2014-2-22 16:00:27

最好的办法就是不用blockinput哈

jxdnshz 发表于 2014-2-23 12:12:53

解决了我的这个问题。
FileCreateShortcut(@WindowsDir & "\system32\rasphone.exe", @DesktopDir & "\"&$linkname&".lnk", @WindowsDir, " -d "&'"'&$linkname&'"',"",@WindowsDir&"\system32\imageres.dll","","114")
这句加了这段就有个图标了【"",@WindowsDir&"\system32\imageres.dll","","114"】
学习了。
页: [1]
查看完整版本: 创建宽带连接,前两个问题解决了,关于鼠标键盘锁定的问题求教