06 2008 档案

一个面向对象的命令行解析器
摘要:这个类能解析如下格式的参数: -b -h www.codeproject.com stdafx.cpp -temp:-7 除此以外,还可以解析以“—”或“/”打头的参数。 一般有三类参数需要解析: 作为标识的参数(例如“ls –l”),这叫空参数 有其值的参数(例如“netstat –p tcp”),这叫值参数 不带任何“-”的... 阅读全文

posted @ 2008-06-28 17:02 Phinecos(洞庭散人) 阅读(1029) 评论(0) 推荐(0) 编辑

一个不错的命令行解析类
摘要:原文链接:Command line parser 作者所考虑的语法是: CommandLine::=[ [,]] ::=KeyName[] ::= { KeyValue | Quoted Key Value} ][ ::= { - | / } ::= { : } ::= { " } typedef CString CCmdLineParser_String ; #includ... 阅读全文

posted @ 2008-06-28 15:16 Phinecos(洞庭散人) 阅读(1840) 评论(0) 推荐(0) 编辑

给控制台程序点“颜色”瞧瞧
摘要:你对控制台程序的第一感受是什么,是否觉得黑漆漆的,死气沉沉?那么就试着让它变的活泼一点吧,下面我们就动手改变下它的字体颜色,思路非常简单,首先获取到标准输出的句柄,然后设置下控制台的文本属性就可以了。 阅读全文

posted @ 2008-06-28 14:13 Phinecos(洞庭散人) 阅读(1552) 评论(2) 推荐(0) 编辑

【译】剖析MFC多线程程序的同步机制
摘要:本文探讨基本的同步概念,并实际动手帮助新手掌握多线程编程。本文的重点在各种同步技巧。主要介绍了下述同步对象的使用:1)信号量 2)互斥锁 3)关键区域 4)事件 阅读全文

posted @ 2008-06-27 16:42 Phinecos(洞庭散人) 阅读(10325) 评论(4) 推荐(1) 编辑

XBalloonMsg - a non-MFC balloon-shaped message box
摘要:XBalloonMsg displays a message box using balloon-style tooltips. Message and title strings may be embedded or stored in string resource. 阅读全文

posted @ 2008-06-26 22:27 Phinecos(洞庭散人) 阅读(893) 评论(0) 推荐(0) 编辑

【译】TetroGL: An OpenGL Game Tutorial in C++ for Win32 Platforms - Part 1
摘要:这个系列专注于使用C++和OpenGL在windows平台上开发2D游戏,项目目标是在系列结束后能开发出一个类似俄罗斯方块的游戏。本系列分为3篇文章: 第一部分:涉及win32消息循环,窗口创建和OpenGL的搭建,并且你将会学习如何绘制一些简单的图形。 第二部分:涉及资源处理和简单动画的显示 第三部分:将前面的内容包含进来,并且讨论游戏逻辑。 阅读全文

posted @ 2008-06-26 21:01 Phinecos(洞庭散人) 阅读(3854) 评论(9) 推荐(0) 编辑

一个MFC风格的BrowseForFolder 封装类
摘要:原文链接:CYABFFW: Yet Another BrowseForFolder Wrapper 以良好的MFC风格将Shell API函数SHBrowseForFolder()封装为一个CWnd子类。 使用示例1: CYABFFW dlg(); if (IDOK == dlg.DoModal()) { CString s = dlg.GetPath(); /... 阅读全文

posted @ 2008-06-20 11:04 Phinecos(洞庭散人) 阅读(1252) 评论(0) 推荐(0) 编辑

VC小技巧--创建多级目录
摘要:Win32中提供的创建目录的API函数--CreateDirectory只能创建单层目录,下面提供一个创建多级目录的方法: bool Utility::CreateMultipleDirectory(const CString& szPath){ CString strDir(szPath);//存放要创建的目录字符串 //确保以'\'结尾以创建最后一个目录 if (... 阅读全文

posted @ 2008-06-19 10:20 Phinecos(洞庭散人) 阅读(13862) 评论(2) 推荐(1) 编辑

《基于Mozilla的扩展开发》系列文章
摘要:《基于Mozilla的扩展开发》系列文章 阅读全文

posted @ 2008-06-17 14:36 Phinecos(洞庭散人) 阅读(2934) 评论(3) 推荐(0) 编辑

浅谈一个线程通信代码的内存泄露及解决方案
摘要://线程参数typedef struct _MyData {public: CString szFromPath;//源目录 CString szToPath;//目标目录} MYDATA, *PMYDATA;//拷贝线程回送消息typedef struct _CopyResponse{ DWORD _copiedFiles; CString msg;//消息体}COPYR... 阅读全文

posted @ 2008-06-16 21:00 Phinecos(洞庭散人) 阅读(2451) 评论(2) 推荐(0) 编辑

多层纹理混合
摘要://=============================================================================// Desc: 主程序源文件//=============================================================================#include "dxstdafx.h"#inclu... 阅读全文

posted @ 2008-06-15 18:40 Phinecos(洞庭散人) 阅读(1988) 评论(0) 推荐(0) 编辑

DirectX示例--顶点雾化
摘要://=============================================================================// Desc: 顶点雾化效果//=============================================================================#include //---------------... 阅读全文

posted @ 2008-06-13 16:58 Phinecos(洞庭散人) 阅读(1375) 评论(0) 推荐(0) 编辑

使用矩阵和四元数实现三维模型的空间定位
摘要:Normal 0 7.8 磅 0 2 false false false MicrosoftInternetExplorer4 通过矩阵变换实现绕三个坐标轴的特定角度的旋转:Code highlighti... 阅读全文

posted @ 2008-06-13 14:43 Phinecos(洞庭散人) 阅读(1643) 评论(0) 推荐(0) 编辑

C++ Exercises(十四)
摘要://=============================================================================// Desc: 坐标变换//=============================================================================#include //D3DX实用库函数, 该头文件中... 阅读全文

posted @ 2008-06-13 11:31 Phinecos(洞庭散人) 阅读(430) 评论(0) 推荐(0) 编辑

进程间通信--管道篇
摘要:管道是进程通信用的共享内存的一部分,有两种用于双向通信的管道:匿名管道和命名管道。前者使得有亲属关系的进程能传递信息,一般常用来重定向子进程的标准输入或输出,这样子进程就可以与其父进程交换数据。为了能双向通信,必须创建两个匿名管道。父进程使用管道的写句柄写入数据到第一个管道,而子进程使用管道的读句柄从第一个管道中读出数据。类似地,子进程写入数据到第二个管道,而父进程从第二个管道读取数据。匿名管道不... 阅读全文

posted @ 2008-06-11 19:57 Phinecos(洞庭散人) 阅读(5825) 评论(0) 推荐(2) 编辑

多线程文件备份(VB.NET版)
摘要:原文链接:Multithreading Backup Utility 简介 多线程迟早是我们要面对的一个东西,本文向你展示了一个简单的使用两个线程来拷贝文件的应用程序 Backup将一个目录中文件拷贝到另一个目录中,它使用了一个线程来显示正被拷贝的文件名称,另一个线程用来在拷贝的文件的同时统计文件数目和文件夹数目。这就意味着在拷贝可以开始之前不用浪费时间去等待文件数目的统计完成,我们使用了... 阅读全文

posted @ 2008-06-11 10:57 Phinecos(洞庭散人) 阅读(2411) 评论(0) 推荐(0) 编辑

《windows核心编程》笔记(四)
摘要:定时器示例: #include // The caption of our message boxTCHAR g_szCaption[] = TEXT("Timed Message Box");// How many seconds we'll display the message boxint g_nSecLeft = 0;// This is STATIC window control ID... 阅读全文

posted @ 2008-06-09 19:39 Phinecos(洞庭散人) 阅读(1070) 评论(1) 推荐(0) 编辑

《windows核心编程》笔记(三)
摘要:命名内核对象有一种问题:任何程序都可以创建一个命名对象,这样如果某个程序要实现单例运行而创建了一个内核对象,这种情况下另一程序也创建了同名的内核对象时,该单例程序就无法正常运行了。这是DoS攻击的一种。 在Vista中有一种机制使得用户创建的命名内核对象永远不会和其它程序创建的对象冲突,要使用定制的前缀并把它作为人的私有命名空间,如Global和Local,服务进程会确保为内核对象定义一边界描述... 阅读全文

posted @ 2008-06-08 20:20 Phinecos(洞庭散人) 阅读(1894) 评论(0) 推荐(0) 编辑

《windows核心编程》笔记(二)
摘要:单字节和双字节字符示例: #include #include #include #include #include int main(){ char* str1 = "Count."; wchar_t* wstr1 = L"Count."; char * mbstr1; char * locale_string; // strlen gives the length of si... 阅读全文

posted @ 2008-06-07 14:41 Phinecos(洞庭散人) 阅读(1058) 评论(0) 推荐(0) 编辑

《windows核心编程》笔记(一)
摘要:1,windows对程序错误的处理, int APIENTRY _tWinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPTSTR lpCmdLine,int nCmdShow){ LPVOID lpMsgBuf; HANDLE hFile = ::CreateFile(_T("C:\\12.txt"),0,0,... 阅读全文

posted @ 2008-06-07 12:53 Phinecos(洞庭散人) 阅读(2074) 评论(1) 推荐(0) 编辑

《Windows系统编程》读后感(一)
摘要:读了前5章,感触最深的是作者在例子程序中对UNICODE的考虑,另外就是将windows的API和UNIX进行对比,结合前段时间在看的《UNIX网络编程 卷2》,感觉对比性很强。 印象最深刻的就是第5章的3个排序示例,将外部文件排序用内存来实现,堆,内存映射文件以及基准指针的使用让人大开眼见,不过比之《windows核心编程》还是有差距 #include "EvryThng.... 阅读全文

posted @ 2008-06-05 20:43 Phinecos(洞庭散人) 阅读(1189) 评论(0) 推荐(0) 编辑

光线跟踪作业
摘要:早上验收作业,花了2分钟时间演示了下,留图纪念下。 阅读全文

posted @ 2008-06-05 19:55 Phinecos(洞庭散人) 阅读(577) 评论(0) 推荐(0) 编辑

如何排序 MFC的CStringArray
摘要:#define _AFXDLL#include #include #include using namespace std;class CSortStringArray : public CStringArray {public: void Sort();private: BOOL CompareAndSwap(int pos);};void CSortStringArray::Sor... 阅读全文

posted @ 2008-06-03 15:27 Phinecos(洞庭散人) 阅读(3905) 评论(0) 推荐(0) 编辑

《XPCOM组件开发》笔记(四)
摘要:通用型XPCOM模块宏 宏 作用 NS_IMPL_NSGETMODULE(name, components) 实现IModule接口 NS_IMPL_NSGETMODULE_WITH_CTOR(name, components, ctor) 同上,但允许指定模块创建时调用一个特定函数 NS_IMPL_NSGETMODULE_WITH_DTOR (name, compone... 阅读全文

posted @ 2008-06-02 17:24 Phinecos(洞庭散人) 阅读(1424) 评论(0) 推荐(0) 编辑

《XPCOM组件开发》笔记(三)
摘要:XPCOM支持的每种语言都必须有自己的组件加载器。 XPCOM组件至少有三层,从里到外是:1)核心XPCOM对象。2)工厂代码 3)模块代码 核心XPCOM对象是实现你所需要的功能的对象,其他层是用来支持它,将它插入到XPCOM系统中的。一个单独的库可能有很多个这样的核心对象。 在核心对象层上面的是工厂层,工厂对象提供了XPCOM对象的基本抽象。 模... 阅读全文

posted @ 2008-06-02 15:25 Phinecos(洞庭散人) 阅读(1799) 评论(1) 推荐(0) 编辑

《XPCOM组件开发》笔记(二)
摘要:前面的例子是一个简单的无状态工厂版本,但实际中工厂应该存储状态。至少要保存它所创建的对象的信息。当一个工厂对动态共享库中的类的实例进行管理时,它应当知道何时可以卸载掉库。如果工厂保存了状态,那么你就可以查看是否有显示的引用并判断是否工厂创建过任何对象。 工厂能保存的另外一种状态是对象是否是单例的。若是,则以后对工厂的调用应当返回一个对象。(这可以通过IServiceManager... 阅读全文

posted @ 2008-06-02 11:44 Phinecos(洞庭散人) 阅读(3277) 评论(2) 推荐(0) 编辑

导航