之前博客在香港的空间放着好好的,某天到期了没有任何提醒就删掉了整个空间,后来才发现IDC都倒闭了。。。搞鸡毛啊,备份还是去年5月份的,拖了几个月又搞起来了。。。 这都N次博客不能访问了。。。为了弥补这次的失误,未来一个星期内发一些犀利的玩意。。。看来以后不能偷懒了,要尽快点做备份。。。
最近工作中要用到截屏,都知道使用BitBlt截取到的数据是BMP编码,一个1024x*的桌面就要2M多,转换为jpg编码大小是100K左右,gif根据quality也会很小。
但是网上找到的转码都会生成一个临时文件,比如将BMP保存成文件后,建立编码器然后对文件编码,还有的就是编码器编码完后直接就生成了文件,这个明显不符合我们的需求,我们需要的就是内存中截取,内存中转换。
经过一上午的资料查询,搞定了这个玩意。大致流程是先BitBlt到内存BMP编码的数据,然后转换为数据流(Stream),建立一个编码器直接对流进行编码,最后将流转换为buffer,最后生成的buffer可以直接保存成jpg后缀的文件,直接打开即可查看。
...
网上找到的这份代码,添加IE的可信站点和受限站点有两种方法,一种是调用IE COM的某某,没细看,再了就是这个方法,直接写注册表。。。
不多说了 ,直接上代码:
/************************************************************************/
...
由于工作关系,最近转投VC的开发了。。。当然,还是要从最近本做起的。最近跟网络这块接触较多,写了两段小函数。
获取本机MAC,网上的代码都写烂了,但是异常处理不太好,比如多网卡等情况,于是自己写了一段简单明了靠谱的代码。
具体流程为先获取自己程序所在的网络的网络名,然后根据网络名获取IP,最后sendarp得到MAC。思路清晰。。。。
代码如下:
CString GetLocalIP()
...