aixi769776971 发表于 2024-2-28 18:11:19

AU3使用大漠插件绑定窗口找字的问题

本帖最后由 aixi769776971 于 2024-3-1 09:44 编辑

#AutoIt3Wrapper_UseX64=n


$dll_path = "C:\dm.dll"
Global $dm = _RegDM($dll_path)
$dm.SetDict(0,"C:\Users\Administrator\Desktop\AU3大漠\susu.txt")      ;设置字库
If IsObj($dm) Then
      $ver = $dm.Ver()
      $susu = ConsoleWrite('当前大漠插件版本:' & $ver & @CRLF)
      ;MsgBox(0, '', $susu)   
      
Else
      MsgBox(64, '提示:', '注册大漠插件失败!!!')
      Exit
EndIf

Func _RegDM($dll_path)
      Local $obj = ObjCreate("dm.dmsoft")
      If Not IsObj($obj) Then
                RunWait(@ComSpec & ' /c regsvr32 /s ' & FileGetShortName($dll_path), '', @SW_HIDE)
                $obj = ObjCreate("dm.dmsoft")
      EndIf
      Return $obj
EndFunc




Run('cmd /c calc', "", @SW_HIDE)
Sleep(3000)
;$yifei=WinWait ( "计算器" )
Local $intx,$inty                ;特别注意:此处只能定义,或者赋值为空,否则出错!!
$kexin=$dm.FindStrFast(0,0,2000,2000,"帮","000000-000000",0.9,$intx,$inty)
MsgBox(0,'',$kexin)
MsgBox(0,'',$intx)
MsgBox(0,'',$inty)
MouseClick('left',$intx,$inty,1)
;-------------------------------------------上面的代码是没有绑定窗口、可以正常用大漠插件找到计算器窗口里面的“帮”这个字--------------------------------------------------------
;请求解决AU3使用大漠插件绑定了窗口后、找不到窗口里面的字
;我使用的是3.1232免费版的大漠
          声明:本问题已解决、但是我在标题上面加不上已解决:face (2):
;-------------------------------------------下面的代码是绑定了窗口、使用用大漠插件找不到计算器窗口里面的“帮”这个字--------------------------------------------------------


#AutoIt3Wrapper_UseX64=n
#RequireAdmin


$dll_path = "C:\dm.dll"
Global $dm = _RegDM($dll_path)
$dm.SetDict(0,"C:\Users\Administrator\Desktop\AU3大漠\susu.txt")      ;设置字库
If IsObj($dm) Then
      $ver = $dm.Ver()
      $susu = ConsoleWrite('当前大漠插件版本:' & $ver & @CRLF)
      ;MsgBox(0, '', $susu)
      
Else
      MsgBox(64, '提示:', '注册大漠插件失败!!!')
      Exit
EndIf

Func _RegDM($dll_path)
      Local $obj = ObjCreate("dm.dmsoft")
      If Not IsObj($obj) Then
                RunWait(@ComSpec & ' /c regsvr32 /s ' & FileGetShortName($dll_path), '', @SW_HIDE)
                $obj = ObjCreate("dm.dmsoft")
      EndIf
      Return $obj
EndFunc




Run('cmd /c calc', "", @SW_HIDE)

$yifei=WinWait ("计算器")
$yifeiii=WinActivate($yifei)
$susu=$dm.bindwindow($yifeiii,"gdi","windows3","windows",0) ;绑定窗口
;MsgBox(0,'',$susu)


Sleep(3000)
Local $intx,$inty                ;特别注意:此处只能定义,或者赋值为空,否则出错!!

$kexin=$dm.FindStrFast(0,0,500,500,"帮","000000-000000",0.9,$intx,$inty)
MsgBox(0,'',$kexin)




afan 发表于 2024-2-28 18:11:20

aixi769776971 发表于 2024-2-29 17:41
代码麻烦发给我看下我看是我哪里弄错了

除两个文件路径外,只是把 102208460B0900E005009011820C400$六$0.0.26$11 加入你的字库,“帮” 字 改为 “六”字而已。

qop1830 发表于 2024-2-28 23:46:19

找字不是应该用ORC?

aixi769776971 发表于 2024-2-29 09:32:02

qop1830 发表于 2024-2-28 23:46
找字不是应该用ORC?

我是用自己做的字库、做游戏辅助用字库识别准确些

afan 发表于 2024-2-29 09:59:04

你所找的“帮”是菜单栏的“帮助”?没猜错的话大漠的绑定窗口范围是窗口的客户区,菜单刚好除外…

aixi769776971 发表于 2024-2-29 16:51:53

afan 发表于 2024-2-29 09:59
你所找的“帮”是菜单栏的“帮助”?没猜错的话大漠的绑定窗口范围是窗口的客户区,菜单刚好除外… ...

我要找的计算器菜单栏的“帮”、我试了不找菜单栏的字、发现也找不到

afan 发表于 2024-2-29 17:38:57

aixi769776971 发表于 2024-2-29 16:51
我要找的计算器菜单栏的“帮”、我试了不找菜单栏的字、发现也找不到

帮字不就是如我所说?特意试了比如找“六”字(102208460B0900E005009011820C400$六$0.0.26$11)正常。

aixi769776971 发表于 2024-2-29 17:41:58

afan 发表于 2024-2-29 17:38
帮字不就是如我所说?特意试了比如找“六”字(102208460B0900E005009011820C400$六$0.0.26$11)正常。 ...

代码麻烦发给我看下我看是我哪里弄错了

aixi769776971 发表于 2024-2-29 18:02:53

afan 发表于 2024-2-29 17:49
除两个文件路径外,只是把 102208460B0900E005009011820C400$六$0.0.26$11 加入你的字库,“帮” 字 改为 ...

我试了下 可以了 问题解决了 谢谢你:face (1):
页: [1]
查看完整版本: AU3使用大漠插件绑定窗口找字的问题