很多画师朋友都有PhotoShop和Sai各种崩溃导致文件丢失,文件损坏而丢掉了辛辛苦苦的工作成果,写了这么个工具,可以定时自动保存Ps和Sai中正在编辑的文件,并且将最新保存的副本备份到C:\BackUpForPSD设置自动保存的间隔,需要的朋友拿走。文章最后有下载地址。

代码放到了github上面,需要的自取。
项目地址:https://github.com/kogodm/DesignerProtect

实现原理

PhotoShop部分

  • 使用PhotoshopCS6 的开发库PhotoshopTypeLibraryPhotoshopObjectLibrary提供的API直接对PhotoShop操作
  • 入口是app=newPhotoShop.ApplicationClass.ApplicationClass()
  • 调用 app.Documents[index].SaveAs()将打开的文档另存到备份目录
  • PhotoShop的库文件在Ps安装目录下:

sai && sai2部分

  • 利用Process.GetProcessesByName获取进程号
  • 使用EsayHook库Hook sai和sai2的一下WinApi调用
    • MoveFileA
    • GetFileAttributesA
    • GetFileAttributesW
    • MoveFileW
    • CreateFileW
  • 使用Win32 PostMessage接口定时向sai和sai2发送Ctrl+S消息
//向窗口发送Ctrl+S消息
IntPtr CTRL_KEY = new IntPtr(0x11);
uint KEY_DOWN = 0x0100;
uint KEY_UP = 0x0101;
IntPtr S_KEY = new IntPtr(0x53);
Win32.PostMessage(mainWindowHandle, KEY_DOWN, CTRL_KEY, IntPtr.Zero);
Win32.PostMessage(mainWindowHandle, KEY_DOWN, S_KEY, IntPtr.Zero);
Win32.PostMessage(mainWindowHandle, KEY_UP, S_KEY, IntPtr.Zero);
Win32.PostMessage(mainWindowHandle, KEY_UP, CTRL_KEY, IntPtr.Zero);
  • sai&&sai2在保存时会调用WinApi的MoveFile接口,sai调用MoveFileA,sai2调用MoveFileW
  • 在检测到MoveFile时,将刚保存的文件,拷贝到备份目录

请勿用管理员运行,目前只测试了64位win10其他系统如有问题,你可以在博客回复,或者无视
安装包下载地址

Ps和Sai文件自动保存,自动备份相关推荐

  1. CorelDRAW 文件的保存与备份(转)

    CorelDRAW 文件的保存与备份(转)[@more@] 1.2 快速入门(七) 文件的保存与备份 当你在为自己刚完成的.满意的绘图作品而洋洋自得的 时候,请千万不要忘记一件事 "保存文件 ...

  2. picpick截图工具自动保存自动命名设置的方法

    描述:picpick截图工具自动保存自动命名设置的方法 步骤: 右键图标,程序选项 文件名选项,可以设置自动保存的文件名 自动保存选项,勾选自动保存图像选项,选择保存路径

  3. vscode 自动保存 自动刷新

    Vs code 自动保存: 设置按钮: 常用设置第一个选择 afterDelay 下面的是自动保存的间隔 时间单位为毫秒. 自动刷新:弄不好livereload插件 所以选择liveserver插件 ...

  4. wps自动保存的备份文件查找路径【多次救急,亲测好用】

    1.文件--备份与恢复--备份中心 2.点击进入本地备份 3.本地备份里面的文件都是不同时间自动保存的备份,打开保存到本地即可 \这个备份功能好像EXCEL也有,改天研究了在更新到后面~ \备份功能关 ...

  5. mysql 备份成文件的脚本_Mysql自动全量备份脚本

    数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果.轻则程序逻辑出现BUG,重则程序崩溃,数据丢失.造成数据丢失的原因,主要有程序错误.人为错误.计算机失败.磁盘失败.灾难(如起火.地震)和 ...

  6. 服务器里文件表格如何自动备份,Excel电子表格自动备份的两种方法

    对于数据量大.数据重要性高的EXCEL文件,如果出现任何意外导致数据遭受损坏,那么,将是一件严重的问题. 平时我们在操作EXCEL时,应该养成良好的习惯,即让EXCEL自动备份,以防不测. 以下是两种 ...

  7. office文件自动保存

    title: office 文件自动保存 tags: office category: 电脑操作 office 自动备份 1.以 ppt 打开文件,然后选择左上角的 "文件",之后 ...

  8. cdr保存的内容计算机搜不到,CorelDRAW自动保存的文件在哪里?

    当CorelDRAW发生系统错误,导致软件崩溃后,很多小伙伴表示找不到自动保存的文件在哪里,关于这一问题,小编做统一解答. 操作步骤如下: 1.打开CorelDRAW X8软件. 2.选择" ...

  9. 当CAD异常关闭,如何找回自动保存的文件?

    CAD制图操作时,可能会由于电脑卡顿.系统死机或是制图软件不稳定等问题,出现CAD错误报告,CAD异常关闭.遇到这些类似的情况,如果没有及时保存,之前所做的CAD制图工作就废掉了.今天小编教大家一个好 ...

  10. 用FileYee轻松实现电脑文件夹双向自动同步备份?

    如果一份文件可以自动在你的2个存储硬盘里进行备份保存,你觉得如何呢?对于一个每天面对很多重要文件的上班族来说,每天要保存很多的资料文件.但是总是担心公司电脑的损坏,造成公司重要资料文件的全部丢失. 最 ...

最新文章

  1. 磁场对于电感路径检测的影响
  2. 双目立体视觉及正交偏振 3D 显示
  3. 电脑常见的VGA、DVI、PS/2、USB等接口知识笔记,值得收藏!
  4. 在 ASP.NET Core 中使用 HTTP 标头传播
  5. iframe异步加载_5种延迟加载图像的方法以帮助你提升网站性能与用户体验
  6. 28.2. AndroidManifest.xml
  7. 大文件数据导出(后台执行,自动生成)
  8. js插入元素的新方法insertAdjacentHTML
  9. linux网络适配器驱动程序怎么安装,英特尔?服务器适配器 — Linuxixgbe* 基础驱动程序概述和安装...
  10. 十二周二次课 12.6 Nginx安装 12.7 默认虚拟主机 12.8 Nginx用户认证 12.
  11. 登入ftp:500 OOPS: vsf_sysutil_bind, maximum number of attempts to find a listening port exceeded
  12. 国二计算机考试c语言试题及答案,计算机二级考试C语言试题及答案
  13. 排列组合的写法_数学中,排列组合A C P分别代表什么?求详细。
  14. 车轱辘APP提交到各应用市场的心得~
  15. 读李尚龙《你只是看起来很努力》摘录的句子
  16. php电商开发系统shopnc,shopnc二次开发(一),shopnc二次开发(_PHP教程
  17. Qt5 QFileDialog中文英文交界处乱码问题
  18. 【CS231n】斯坦福大学李飞飞视觉识别课程笔记(六):线性分类笔记(上)
  19. 鸿蒙三部曲 吞噬星空,我吃西红柿最新作品竟然是它?看来鸿蒙金榜第四名已有归属...
  20. 视频怎样转换html代码,超简单的视频格式转换方法,你会吗?

热门文章

  1. 苹果平板爱思助手检验安兔兔
  2. 小米android安装包下载安装,小米应用商店安装包下载
  3. python爬取微信运动_微信运动数据抓取(Python)
  4. html5的ajax上传图片,html5标准Ajax上传图片
  5. 统计学名词解释 —— 3. 「简单随机样本」、「联合分布」与「联合密度」
  6. Window同时兼容运行多版本谷歌浏览器chrome
  7. jdk7对list进行排序(按照list中entity的某个属性比如age)
  8. IDEA下配置安卓环境
  9. 友声条码秤对接软件_友声条码秤调试教程
  10. 光纤传输与网络技术习题整理