sharex可实现截图到上传的一体化自动处理,需配置快速任务链、绑定热键、启用静默模式、定制任务设置及使用宏脚本扩展逻辑。

如果您希望在ShareX中实现从截图、标注、保存到上传的一体化自动处理,但当前操作仍需手动点击多个步骤,则可能是由于快速任务(QuickTask)未正确绑定或任务链触发条件缺失。以下是解决此问题的步骤:
一、配置预设快速任务链
ShareX通过QuickTaskInfo.cs定义的任务模板控制截图后执行的动作序列,系统默认提供“保存+上传+复制链接”等组合,但需确保其被正确分配至热键或捕获动作。
1、启动ShareX,右键托盘图标选择「快速任务」→「编辑此菜单」。
2、在QuickTaskMenuEditorForm中点击「添加」,输入任务名称如“博客图稿全自动”。
3、在「截图后动作」中勾选:标注图像、保存到文件、上传到主机。
4、在「上传后行为」中勾选:复制URL到剪贴板、在浏览器中打开URL。
5、点击「确定」保存,该任务将出现在托盘菜单中,可直接调用或绑定热键。
二、绑定热键触发完整工作流
热键是启动自动化任务链的入口,必须将自定义快速任务与唯一快捷键关联,否则无法一键触发全流程。
1、进入ShareX设置 → 「快捷键设置」→ 展开「快速任务」分类。
2、双击「运行快速任务」项,在弹出窗口中选择刚创建的“博客图稿全自动”任务。
3、按下新快捷键组合,例如Ctrl + Alt + S,确认无冲突提示。
4、退出设置,按该快捷键即可立即执行:截图→弹出标注界面→自动保存→上传→复制链接→打开浏览器。
三、启用静默模式跳过交互环节
若标注步骤仍需人工干预,可通过静默模式(-silent)配合命令行跳过所有UI弹窗,实现真正无人值守的批处理流程。
1、打开ShareX安装目录,确认ShareXCLIManager.cs已编译生效(通常位于ShareX.exe同级路径)。
2、新建文本文件,重命名为auto_blog_screenshot.bat,写入以下内容:
3、ShareX.exe -silent -region -aftercapture "SaveImageToFile|AnnotateImage|UploadImageToHost" -afterupload "CopyURLToClipboard|OpenURLInBrowser"
4、双击运行该批处理文件,ShareX将在后台完成区域截图及全部后续动作,不显示任何界面。
5、验证结果:检查目标保存路径是否存在带时间戳的标注图,并确认剪贴板中已存入图床URL。
四、基于任务设置(TaskSettings)定制行为逻辑
TaskSettings.cs控制每个动作的细粒度参数,例如是否自动关闭标注窗口、文件命名规则、上传失败重试次数等,直接影响工作流连贯性。
1、在ShareX设置中进入「任务设置」→「截图后任务」选项卡。
2、勾选「截图完成后自动关闭对话框」以禁用标注窗口的手动确认步骤。
3、展开「文件命名」区域,设置命名格式为:%yyyy-MM-dd_%HHmmss_%AppName_screenshot。
4、在「上传设置」中启用「上传失败时重试3次」并勾选「跳过已上传相同文件」。
5、返回主界面,点击「测试任务」按钮,观察日志面板是否显示“AnnotateImage → SaveImageToFile → UploadImageToHost → CopyURLToClipboard”连续执行成功。
五、使用宏脚本扩展条件分支逻辑
当标准任务链无法满足“仅对特定应用截图时启用水印”等条件判断需求时,需借助宏脚本(MacroScript)注入动态逻辑,该功能由MacroManager.cs驱动。
1、在ShareX设置 → 「高级」→ 「宏脚本」中点击「启用宏脚本支持」。
2、点击「编辑宏脚本」,在OnCaptureStart事件中插入C#代码片段:
3、if (ActiveWindowProcessName == "chrome.exe") { TaskSettings.AfterCaptureTasks |= AfterCaptureTasks.AddWatermark; }
4、保存脚本并重启ShareX,此后仅当Chrome为活动窗口时,截图才会自动叠加水印。
5、同样可在OnUploadSuccess事件中添加:if (UploadHost == "smms") { Clipboard.SetText("SMMS:" + URL); },实现主机识别后定制剪贴板内容。











