#cs ____________________________________
Au3 版本: 3.3.6.1
脚本作者: wozijisunfly
Email:
QQ/TM:
脚本版本: PCForYou-1.1
脚本功能: Control PC
#ce _______________脚本开始_________________
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
Global $pic,$mouse,$Flush_Btn,$click,$Left_Radio,$Right_Radio,$Click_One,$Click_Two,$num = 1
Global $ip_input,$port_input,$Flush_Btn,$OK_Btn
RunProcess()
Func RunProcess()
Local $Form,$Cancel_Btn,$pos,$ip_label,$port_label
;Opt("GUICloseOnESC", 1)
Opt("GUICoordMode", 2)
Opt("GUIResizeMode", 1)
Opt("GUIOnEventMode", 1)
;$WS_MAXIMIZEBOX ,$WS_EX_TOPMOST
$Form = GUICreate("MMForYou", 700, 580, -1, -1, BitOR($WS_MINIMIZEBOX,$WS_CAPTION,$WS_POPUP,$WS_SYSMENU))
GUISetOnEvent($GUI_EVENT_CLOSE, "SpecialEvents", $Form)
GUISetOnEvent($GUI_EVENT_MINIMIZE, "SpecialEvents", $Form)
GUISetOnEvent($GUI_EVENT_RESTORE, "SpecialEvents", $Form)
GUISetOnEvent($GUI_EVENT_MAXIMIZE, "SpecialEvents", $Form)
GUISetIcon(@SystemDir & "\mspaint.exe", 0);设置窗口图标
$ip_label = GUICtrlCreateLabel("IP地址:", 20, 6, 50, 20)
$ip_input = GUICtrlCreateInput("",0, -20, 100, 20)
$port_label = GUICtrlCreateLabel("PORT端口:", 10, -20, 55, 20)
$port_input = GUICtrlCreateInput("", 0, -20, 40, 20)
;确定ip连接
$OK_Btn = GUICtrlCreateButton("确定", 5, -20, 70, 25)
GUICtrlSetOnEvent($OK_Btn, "clickOK")
;更新桌面截图
$Flush_Btn = GUICtrlCreateButton("刷新", 5, -25, 70, 25)
GUICtrlSetOnEvent($Flush_Btn, "clickFlush")
;建立组
GUICtrlCreateGroup("左右键",-400,0,125,45)
;点击左键
$Left_Radio = GUICtrlCreateRadio("左键", -110, -30, 40, 25)
GUICtrlSetOnEvent($Left_Radio, "clickLeft")
;GUICtrlSetState($Left_Radio, $GUI_CHECKED)
;点击右键
$Right_Radio = GUICtrlCreateRadio("右键", 10, -25, 40, 25)
GUICtrlSetOnEvent($Right_Radio, "clickRight")
;建立组
GUICtrlCreateGroup("点击次数",30,-40,125,45)
;点击左键
$Click_One = GUICtrlCreateRadio("一次", -110, -30, 40, 25)
GUICtrlSetOnEvent($Click_One, "clickOne")
;点击右键
$Click_Two = GUICtrlCreateRadio("两次", 10, -25, 40, 25)
GUICtrlSetOnEvent($Click_Two, "clickTwo")
;就是退出喽
$Cancel_Btn = GUICtrlCreateButton("退出", 90, -25, 70, 25)
GUICtrlSetOnEvent($Cancel_Btn, "clickCancel")
;呈现第一个截图的图片 +6 可以给出一个source.jpg图片开始加载
$pic = GUICtrlCreatePic("C:\Control_PC\source.jpg", -424, 12, 700, 495)
;$pic = GUICtrlCreatePic("", -210, 0, 400, 195)
GUICtrlSetOnEvent($pic, "getPos")
If $num = 1 Then
GUICtrlSetState($Flush_Btn,$GUI_DISABLE)
GUICtrlSetState($pic,$GUI_DISABLE)
EndIf
GUISetState(@SW_SHOW)
While 1
Sleep(10)
;If FileExists("C:\Control_PC\newpic.jpg") Then
; FileMove("C:\Control_PC\newpic.jpg","C:\Control_PC\yespic.jpg")
; Sleep(1000)
; GUICtrlSetImage($pic,"C:\Control_PC\yespic.jpg")
;EndIf
WEnd
EndFunc
Func SpecialEvents()
Select
Case @GUI_CtrlId = $GUI_EVENT_CLOSE
FileDelete("C:\Control_PC\yespic.jpg")
Exit
Case @GUI_CtrlId = $GUI_EVENT_MINIMIZE
Case @GUI_CtrlId = $GUI_EVENT_RESTORE
;Case @GUI_CtrlId = $GUI_EVENT_MAXIMIZE
EndSelect
EndFunc
Func getPos()
$pos = MouseGetPos()
$num = 2
If ($click = 1 Or $click = 2) And (StringCompare($mouse,"left") = 0 Or StringCompare($mouse,"right") = 0) Then
MsgBox(0, "鼠标坐标 X,Y:", $mouse & " -- " & $pos[0] & " , " & $pos[1] & " -- " & $click)
GUICtrlSetState($pic,$GUI_DISABLE)
;分析窗口大小,按照比例还原给对端窗口,执行操作
;传送到server端 left/right##$pos[0]##$pos[1]##$click
Sleep(3000)
GUICtrlSetState($pic,$GUI_ENABLE)
If FileExists("C:\Control_PC\newpic.jpg") Then
FileMove("C:\Control_PC\newpic.jpg","C:\Control_PC\yespic.jpg")
Sleep(1000)
GUICtrlSetImage($pic,"C:\Control_PC\yespic.jpg")
EndIf
Else
MsgBox(0,"PCForYou", " ************ 请选择控制方式 ************ ")
EndIf
EndFunc
Func clickOK()
$ip = StringSplit(GUICtrlRead($ip_input),".")
$port = GUICtrlRead($port_input)
If $ip[0] <> 4 Then
MsgBox(0,"PCForYou","IP地址输入错误")
Return
EndIf
If StringLen($port) <> 4 Or StringRegExp($port, '\d', 1, 4) Then
MsgBox(0,"PCForYou","Port需要四位数字")
Return
EndIf
MsgBox(0,"PCForYou", GUICtrlRead($ip_input) & ":" & GUICtrlRead($port_input))
$returnCode = RunWait(@ComSpec & " /c " & "ping " & GUICtrlRead($ip_input))
;If IP 可用 就开启Button状态
$num = 0
GUICtrlSetState($OK_Btn,$GUI_DISABLE)
GUICtrlSetState($Flush_Btn,$GUI_ENABLE)
GUICtrlSetState($pic,$GUI_ENABLE)
;通过IP获取对端截图直接传送回来,在本端显示为yespic.jpg,并设置为当前图片
GUICtrlSetImage($pic, "E:\AutoA\chongji-20130222_211522468.jpg")
;Else IP 不可用 关闭Button状态
;MsgBox(0,"PCForYou","IP地址或Port端口号不正确!")
EndFunc
Func clickFlush()
;点击更新为对端截图,并传送回来,在本端显示为yespic.jpg,设置为当前图片
;RunWait("")
;Sleep(2000)
If FileExists("C:\Control_PC\newpic.jpg") = 1 Then
FileMove("C:\Control_PC\newpic.jpg","C:\Control_PC\yespic.jpg",1)
Sleep(1000)
GUICtrlSetImage($pic,"C:\Control_PC\yespic.jpg")
EndIf
GUICtrlSetState($Flush_Btn, $GUI_DISABLE)
;GUICtrlSetImage($pic, "E:\AutoA\aizhengxi-20130215_124811406.jpg")
Sleep(1000)
GUICtrlSetState($Flush_Btn, $GUI_ENABLE)
EndFunc
Func clickCancel()
FileDelete("C:\Control_PC\yespic.jpg")
Exit
EndFunc
Func clickLeft()
GUICtrlSetState($Left_Radio, $GUI_CHECKED)
$mouse = "left"
EndFunc
Func clickRight()
GUICtrlSetState($Right_Radio, $GUI_CHECKED)
$mouse = "right"
EndFunc
Func clickOne()
GUICtrlSetState($Click_One, $GUI_CHECKED)
$click = 1
EndFunc
Func clickTwo()
GUICtrlSetState($Click_Two, $GUI_CHECKED)
;GUICtrlSetState($Left_Radio, $GUI_CHECKED)
;$mouse = "left"
$click = 2
EndFunc
#include <ScreenCapture.au3>
If FileExists("C:\Control_PC\") <> 1 Then
DirCreate("C:\Control_PC\")
EndIf
Sleep(2000)
_ScreenCapture_Capture("C:\Control_PC\newpic.jpg")
Sleep(1000)
;$returnCode = RunWait(@ComSpec & " /c " & "ping 1.0.0.1 -n 1")
;MsgBox(0,"PCForYou",$returnCode)