LUA脚本
lua 脚本中取命令行中的参数
直接使用 arg[0],arg[1],来取以空格分隔的命令参数
使用全局变量 cmd_params[name],取对应的值,例 --name="keli zhao" --path=E:/test
使用Lua扩展内置函数解析成指定类型的入参
lua 脚本中依然可用预置的全局变量
Lua 扩展内置函数
当使用Lua写扩展时可使用下面内置函数解析出扩展按规则传入的参数
getParamToBoolean(name,default)
取扩展参数,并转为boolean
getParamToNumber(name,default)
取扩展参数,并转为number
getParamToString(name,default)
取扩展参数,并转为string
fg_active_main_winows()
激活手势主窗口
fg_show_msg(string)
显示一个消息提示
fg_show_msg("一个提示消息");
fg_send_shortcut_group(string)
发送一组快捷键,参数为 json 格式
[ { "delay": 10, "type":0, "text":"文本测试", "buttons": [ { "vk_code": "0xA2", "vk_name": "Ctrl", "vk_flag":0 } ] } ]
vk_name 键名称
vk_code 键虚拟码
vk_flag 0点击,1按下,2弹起
type 0按键,1文本
text type为1时此项可用
local keyList=[[ [ { "delay": 10, "buttons": [ { "vk_code": "0xA2", "vk_name": "Ctrl" }, { "vk_code": "0x12", "vk_name": "Alt" }, { "vk_code": "0x4C", "vk_name": "L" } ] }, { "delay": 100, "buttons": [ { "vk_code": "0xA2", "vk_name": "Ctrl" }, { "vk_code": "0x53", "vk_name": "S" } ] } ] ]] fg_send_shortcut_group(keyList);
fg_get_clipboard_text()
获取当前剪切板文本内容
fg_set_clipboard_text(string text)
设置剪切板文本
fg_set_windows_top(int hwnd)
设置窗口置顶或取消,参数传 0 时,默认为当前鼠标下的窗口
fg_sleep(int time)
挂起/延时时间,单位毫秒
fg_get_mouse_windows_hwnd()
取当前鼠标下的窗口句柄
fg_get_mouse_windows_path()
取当前鼠标下的窗口可执行文件路径
fg_get_mouse_window_info()
取当前鼠标下的窗口信息
{ "title":"标题", "path":"文件全路径", "fileDir":"文件所在目录", "class":"类名", "hwnd":"句柄", }
fg_active_application(string fullPath,int isRunAs)
打开或激活应用或目录,fullPath 应用的全路径,isRunAs 是否使用管理员权限执行
fg_send_text(string text)
发送文本
fg_volume_inc()
音量加
fg_volume_dec()
音量减
fg_volume_switch()
静音/关闭静音切换
fg_brightness_inc()
屏幕亮度加,(部分屏幕不支持)
fg_brightness_dec()
屏幕亮度减,(部分屏幕不支持)
fg_run_cmd(string cmdStr,int isShow,int isReturn,string workPath)
执行命令行并取返回值,
cmdStr 命令,
isShow 是否显示命令行窗口,
isReturn 是否取返回值,
workPath 当前命令行工作的绝对路径,
特别注意取返回值时确保调用的程序会自动退出。
fg_get_pid_by_name(string processName)
通过进程名字取 Pid,多个相同名字进程只取首个,名字忽略大小写
fg_mouse_left_click(int x,int y,int type)
x,y坐标,全为0点,点击当前位置
type 0点击,1按下,2弹起
fg_mouse_middle_click(int x,int y,int type)
x,y坐标,全为0点,点击当前位置
type 0点击,1按下,2弹起
fg_mouse_right_click(int x,int y,int type)
x,y坐标,全为0点,点击当前位置
type 0点击,1按下,2弹起
fg_mouse_x1_click(int x,int y,int type)
x,y坐标,全为0点,点击当前位置
type 0点击,1按下,2弹起
fg_mouse_x2_click(int x,int y,int type)
x,y坐标,全为0点,点击当前位置
type 0点击,1按下,2弹起
fg_mouse_move(int x,int y,int isAbsolute)
x,y坐标
isAbsolute是否绝对坐标,0为相对坐标,从前位置移动指定的坐标距离,1则识x,y为绝对坐标
fg_mouse_wheel(int direction,int num,int times,int delay)
鼠标滚轮事件
direction 0:向下滚动 1:向上滚动,2向右滚动,3向左滚动
num 每次滚动距离
times 滚动次数
delay 多次滚动时延时默认 10 毫秒
fg_get_selected_files_path(int type)
type 0:返回选中所有的(文件/目录)路径,1:返回选中文件路径,2:返回选中目录路径
返回结构为一个元表,示例,取选中的第一个文件路径
local fileList=fg_get_selected_files_path(1); fg_show_msg(fileList[0]);
fg_get_mouse_window_info
返回当前鼠标下窗口信息
-- 取窗口信息title hwnd path class local info=fg_get_mouse_window_info(); -- 设置到剪切板 fg_set_clipboard_text(info["title"])
fg_cloud_download
下载备份
fg_cloud_upload
上传备份
fg_execute_javascript
执行浏览器js脚本代码
示例代码,取当前标签页标题并显示一个提示信息
title=fg_execute_javascript("document.title") fg_show_msg(title)
复制当前浏览器标签页地址
url=fg_execute_javascript("location.href") fg_set_clipboard_text(url) fg_show_msg("复制成功")
fg_path_file_exists(path):bool
判断文件否目录是否存在
fg_mkdirs(path):bool
自动创建多级目录
fg_get_selected_text():string
获取当前选中的文本
fg_open_dir(string path)
打开目录,如果入参为文件路径则打开文件所在目录且选中此文件
其它示例
-- 设置文本 fg_set_clipboard_text("Lua 变量"); -- 暂停1秒 fg_sleep(1000); -- 取文本 local tex=fg_get_clipboard_text(); --提示信息 fg_show_msg(tex);