<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/jun_01</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; jun_01]]></copyright><item><title><![CDATA[又谈《Windows核心编程》]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1787828</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1787828</guid><author>jun_01</author><pubDate>Mon, 17 Sep 2007 10:25:00 +0800</pubDate><description><![CDATA[Windows核心编程是一本很有名的书。 这本书有29章,里边讲了很多有用的东西.但是,在中国,使这本书风靡的,只是因为其中的一章--第22章.尤其是那章提供的一个类，已经有无数人使用了它，有无数人讨论、转载它。而这本书谈到的其它知识，比如UNICODE、比如错误处理，却鲜有人知。看来，在中国出版书，一定要加点噱头才行，呵呵。]]></description><category></category></item><item><title><![CDATA[用消息队列在vc和c#程序之间通信]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1725909</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1725909</guid><author>jun_01</author><pubDate>Sat, 04 Aug 2007 12:24:00 +0800</pubDate><description><![CDATA[自动有了c#，经常会觉得vc下有些东西太麻烦。比如消息队列，c#只要数行语句就能访问，而vc代码量要大得多。我至今都没弄明白vc下访问消息队列的完整方法。vc和c#操作同一个消息队列，俺已经是第二次遇到了，遗憾的是第一次就完全没弄明白vc端的body部分处理，而且留下的印象也不深，这次再用时竟然无处下爪，而上次的代码也找不到了，我哭。无奈只好上网找例子。这次总算是硬着头皮搞出了一个使用body通信]]></description><category></category></item><item><title><![CDATA[我被字符编码方式撞了一下腰]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1725869</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1725869</guid><author>jun_01</author><pubDate>Sat, 04 Aug 2007 11:59:00 +0800</pubDate><description><![CDATA[一直以为自己对UNICODE，UTF-8，ASCII，ANSI很懂。浑浑噩噩过了这么久竟然也没闹出什么笑话，更要命的是还指点过不少人。直到有一天，要用到GSM模块，要实际把文本转换为UTF-8的二进制串，才让我大跌眼镜，原来自己之前的无数认识都是错误的，庐山瀑布汗一个。主要错误总结如下：1，c#中的System.Text.Encoding.ASCII和System.Text.Encoding.De]]></description><category></category></item><item><title><![CDATA[换工作前的留念！]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1538788</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1538788</guid><author>jun_01</author><pubDate>Fri, 23 Mar 2007 15:15:00 +0800</pubDate><description><![CDATA[    最后一次在这台电脑上打字了， 利用上班时间写点东西，再占老板一次“便宜”^_^。再过几个小时，网管就会过来把电脑收走，而我也要办妥离职手续，从明天开始，俺就不再是这个我已服务了4年之久的公司的职员了。    抱着美好的期待踏上新的征途，虽然是从容离职，但心里还是有些忐忑，最近挂在我嘴上的只有2句话，一句是“百废待兴”，另一句是“吃饭浪费时间，睡觉更浪费时间”。（牛可以吹，但身体永远是革]]></description><category></category></item><item><title><![CDATA[发布一个CPictureEx，可以显示bmp、jpg、gif等常用图片，并支持动画，包括源代码 ]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1530791</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1530791</guid><author>jun_01</author><pubDate>Thu, 15 Mar 2007 22:54:00 +0800</pubDate><description><![CDATA[本类支持各种常用图片格式，图片显示方式支持左上、中、右下、缩放、平铺等，背景支持透明、颜色填充等。这里人气比较低，懒的写一遍了，需要的去这里：http://www.cppblog.com/javen/archive/2007/03/14/19852.html ]]></description><category></category></item><item><title><![CDATA[发布一个CHyperLink类，可适应SDK和MFC]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1521694</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1521694</guid><author>jun_01</author><pubDate>Tue, 06 Mar 2007 00:34:00 +0800</pubDate><description><![CDATA[使用很简单，调用CHyperLink.Attach(HWND)即可让指定的HWND所指向的控件变成超链接。 调用CHyperLink.Detach()即可解除绑定，恢复控件默认状态。代码支持sdk下使用，也支持mfc下使用。在vc6、vc7下测试通过（需要设置winver 0x0500）。而且考虑到了Ascii和unicode，不用修改代码。使用方法1：    m_pHLink]]></description><category></category></item><item><title><![CDATA[制作自己的vc皮肤库(二)]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1520090</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1520090</guid><author>jun_01</author><pubDate>Sun, 04 Mar 2007 00:26:00 +0800</pubDate><description><![CDATA[    差不多有3个月没有打开vc了，当然我的皮肤库也停止了。最近这半年一直被工作上的一些事情困扰，管的杂事越来越多但却创造不了什么价值。算下时间，出外闯荡已经快10年了，人也奔3了但依然是一无所成，终于下定决心，换个环境来看看，给自己更多的机会。    于是又打算再完善一下我的皮肤，其实之前之所以停止，还有一个原因是它已经能更改大部分控件的颜色了，在一些简单的地方能用了。但是细节还差很多，现]]></description><category></category></item><item><title><![CDATA[疯狂的gif]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1519740</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1519740</guid><author>jun_01</author><pubDate>Sat, 03 Mar 2007 00:00:00 +0800</pubDate><description><![CDATA[    由于需要，今天写了一个显示图片的控件，主要是为了能显示多帧GIF。    在测试的时候发现了一个怪异的现象，有一个图片我的控件会用疯狂的速度去显示它，帧与帧之间根本没有延时，而windows xp自带的图片查看器和ie显示它都是很慢的速度。后来用一个GIF制作器打开才发现真相，不知道哪个大哥做的GIF，那个图片里边每帧的显示时间竟然都是0！    这时候问题来了，是不是GIF标准里]]></description><category></category></item><item><title><![CDATA[vc、sdk，用3行代码播放Flash]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1228463</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1228463</guid><author>jun_01</author><pubDate>Fri, 15 Sep 2006 23:01:00 +0800</pubDate><description><![CDATA[    VC中使用COM、ActiveX，有人说“痛苦异常” ，有人说“异常痛苦”。  的确，VB，Delphi，ASP。。。。它们都能轻松建立COM对象，就VC不易。    不过，对于有些高手来说，这并不是什么难的，比如有人用3行代码就能播放Flash文件：#include int WINAPI WinMain(HINSTANCE inst,HINSTANCE prev,LPSTR ]]></description><category></category></item><item><title><![CDATA[我晕，我差点被ASSERT耍了！]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1151568</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1151568</guid><author>jun_01</author><pubDate>Thu, 31 Aug 2006 21:28:00 +0800</pubDate><description><![CDATA[    我的程序在debug下运行的很稳定，某日突然心血来潮，打算看看release下的效果，结果一双击我就晕了，竟然还没运行起来就非法操作。。。。    自以为严谨的程序，变成这个样子，我头上不禁冒出了冷汗。赶紧分模块再加MessageBox找问题，找了差不多一个小时，发现似乎某个类的Init没有被调用，再回去一看代码，我彻底晕倒，原来那个初始化在一个ASSERT语句里边。。。    真]]></description><category></category></item><item><title><![CDATA[中国的大多数软件的一个bug和我眼中最保险的防止程序运行多次的方法]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/1005475</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/1005475</guid><author>jun_01</author><pubDate>Mon, 31 Jul 2006 23:32:00 +0800</pubDate><description><![CDATA[1，今天看到一篇文章，号称中国大多数 的软件都存在一个bug。 据说，具有托盘图标的软件，如果把系统的explorer.exe进程杀掉，然后重新开一个这个进程（本人经常采用此方法来释放内存）。微软的软件或者国外大部分软件，都可以自动恢复托盘图标，而大多数国产软件却不能恢复。对于很多隐藏了主界面的软件，这是一个恶梦。    我做了一下试验，操作系统自带的那些图标都可以恢复，另外一个国外免费的过滤]]></description><category></category></item><item><title><![CDATA[随笔备忘]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/999690</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/999690</guid><author>jun_01</author><pubDate>Sun, 30 Jul 2006 00:04:00 +0800</pubDate><description><![CDATA[今天遇到了2个问题 ：1是程序debug时偶尔出现“First-chance exception in xxx.exe (KERNEL32.DLL)。。。 ”虽然网上很多人说这个问题可以忽略，但还是觉得不舒服，猜测是因为com资源的释放不规范，后来找了一个微软的例子，严格按照例子来，果然没有这个问题出现了。 2是关闭时有时出现“HEAP[xxx.exe]Invalid Address ]]></description><category></category></item><item><title><![CDATA[读书笔记（一，基础知识）]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/977027</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/977027</guid><author>jun_01</author><pubDate>Tue, 25 Jul 2006 23:23:00 +0800</pubDate><description><![CDATA[    最近突然感觉自己的基础知识严重缺乏，于是把几年前买的书又拿出来看了看，发现很多东西都是以前知道，但现在又忘了，看来只有写下来才能增强记忆。    a，编译器只为变量分配空间，不为类型分配空间，如果在程序中定义了类，而未申明该类的变量（对象也是变量），则编译器不给该类分配空间。    b，一个类的不同对象，他们的数据在内存的不同区域，而他们的代码在内存的公共区域，并且被所有的对象共享]]></description><category></category></item><item><title><![CDATA[在虚拟主机上用asp.net轻松实现urlrewrite]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/976830</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/976830</guid><author>jun_01</author><pubDate>Tue, 25 Jul 2006 22:11:00 +0800</pubDate><description><![CDATA[    在网上看到，很多朋友在asp.net中做urlrewrite，用的是HttpHandle＋Server.Transfer的方法。其实这种方法是错误的。第一，HttpHandle是实现不了urlrewrite的；第二Server.Transfer是标准的重定向，根本不是urlrewrite。    其实，实现urlrewrite不用自己HttpHandle，也不用自己实现HttpModule]]></description><category></category></item><item><title><![CDATA[日记：制作自己的vc皮肤库(一)]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/925753</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/925753</guid><author>jun_01</author><pubDate>Sat, 15 Jul 2006 16:47:00 +0800</pubDate><description><![CDATA[    实在忍受不了vc程序的默认界面了，用第三方的皮肤库吧，免费的几乎没有，而且很多bug，真正好的都要钱，没办法，只能自己动手写了。    基本要求：1，可以自定义控件颜色，暂时不考虑贴图。2，在程序启动时设置skin，结束时释放skin，此外不用改动现有程序之代码。要求比目前的皮肤库，比如skin++，magicSkin等简单多了，毕竟是自己写，要求不能太高。    查了一些资料（网]]></description><category></category></item><item><title><![CDATA[asp.net页面head区动态设置全攻略]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/925546</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/925546</guid><author>jun_01</author><pubDate>Sat, 15 Jul 2006 15:39:00 +0800</pubDate><description><![CDATA[网页head区，不能用普通控件，但它有时又很重要，比如title、keywords、description，可能每个页面都不同，那么怎么样才能根据内容动态设置它们呢？方法1：asp能做到的，asp.net当然可以做到，只要你把整个页面都用Response.Write()写出来，没有什么不能自定义的，当然也可以""。但很明显，这样发挥不了.net的特点。方法2：利用asp.net的特有属性：runa]]></description><category></category></item><item><title><![CDATA[一个奇怪的错误：SecurityException: 请求失败.]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/469678</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/469678</guid><author>jun_01</author><pubDate>Thu, 01 Sep 2005 17:19:00 +0800</pubDate><description><![CDATA[使用TcpChannel调用远程方法时，遇到一个异常：“SecurityException: 请求失败.”经过多方查找资料，没有找到问题所在，后来经过试验，发现是由于一个枚举类型的参数引起的，把这个参数去掉，就没有此异常了。难道是因为枚举类型无法装箱？？]]></description><category></category></item><item><title><![CDATA[_fgetts的新发现]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/437612</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/437612</guid><author>jun_01</author><pubDate>Thu, 28 Jul 2005 17:51:00 +0800</pubDate><description><![CDATA[_fgetts是在tchar.h中定义的宏，方便工程在unicode和非unicode转换。当工程有 #define UNICODE 时，它相当于fgetws，否则相当于fgets。其作用是从一个文本文件中读取一行字符。按照以前的经验，如果工程是UNICODE的，那要读取的文件也应该保存为UNICODE。否则会是乱码。于是按照此经验做了测试，但测试的结果却令我意外，对于UNICODE的文本，读取出]]></description><category></category></item><item><title><![CDATA[宏定义使用不当引发的错误]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/437600</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/437600</guid><author>jun_01</author><pubDate>Thu, 28 Jul 2005 17:35:00 +0800</pubDate><description><![CDATA[程序中有一个简单的缓冲区，有16个BYTE和一个int组成，总共20字节，由于要多次用到这个缓冲区的长度，就定义了一个宏：#define BUF_LEN 16+4  //16加4代表16字节加4字节(1个整数)但是在调试时却发现几处怪异的错误，经过仔细查找，终于发现问题就在于上边的定义。原来程序中有时会这样用这个宏：BYTE *P = xx;int iOffset = iLen - BUF_LEN]]></description><category></category></item><item><title><![CDATA[在快速排序中遇到的另一个陷阱]]></title><link>https://blog.youkuaiyun.com/jun_01/article/details/423614</link><guid>https://blog.youkuaiyun.com/jun_01/article/details/423614</guid><author>jun_01</author><pubDate>Wed, 13 Jul 2005 10:06:00 +0800</pubDate><description><![CDATA[前几日遇到内存非法访问的问题，经过判断上下界，解决了此问题，修改后的获取支点代码如下：int  pation(int data[], int x, int y){    int  n=data[x], i=x+1, j=y, temp;    while(1)    {        while(data[i]        while(data[j]>n && j > x) --j;      ]]></description><category></category></item></channel></rss>