分类 : 本站原创

小技巧@SourceInsight去除项目中的临时文件

SourceInsight这款优秀的代码查看编辑工具,确实为C程序员省了不少心。最近对某项目中的代码进行重构,没有SourceInsight这种利器怎么能行呢?在创建项目时,直接就选择了项目目录,以及子目录的扫描。添加起来是一点劲都不使,全部交给了SourceInsight的了,但存在一个问题,项目在编译时,会产生N多的临时性中间文件,类似于.obj、.lib、.pdb等文件,这些文件仅链接,调试用的。与代码查看没有关点关系,但在查看函数Reference,能查到很多相关符号,干扰代码的查看。

貌视SouceInsight也没有什么选项,来排除掉此类文件(如果您发现了,请告诉在下,谢谢。本人小站vcfans.com),通过几分钟发现一个简单办法,排除掉SourceInsight项目中的不必要文件。

某强大的资源管理器免击Patch代码

一个懒人的pitch.

免费的虚拟串口软件VSPM

现在笔记本来串口的少了,但在嵌入式Or工控方面,由于串口的便捷性,使用还是有很大市场的。上次分享过一份VC与串口的通信代码。那个类最好不要异模式,否则会有点问题,自己设个侦听线程Or启个Timer进行侦听,效果会好很多。

由于现在的笔记本,越来越娱乐性,带串口的不多了,给我们调试软件带来了麻烦。在网上找了一些虚拟串口的软件,要不就收费的,不要就是不好用,虚拟成功后,不能使用。

然后找到了这个软件VSPM,此软件功能和稳定性比较不错,关键还是免费的,用起来心里也安一点。主要原理在本机虚拟一个串口,会绑定一个端口。可以通过telnet的方式,与此串口进行通信。使用比较简单,下面大致说一下使用步聚。

1:启动VSPM软件
2:选择运行在Server模式。

3.一路Next后,就可以在本机使用telnet 120.0.0.1 6021与虚拟串口通信了。如果你写的应用程序,可以绑定相应的端口,与其进行交互。

驱动开发的几种编译环境配置法

驱动开发与Win32下的程序开发不同,没有一套智能的IDE环境,点点鼠标框架代码IDE就帮你生成好了。Windows下的开发为什么那么容易上手,Visual studio功不可莫。一帮懒人在MS的“悉心呵护”下产生了,身边很多做Win32应用程序开发的朋友,都不知道ml.exe和link.exe是搞什么的,只知道F7,F5了。驱动开发就不一样了,没一套现在的IDE和框架代码。和Win32 ASM一样,编译链接比较繁琐。根据网上的一些资料以及参考了一些驱动开发方面的书籍,总结以下几种方式。

又遇编码问题之JS乱码

Web开发中编码问题处理不好总是很头疼,特别与Ajax纠缠在一起时,更容易出乱。前一段时间做一个Asp.net项目时遇到的编码问题。Asp.Net页面使用UTF-8乱码解决方案,今天在做PHP的一个小程序时也遇到乱码问题。

问题描述:

1.前台页面编码方案未知,可能是utf-8,也可能gb2312等编码方案。由于页面的前台并不是我做的,无法规定编码方案。
2.我用PHP生成的js代码是utf-8的,且其中包含有汉字。
症状:
当前台页面与我生成的JS不同时,将导致乱码。

VS2005手工根据dll产生lib

在程序使用Dll有两个加载方式,一种是动态方式,就是LoadLibrary载入Dll,然后用GetProcAddress来加载需要使用的Dll函数。另一种就是静态连接方式,将dll生成的lib,加入到工程中,然后使用时就像使用Win API一样使用。

今天我们不讨论动态载入的方式,我们采用静态载入的方式。但有一个问题,由于很多Dll发布的时候,根本就不提供lib,也或许你在使用一个未公开的dll,没有lib我们就不能静态加载,我手工来生成吧。

发布PE格式简易解析器V1.0(含源码)

程序简要说明:

可以解析出PE各个部分的数据解析出来用于分析,主要包括基本数据段、数据目录、区段信息、导入表、导出表、重定位表、资源表。可以对一些陌生程序在运行前进行查看,以免运行了一些恶意程序。

如果你对Windows下的加密解密感兴趣或想DIY可执行文件的话,可以查看本程序的数据解析部分的代码。网上的零星代码,我好像没找到这么全的,能包括导入表、导出表、重定位表、资源表等解析。

还是侯老的那句话:“源码之前 了无秘密

koomail用户数据丢失解决方案

清明回老家祭祖回来, 打开机器Koomail提示”用户数据丢失”,进去后Koomail里面空空如也,我心哇凉哇凉的呀.

到Koomail官网的FAQ上也没找到,到其论坛里搜了一圈,只有版主留下的QQ,需要远程协助,这多麻烦人家呀.还是我自己折腾吧.

对话框内部控件自动缩放类

当对话框中控件数量过多,且需要进行缩放的时,需要手工在Onsize中为每个控件位置和大小的计算,实现繁琐。本文的主要思想来自网上的一篇资料,但由于转载已造成数据的不完整,我根据该文章的思想重新实现,且补充完整了该类。

雪城.Excel2003.比较工具修改版

由于工作关系需要对大量Excel文档进行处理,林大侠找到了一份Excel比较工具:“雪城.Excel2003.比较工具”,我在雪域这个款工具基础上增加了合并功能,即“向左复制”、“向右复制”、“向左全复制”和“向右全复制”。

在我修改部分可能还存一些Bug,如果在修改部分出现问题,请给到小站www.vcfans.com留言或给我邮件lonkil~AT~gmail.com。感谢jfxwc(雪城)mailto: jfxwc_@_163.com,为我们提供这样优秀的比较Excel比较工具。

转载请注明出错,如果你对本分代码进行修改,请保留原作者版本说明部分的完整性,谢谢。

Excel工具栏的自定义及保存

关于自定义工具栏的保存,网上有很多文章介绍,主要的方法是将C:\Documents and Settings\UserName\Application Data\Microsoft\Excel\Excel11.xlb(C表示你的系统盘),文件拷贝出来,移到别的机器上。这种方法显得有一些麻烦,还拷贝文件比较麻烦。是否有什么方法,将自定义的工具栏与Excel关联起呢?通过查阅了MSDN,我得到以下方法:

Acronis True Image恢复硬盘数据

用了将近四年硬盘终于归西了,第二天就去我哥们那拿了一块回来,以前总是以为自己的机器性能上不来,也知道硬盘有问题,没想换了一块新的硬盘,性能提升那么多。这就反映了一个问题,为什么以前同样是SATA接口,8M缓存的盘子会那么慢呢?我第一反映就找那哥们,这小子拿假的盘子给我,因为第一块盘子也是在他那拿的。后来才知道影响速度的一个主要原因是SATA与SATA2的差别,当然不可否认以前那块盘子,也有问题,读写的时候吱吱直响。

新硬盘换上不了错,关键是如果把以前老数据给拷出来,那个老盘子我是不敢再用装重要数据了。这还不简单呀,挂个双硬盘不就直接拷出来了?我在拷贝过程遇到麻烦,折腾了好长时间。

症状是这样的,进系统可看到每个盘符,在读取老硬盘的文件列表时狂慢,在进行拷贝的时候,出现假死,现在看了是硬盘的坏道太多引起的。也就是数据可以看到,不过根本拷贝不出来。我把常用的方法都试遍了,就是拷不出来。采用一些硬盘对拷的小工具啦,安全模式啦,安全模式带命令行拷贝啦,全部败下阵来了,我也没辄了。这时就开始疑神疑鬼了,是不是我电源代电不足呀,是不是数据线问题呀,把硬件能排除的也全排除了。

大数四则运算支持浮点

前一段时间写了一个大数的四则运算,主要思路就是将大数转成字符串进行运算。这种方式虽然效率不太高,但在某些场合,由于种种原因,系统的四则运算,不满足要求时,这种方式到是派上了用场。

看到网上也有类似的计算方法,不过好像不支持浮点,我写了一个支持浮点的。

实现方式,纯C + 几个字符串运行库。

IDE: VC6.0

Bug肯定多多,如果你在观看代码或使用时,发现Bug请即时和我联系,当然如果你肯在这份代码上作相应的优化,请将优化后的版本也发一份给我,Thx.

VC三两句话实现字体描边和空心效果

最近的项目需要对字体进行描边,也就是将字体缕空。为了实现不同桌面背景图使字体看上去清楚,目前通用的解决方案就是将字体描边。关键现在这款芯片的GUI开发包功能比较弱,一些特殊效都需要自己手动实现,汗。要实现这个效果的第一个想到的解决方案就是将系统字体的点阵取出,进行边缘检测出来,进行处理,运算的开销不小,而且处理起来麻烦,国际化也是个麻烦。

template static 连接错误LNK1120,LNK2019

我在整理代码时将一组常用函数打包成一个utility类,采用的方案就是静态化成员函数.但是遇到到了Link错误,原以为这个和以前的Link错误一样容易解决(又见link错误之LNK1104,VS2005中郁闷的lnk2001和lnk2019),没想到试了各种办法都失败,仅仅能编译通过,Link时不同的编译器产生不同的错误,VS6产生LNK1120,VS8产生LNK2019.