更新到 Windows11 22631.2050 后,资源管理器发生变化,运行本动作时会报错:
调试运行,报错 log 如下,貌似无法获取窗口正确路径,传入“窗口界面控制”的路径值为空。
101771.1.0.2.0获取窗口信息/查找窗口必须要是根窗口句柄才行 [in]失败后停止【值/表达式】False [in]目标窗口【值/表达式】foreground [out]根窗口句柄=>选择窗口的句柄2758224 [in]窗口位置包含不可见边框(阴影区域)【值/表达式】False [out]是否成功=>成功True 耗时:0ms 101781.1.0.2.1如果/否则没有经过资管就不发送 [in]如果【值/表达式】False 执行 False 分支, 共 2 步骤 - + 101781.1.0.2.1.1赋值false => {是否经过资管} [in]失败后停止【值/表达式】True [in]输入【值/表达式】[略] [out]输出=>是否经过资管False 耗时:0ms 101791.1.0.2.1.2步骤组发送 [in]忽略错误【值/表达式】False [in]使用多线程【值/表达式】False [in]调试运行时不输出调试内容【值/表达式】False - + 101791.1.0.2.1.2.0等待时间等待 100 ms 已禁用,跳过 101791.1.0.2.1.2.1模拟按键A(录入)LeftAlt+ [ D ] 已禁用,跳过 101791.1.0.2.1.2.2等待时间等待 300 ms 已禁用,跳过 101791.1.0.2.1.2.3如果如果是刚从资源管理器来的。中间不能隔一个其他窗口 [in]如果【值/表达式】True 执行 True 分支, 共 3 步骤 - + 101791.1.0.2.1.2.3.0获取窗口信息/查找窗口句柄指定的窗口 [in]失败后停止【值/表达式】False [in]目标窗口【值/表达式】fromHwnd [in]窗口句柄hWnd【变量 句柄】69960 [out]窗口标题=>路径Zotero Notebook [in]窗口位置包含不可见边框(阴影区域)【值/表达式】False [out]所有子窗口=>所有子窗口{"70048":"","69976":"Zotero Notebook","70012":"","70014":"","70016":"","70018":"命名空间树状控制项","70022":"导航窗格","5707202":"","1774786":"ShellView","13112852":"","3675502":"","7804404":"","398554":"","70052":""} [out]是否成功=>成功True 耗时:0ms 101801.1.0.2.1.2.3.1检查路径/获取文件信息{路径} [in]路径【变量 路径】Zotero Notebook [out]路径是否存在=>是否存在False 耗时:0ms 101811.1.0.2.1.2.3.2如果如果不对 [in]如果【值/表达式】True 执行 True 分支, 共 3 步骤 - + 101811.1.0.2.1.2.3.2.0词典操作{所有子窗口} 获取值列表 Key: [in]失败后停止【值/表达式】False [in]操作类型【值/表达式】valueList [in]词典【变量 所有子窗口】{"70048":"","69976":"Zotero Notebook","70012":"","70014":"","70016":"","70018":"命名空间树状控制项","70022":"导航窗格","5707202":"","1774786":"ShellView","13112852":"","3675502":"","7804404":"","398554":"","70052":""} [in]值【无输入】 [in]忽略键的大小写【无输入】False [out]结果=>备用的列表0: 1:Zotero Notebook 2: 3: 4: 5:命名空间树状控制项 6:导航窗格 7: 8:ShellView 9: 10: 11: 12: 13: 耗时:0ms 101821.1.0.2.1.2.3.2.1列表操作筛选(模糊匹配,输出到结果) {备用的列表} [in]列表【变量 备用的列表】0: 1:Zotero Notebook 2: 3: 4: 5:命名空间树状控制项 6:导航窗格 7: 8:ShellView 9: 10: 11: 12: 13: [in]操作类型【值/表达式】filterByDefault [in]序号【无输入】0 [in]长度【无输入】1 [in]值【值/表达式】地址: [in]按匹配程度排序【无输入】False [out]结果=>地址 耗时:0ms 101821.1.0.2.1.2.3.2.2替换文本普通(替换一种内容) => {路径} [in]操作类型【值/表达式】single [in]输入【变量 地址】 [in]转义“查找内容”【值/表达式】False [in]转义“替换为”【值/表达式】False [in]使用正则替换【值/表达式】False [in]忽略大小写【值/表达式】False [in]正则:单行【值/表达式】False [in]正则:多行【值/表达式】False 输入内容为空 [out]结果=>路径 耗时:0ms 101821.1.0.2.1.2.4如果如果刚是从Clover来的 [in]如果【值/表达式】False 不符合条件,跳过。 101821.1.0.2.1.2.5如果如果是刚从TC来的 [in]如果【值/表达式】False 不符合条件,跳过。 101831.1.0.2.1.2.6提示消息$={路径} [in]消息内容【值/表达式】 [in]类型【值/表达式】Info [in]最大行数【值/表达式】0 [in]风格【值/表达式】Default [in]点击命令【值/表达式】 耗时:19ms 102011.1.0.2.1.2.7窗口界面控制更新"另存为"或"打开"对话框的路径// [in]失败后停止【值/表达式】True [in]操作类型【值/表达式】UpdateSaveAsDialogPath [in]路径【变量 路径】 [in]自动创建文件夹【无输入】no 找到窗口,句柄:2758224 异常:长度不能小于 0。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 Quicker.Domain.Actions.X.BuiltinRunners.Sys.UiAutomationStep.GtfebpNUmfC(String , IActionLogger , AutoCreateDirMode ) 在 Quicker.Domain.Actions.X.BuiltinRunners.Sys.UiAutomationStep.UpdateSaveAsDialogPath(ActionExecuteContext context, ActionStep step, XAction action) 在 Quicker.Domain.Actions.X.BuiltinRunners.Sys.UiAutomationStep.<>c__DisplayClass67_0.zOsOczne4W5() 在 Quicker.Domain.Actions.X.XActionHelper.ExecuteCommonAction(ActionExecuteContext context, ActionStep step, XAction action, Func`1 actionFunc, Action successAction, Action failAction, StepInParamDef stopIfErrorParam, StepOutParamDef isSuccessOutputParam) 步骤(sys:uiautomation)执行失败,原因:长度不能小于 0。 参数名: length 停止动作:长度不能小于 0。 参数名: length 耗时:643ms 检测到了中止标志(OperationFailed),停止后续步骤执行。
没试过win11,如果win10还能用,那么就是win11的问题。可以去群里问问其他使用win11的是否有这种情况