橘子皮

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 15 下一页

2007年6月19日

摘要: /************************************************************************* * * 函数名称: * TemplateMatchDIB() * * 参数: * LPSTR lpDIBBits - 指向源DIB图像指针 * LPSTR lpDIBBitsBK - 指向背景DIB图像指针 * LONG lWidth - 源图像宽度(象素数) * LONG lHeight - 源图像高... 阅读全文
posted @ 2007-06-19 11:25 橘子皮 阅读(194) 评论(0) 推荐(0)

摘要: #include "winsock2.h" #include "stdio.h" #include "Wininet.h" #pragma comment (lib,"Wininet.lib") void main() { HINTERNET hNet = ::InternetOpen("Google page", //当HTTP协议使用时,这个参数随意赋值 PRE_CONFIG_INTERNET_ACCESS, //访问类型指示Win32网络函数使用登记信息去发现一个服务器。 NULL, IN 阅读全文
posted @ 2007-06-19 11:11 橘子皮 阅读(204) 评论(0) 推荐(0)

2007年6月18日

摘要: 【简 介】 C/C++ 编程语言的最强大功能之一便是其动态分配和释放内存,但是中国有句古话:“最大的长处也可能成为最大的弱点”,那么 C/C++ 应用程序正好印证了这句话。C/C++ 编程语言的最强大功能之一便是其动态分配和释放内存,但是中国有句古话:“最大的长处也可能成为最大的弱点”,那么 C/C++ 应用程序正好印证了这句话。在 C/C++ 应用程序开发过程中,动态分配的内存处理不当是最常见的问题。其中,最难捉摸也最难检测的错误之一就是内存泄漏,即未能正确释放以前分配的内存的错误。偶尔发生的少量内存泄漏可能不会引起我们的注意,但泄漏大量内存的程序或泄漏日益增多的程序可能会表现出各种 各样. 阅读全文
posted @ 2007-06-18 09:31 橘子皮 阅读(165) 评论(0) 推荐(0)

摘要: 这篇文章是对2004-09-02日发表的《VC++6.0中简单的内存泄漏检测事例代码》(已经删除)的更新.对C++代码而言,内存泄漏问题虽然有诸多方法避免,但实际代码编写的时候,或出于自信或出于复杂性的考虑,常常还会用到原始的operator new,这不可避免的会带来内存泄漏的可能,不久前本人因为违反了"可用于被多态继承的基类其析构函数应当有virtual修饰"的法则( 一不小心就忘了写virtual ^_^ ),导致了内存泄漏,因此我觉得出于安全考虑,在代码中加入内存泄漏检查机制还是很必要的,也因为这次的内存泄漏事件促使我写出这一篇文章.VC++中本身就有内存泄漏检查的 阅读全文
posted @ 2007-06-18 09:21 橘子皮 阅读(173) 评论(0) 推荐(0)

2007年6月16日

摘要: WTL嵌入类的架构可以使整个程序很清晰,系统托盘气泡提示、上下文菜单处理可以分别独立出来,以下是实现代码,很清晰就不注释了。基本上这两个类很少需要修改,因此我把它们放到了系统包含文件搜索路径中。//ContextMenu.h#pragma oncetemplate <class T>class CContextMenu{public: BOOL CreateContextMenu(UINT ID_Menu) { T* pT = static_cast<T*>(this); CMenu menu; menu.LoadMenu(ID_Menu); CMenu SubMenu 阅读全文
posted @ 2007-06-16 18:11 橘子皮 阅读(235) 评论(0) 推荐(0)

2007年5月26日

摘要: P2P的NAT研究 第一部分:NAT介绍 第二部分:NAT类型检测 第一部分: NAT介绍 各种不同类型的NAT(according to RFC)Full Cone NAT:内网主机建立一个UDP socket(LocalIP:LocalPort) 第一次使用这个socket给外部主机发送数据时NAT会给其分配一个公网(PublicIP:PublicPort),以后用这个socket向外面任何主机发送数据都将使用这对(PublicIP:PublicPort)。此外,任何外部主机只要知道这个(PublicIP:PublicPort)就可以发送数据给(PublicIP:PublicPort),内 阅读全文
posted @ 2007-05-26 21:16 橘子皮 阅读(257) 评论(0) 推荐(0)

2007年5月25日

摘要: 原文出处:CodeProject:The Complete Guide to C++ Strings, Part II原著:Michael Dunn作者:Chengjie Sun 引言 因为C语言风格的字符串容易出错且不易管理,黑客们甚至利用可能存在的缓冲区溢出bug把C语言风格的字符串作为攻击目标,所以出现了很多字符串封装类。不幸的是,在某些场合下我们不知道该使用哪个字符串类,也不知道怎样把一个C风格的字符串转换成一个字符串封装类。 这篇文章将介绍所有在Win32 API, MFC, STL, WTL 和 Visua... 阅读全文
posted @ 2007-05-25 20:12 橘子皮 阅读(157) 评论(0) 推荐(0)

2007年5月9日

摘要: 查找顺序查找Int seqsch (ElemTYpe a[], int n, KeyType k){for (int I = 0; I < n; l++){if (a[l].key == k)Break;}If ( I < n)return I;elsereturn -1;}顺序查找的改进法,改进后的算法省略了对下标越界的检查,所以提高了速度:Int seqsch (ElemTYpe a[], int n, KeyType k){A[n].key = k;// 设置岗哨for (int I = 0;; l++){if (a[l].key == k)Break;}If ( I < 阅读全文
posted @ 2007-05-09 13:11 橘子皮 阅读(224) 评论(0) 推荐(0)

2007年3月8日

摘要: 在程序初始APP的初始化中加入://先获得当前的系统时间CTime CurTime = CTime::GetCurrentTime(); //检查软件是否第一次运行,如果是则设定限制时间//我们这儿设定软件在当前时间两分分钟后禁用if (!IsInstalled()){CTime t = CurTime + CTimeSpan(0,0,2,0); SetLimitTime(t.GetYear(),t.GetMonth(),t.GetDay(), t.GetHour(),t.GetMinute(),t.GetSecond());}else{//如果软件不是第一次运行,//则读取注册表中的时间值, 阅读全文
posted @ 2007-03-08 12:04 橘子皮 阅读(448) 评论(0) 推荐(0)

2007年3月7日

摘要: char ch[] = "www.163.com";HOSTENT *host = NULL;int iStar = ::GetCurrentTime(); // 开始时间host = ::gethostbyname(ch);if (NULL == host)break;CString ss = host->h_name;sockaddr_in sa;for (int nAdapter=0; host->h_addr_list[nAdapter]; nAdapter++){memcpy ( &sa.sin_addr.s_addr, host->h_ 阅读全文
posted @ 2007-03-07 09:31 橘子皮 阅读(344) 评论(0) 推荐(0)

上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 15 下一页