按键精灵参考代码
Call 大漠注册()// 实例大漠插件Set dm = createobject("dm.dmsoft")// 以下代码把全局路径设置到了c盘根目录(设置附件的录制)dm_ret = dm.SetPath("c:\test_game")////Hwnd = Plugin.Window.Find("Windows.UI.Core.CoreWindow", "Microsoft E...
·
Call 大漠注册()
// 实例大漠插件
Set dm = createobject("dm.dmsoft")
// 以下代码把全局路径设置到了c盘根目录(设置附件的录制)
dm_ret = dm.SetPath("c:\test_game")
//
//Hwnd = Plugin.Window.Find("Windows.UI.Core.CoreWindow", "Microsoft Edge")
//Hwnd = Plugin.Window.Find("Notepad", 0)
Hwnd = Plugin.Window.Find("Chrome_WidgetWin_1", 0)
TracePrint Hwnd
// 绑定大漠插件
dm_ret = dm.BindWindow(Hwnd, "dx", "windows", "windows", 0)
//按键命令
dm.KeyPress 65
dm_ret = dm.SetWindowSize(hwnd, 1300, 600)
Delay 500
dm.MoveWindow hwnd,0,0
// 找图命令
dm_ret = dm.FindPic(28,9,244,212,"刷新.bmp","000000",0.9,0,intX,intY)
If intX >= 0 and intY >= 0 Then
dm.MoveTo intX, intY
Delay 1500
dm.LeftDown
Delay 1500
dm.LeftClick
End If
// 设置谷歌浏览器的大小
//HwndEx = Plugin.Window.SearchEx("Chrome_WidgetWin_1",0,0)
//TracePrint "查找到符合的窗口句柄为:"& HwndEx
//Hwnd = Split(HwndEx, "|")
//If UBound(Hwnd)>=0 Then
// i=0
// For UBound(Hwnd)
// sText = Plugin.Window.GetText(Hwnd(i))
// TracePrint stext
// If stext > "" Then
// Call Plugin.Window.Size(Hwnd(i), 900, 100)
// Delay 500
// Call Plugin.Window.Move(Hwnd(i), 0, 0)
// Delay 1000
// End If
// i=i+1
// Next
//End If
//RunApp "C:\Program Files\Sigma-RT\Total Control\total_control.exe"
//sRect = Plugin.Window.GetClientRect(Hwnd)
//Dim MyArray
//MyArray = Split(sRect, "|")
//L = Clng(MyArray(0))
//T = Clng(MyArray(1))
//R = Clng(MyArray(2))
//B = Clng(MyArray(3))
//MoveTo L + 904, T + 624
//Delay 200
//LeftClick 1
//
//Do
// Hwndmima = Plugin.Window.Find(Notepad, "无标题 - 记事本")
// If Hwndmima <> 0 Then
// Exit Do
// TracePrint "找到密码窗口"
// End If
// Delay 2000
//Loop
//MsgBox "查找到的父窗口句柄为:"& Hwnd
// 抓抓工具延时截图行可以点击键盘商的PrintScrieen按键
// 找图可以一次找多张图片 先找到先返回
dm.UnBindWindow
Function 大漠注册()
// 首先打包dm.dll和RegDll.dll到附件,当然如果你还有其它资源(字库,图片等)也可以一并打包
// 这个need_ver作为本脚本需要使用的插件版本. 如果要换插件时,记得更改这个值.
need_ver = "3.1233"
// 插件需要用到atl系统库,有些XP精简系统会把atl.dll精简掉. 为了防止注册失败,这里手动注册一下atl.dll
set ws=createobject("Wscript.Shell")
ws.run "regsvr32 atl.dll /s"
set ws=nothing
// 释放附件>>>>>>>>>>>>>>>>>>>
// 这里选择c盘的test-_game作为插件的基本目录 也就是SetPath对应的目录。所以所有资源都释放在此目录.
PutAttachment "c:\test_game","*.*"
// 这里要用到RegDll来注册插件,所以必须释放到Plugin. 但是切记不能把dm.dll释放到Plugin.那会导致插件失效.
PutAttachment ".\Plugin" ,"RegDll.dll"
// 插件注册开始>>>>>>>>>>>>>>>>>>>
// 下面开始注册插件,先尝试用RegDll来注册.这里必须使用绝对路径。以免有别人把dm.dll释放在系统目录.造成版本错误.
Call Plugin.RegDll.Reg("c:\test_game\dm.dll")
// 这里判断是否注册成功
set dm = createobject("dm.dmsoft")
ver = dm.Ver()
if ver <> need_ver then
// 先释放先前创建的dm
set dm = nothing
// 再尝试用regsvr32 来注册. 这里必须使用绝对路径。以免有别人把dm.dll释放在系统目录.造成版本错误.
set ws=createobject("Wscript.Shell")
ws.run "regsvr32 c:\test_game\dm.dll /s"
set ws=nothing
Delay 1500
// 再判断插件是否注册成功
set dm = createobject("dm.dmsoft")
ver = dm.Ver()
if ver <> need_ver then
// 这时,已经确认插件注册失败了。 弹出一些调试信息,以供分析.
messagebox "插件版本错误,当前使用的版本是:"&ver&",插件所在目录是:"&dm.GetBasePath()
messagebox "请关闭程序,重新打开本程序再尝试"
endscript
end if
end if
// 插件注册结束<<<<<<<<<<<<<<<a
End Function
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献15条内容
所有评论(0)