无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 7830|回复: 14
打印 上一主题 下一主题

【分享】利用PECMD和MSPAINT实现零体积一键截图功能

[复制链接]
跳转到指定楼层
#
发表于 2010-3-23 16:21:23 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
原文出自:http://hi.baidu.com/nictense/blog/item/8236942549238f27d407420d.html

其实PE里截图用到的机会并不多,集成专业的截图软件实在没有必要。

大家都知道,按下 Print Screen 键可以将当前屏幕画面截取到剪贴板中,再打开附件中的画图,从菜单中依次选择“编辑”-〉“粘贴”,再根据需要截取、加工,保存即可。

不过这样操作起来毕竟有点麻烦,其实利用PECMD的SEND功能,即可实现一键截图功能。

这个问题最大的难处在于 Pring Screen 键是没有键值的,所以我们无法模拟这个按键,没关系,我们可以模拟SNAPSHOT键。

首先,我们需要创建一个INI文件,命名为SNAPSHOT.INI,放于PE目录的SYSTEM32目录下

文件源代码如下:
  1. WAIT 200
  2. SEND #44
  3. WAIT 100
  4. EXEC =!CMD /C "start /max mspaint.exe"
  5. WAIT 200
  6. SEND #17_,#86_,#86^,#17^
复制代码
接下来我们需要在PECMD.INI中的SHEL语句前增加一行,内容如下:

  1. HOTK #120,PECMD.EXE LOAD %WinDir%\SYSTEM32\SNAPSHOT.INI
复制代码
这里我们定义截图快捷键为F9,若想换其他键只需修改#120为其他键值即可。

好了,重新打包PE,启动后按F9试试吧!




本人近期发布帖子汇总,方便查询

【下载】Tango WinPE 2010 虎年珍藏版,32M新版XP3内核PE

【原创】为你的PE系统添加计算机型号和CPU识别功能

【原创】TXTSETUP.SIF减肥和检查错误批处理TSLite

【原创】玩转PE墙纸(开机随机显示墙纸+一键切换循环显示)

【下载】通用型PE一键美化工具PEBeautify+TangoPE美化包(PE美化,只需10秒)

【分享】利用PECMD和MSPAINT实现零体积一键截图功能

【原创】shell32.dll的终极精简&美化教程 (这个是很久前的了)

[ 本帖最后由 NicTense 于 2010-3-23 18:56 编辑 ]

评分

参与人数 2无忧币 +20 收起 理由
66369 + 10 我很赞同
网虫2008 + 10 原创内容

查看全部评分

14#
 楼主| 发表于 2010-3-27 22:37:19 | 只看该作者
原帖由 kendling 于 2010-3-27 08:57 发表
方法不错,可惜不支持自定义截图。


没有截图软件的时候的替代品而已,毕竟是0体积的

不过自定义截图其实是可以实现的啊,进了画图之后,你用裁剪要哪块就哪块
回复

使用道具 举报

13#
发表于 2010-3-27 08:57:52 | 只看该作者
方法不错,可惜不支持自定义截图。
回复

使用道具 举报

12#
发表于 2010-3-26 16:23:04 | 只看该作者
直接用截图工具,都很快呢?
回复

使用道具 举报

11#
 楼主| 发表于 2010-3-23 21:40:11 | 只看该作者
原帖由 slore 于 2010-3-23 21:35 发表
S2B 增加了直接截图保存。。。不只是剪贴板上的了,3KB。但是。。。大问题是BMP格式上,很郁闷呀。


直接截图是截屏幕还是截激活窗口,貌似我试过模拟不了alt+print screen

有空再找找有没有解决办法,不过截取当前窗口用得不多,最多手工解决,问题不大

如果单截一幅图,其实这个用画笔的功能挺好的,方便马上截取,加工

如果要连着截,就需要这样的工具了,保存格式,最好是png,因为不失真,其次是jpg
回复

使用道具 举报

10#
发表于 2010-3-23 21:35:10 | 只看该作者
S2B 增加了直接截图保存。。。不只是剪贴板上的了,3KB。但是。。。大问题是BMP格式上,很郁闷呀。
回复

使用道具 举报

9#
发表于 2010-3-23 21:13:32 | 只看该作者
原帖由 网虫2008 于 2010-3-23 18:11 发表


是呀,零体积的命题和思路都不错,我看也不用全部设置热键。
把自带的常用的自带工具整合后,做个小长条的按钮界面就行。

就当做系统扩展插件了...



天使的做法.对没有键值的...有参考意义.而不在截图的啊.
回复

使用道具 举报

8#
发表于 2010-3-23 18:11:52 | 只看该作者
原帖由 NicTense 于 2010-3-23 17:44 发表

零体积这个命题不错的,利用windows自带的命令行工具,系统函数,加上pecmd等,可以实现很多外置工具的功能...


是呀,零体积的命题和思路都不错,我看也不用全部设置热键。
把自带的常用的自带工具整合后,做个小长条的按钮界面就行。

就当做系统扩展插件了...
回复

使用道具 举报

7#
发表于 2010-3-23 17:46:56 | 只看该作者
感谢分享,楼主新作不断。
回复

使用道具 举报

6#
 楼主| 发表于 2010-3-23 17:44:42 | 只看该作者
原帖由 网虫2008 于 2010-3-23 17:36 发表


这就是给不经常用截图的朋友提供方便的,只是利用系统自带的功能,编代码把抓满屏后要做的操作结合起来,在画图里再进行剪切就行了。偶尔为之的,,,

要是经常要使用截图功能,或要临时做一系列的截图说 ...


如果要连续截图,必须调用一个能保存剪贴板的工具,比如NirCMD,但是NirCMD貌似有些杀毒软件会报警,所以得另寻出路
本来这个保存图片的功能应该是很简单的,但是我太久没有编程了,加上电脑里也没有相关的工具,这个就先搁置了
等偶研究一下powerbasic,再回头解决它。

零体积这个命题不错的,利用windows自带的命令行工具,系统函数,加上pecmd等,可以实现很多外置工具的功能
回复

使用道具 举报

5#
发表于 2010-3-23 17:36:21 | 只看该作者
原帖由 elai 于 2010-3-23 17:28 发表
这是将当前屏幕画面截取到剪贴板?如果截取窗口呢?


这就是给不经常用截图的朋友提供方便的,只是利用系统自带的功能,编代码把抓满屏后要做的操作结合起来,在画图里再进行剪切就行了。偶尔为之的,,,

要是经常要使用截图功能,或要临时做一系列的截图说明图片,用这个得把人累死,还是暂时添加个小的截图软件合适。
回复

使用道具 举报

4#
发表于 2010-3-23 17:28:51 | 只看该作者
这是将当前屏幕画面截取到剪贴板?如果截取窗口呢?

哦,看到了:按下 Alt + Print Screen 键可以只截取当前激活窗口,这个键暂时未找到模拟按键的替代方法。

先试试将当前屏幕画面截取到剪贴板!

[ 本帖最后由 elai 于 2010-3-23 17:31 编辑 ]
回复

使用道具 举报

3#
发表于 2010-3-23 17:28:51 | 只看该作者
这个方法和思路很值得学习呀,,把操作连贯起来和成一个热键.......
回复

使用道具 举报

2#
发表于 2010-3-23 17:16:50 | 只看该作者
以前用au3这样做过。。。
回复

使用道具 举报

1#
发表于 2010-3-23 16:28:26 | 只看该作者
真的可以?  马上试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-8-3 00:37

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表