zhuchaowe / dm.dll

JS版按键精灵(大漠插件)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

dm.dll

基于大漠插件封装的JS版按键精灵!从此可以用JS写自动脚本了~

使用

建议使用typescript来调用本插件,插件内置了很多有用类型,你可以获得更好的代码提示

请务必使用管理员身份运行node,因为大漠插件的注册和某些后台绑定模式需要管理员权限

环境

  • windows平台

  • node <= 10.8.0(依赖winax最高支持的编译版本,并可能需要32位node,请自行测试)

  • 预装windows-build-tools编译环境

    // 管理员身份运行
    npm install --global --production windows-build-tools --add-python-to-path
    

安装

npm install dm.dll --save

API

本插件的api基本同大漠说明文档保持一致,稍有改动的部分也会在后文指出,所以你可以对照它来查看对应api的详细说明

目前只封装了大漠插件最常用的功能,API太多,待整理...不过如果你需要的api本插件没有提供,你可以通过如下方式直接调用大漠插件的api

// node
// const dm = require('dm.dll')
// typescript
import dm = require('dm.dll')
console.log(dm.dll.ver())

基本设置

  • getPath (): string
  • setPath (path: string): DmRet
  • setErrorDisplay (flag: ErrorDisplay): DmRet

    同大漠插件的SetShowErrorMsg

窗口

  • findWindow (className: string, title: string, parentHWnd?: number): number | undefined

    增强了原生findWindow的功能,你可以直接传入一个父窗口句柄来查找子窗口句柄

  • enumWindow (className: string, title: string, filter: number, parentHWnd = 0): number[]
  • getWindow (hWnd: number, flag: GetWindowFlag): number
  • getPointWindow (x: number, y: number): number
  • getClientSize (hWnd: number): Size
  • moveWindow (hWnd: number, x: number, y: number): DmRet
  • setWindowSize (hWnd: number, width: number, height: number): DmRet
  • setWindowState (hWnd: number, state: WindowState): DmRet
  • sendPaste (hWnd: number): DmRet
  • sendString (hWnd: number, content: string): DmRet

后台

键鼠

  • setMouseRange (x1: number, y1: number, x2: number, y2: number): void

    不同于dm.dll.LockMouseRect该方法只会限制moveTo的活动范围,不传参则取消限制

  • getCursorPos (): Coordinate
  • getKeyState (keyCode: number): KeyState
  • moveTo (x: number, y: number): DmRet
  • leftClick (): DmRet
  • leftDoubleClick (): DmRet
  • leftDown (): DmRet
  • leftUp (): DmRet
  • rightClick (): DmRet
  • rightDown (): DmRet
  • rightUp (): DmRet
  • wheelDown (): DmRet
  • wheelUp (): DmRet
  • keyPress (keyCode: number): DmRet
  • keyDown (keyCode: number): DmRet
  • keyUp (keyCode: number): DmRet

图色

  • capture (x1: number, y1: number, x2: number, y2: number, fileName: string)
  • findPic (x1: number, y1: number, x2: number, y2: number, picName: string, deltaColor: string, sim: number, dir: FindPicDir): FindRet | undefined
  • findPicEx (x1: number, y1: number, x2: number, y2: number, picName: string, deltaColor: string, sim: number, dir: FindPicDir): FindRet[]
  • getColor (x: number, y: number): string
  • getColorNum (x1: number, y1: number, x2: number, y2: number, color: string, sim: number): number
  • getAveRGB (x1: number, y1: number, x2: number, y2: number): string
  • findColor (x1: number, y1: number, x2: number, y2: number, color: string, sim: number, dir: FindDir): Coordinate | undefined

文字识别

  • getNowDict (): number
  • setDict (index: number, file: string): DmRet
  • findStr (x1: number, y1: number, x2: number, y2: number, string: string, colorFormat: string, sim: number): FindRet | undefined
  • ocr (x1: number, y1: number, x2: number, y2: number, colorFormat: string, sim: number): string
  • getWords (x1: number, y1: number, x2: number, y2: number, colorFormat: string, sim: number): OcrRet | undefined

系统

  • getScreenSize (): Size

    获取屏幕大小,该函数合并了GetScreenWidth和GetScreenHeight

About

JS版按键精灵(大漠插件)


Languages

Language:TypeScript 100.0%