- 博客(69)
- 资源 (3)
- 收藏
- 关注

原创 简单的ATL COM组件
1. 新建->【ATL项目】->【动态链接库】。在dllmain.h中可以看到该dll的注册CLSID。DECLARE_REGISTRY_APPID_RESOURCEID(IDR_ATL_PROJECT, "{4575288C-5913-4A12-A1C3-28FB61DB86FE}")2. 【添加】->【类】->【ATL简单对象】。新增CoClass [
2013-06-28 11:11:21
987
转载 Fatal signal 11 (SIGSEGV) 错误
06-04 09:59:32.355: A/libc(2495): Fatal signal 11 (SIGSEGV) at 0x00002600 (code=1), thread 2508 (Thread-117)This was a common error when stopping an OpenGL-ES app on Intel x86 AVD (every launch cr
2016-09-01 17:17:45
2610
原创 C++类虚函数表
#include #include using namespace std;class Base1{public: virtual void f() { cout << "Base1 f()" << endl; } virtual void g() { cout << "Base1 g()" << endl; } virtual void h() { co
2016-03-10 15:50:47
412
原创 libevent - 定时器
准备工作:1. 下载libevent源码,进行编译。(这一步生成libevent_core.lib、libevent_extras.lib库文件) 2. 新建目录3rd,将编译生成的库文件(lib)及头文件(include)放在该目录下。 3. 打开我们的工程,将3rd/include添加到include目录,3rd/lib添加到库目录。 4. 在工程Linker中引入libeve
2016-01-05 16:44:43
606
原创 hash_map自定义数据类型作key
#include #include using namespace std;using __gnu_cxx::hash_map;struct Node{ int key; int value; bool operator==(const Node &node) const{ return (node.key == key && node.value == value); }
2015-12-25 13:21:45
1391
原创 Cocos2d-X的一个示例
场景资源由Cocostudio示例项目导出.#include "HelloWorldScene.h"#include "cocostudio/CocoStudio.h"#include "ui/CocosGUI.h"USING_NS_CC;Scene* HelloWorld::createScene(){ // 'scene' is an autorelease obje
2015-04-13 19:32:30
522
原创 Lua调用C函数
一.Lua调用C++全局函数1.声明全局函数int C_Average(lua_State *L);2.实现全局函数int C_Average(lua_State *L){int n = lua_gettop(L);/* 返回栈顶元素的索引。因为索引是从1开始编号的(1表示栈底,-1表示栈顶),所以这个结果等于堆栈上的元素个数(返回0表示堆栈为空)。这里栈中元素
2014-10-30 16:27:43
533
原创 MySql字符修改
my.inidefault-character-set=utf8character-set-server=utf8重启mysql服务SHOW VARIABLES LIKE 'character%';+--------------------------+---------------------------------+ | Variab
2014-10-28 11:28:34
578
原创 性能服务器开发
《Windows网络编程技术》(推荐指数:五星)中文版高清PDF格式 486页 ,极力推荐,含目录书签,是一本内容丰富,讲解详细的Windows网编。《TCP/IP详解》共三卷,《TCP/IP详解卷1:协议》描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者LawrenceBerkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tc
2014-10-23 15:43:39
544
原创 ATL/WTL消息响应函数原型
// Handler prototypes (uncomment arguments if needed):// LRESULT MessageHandler(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)// LRESULT CommandHandler(WORD /*wNotifyCode*/
2014-06-11 11:44:13
544
原创 VS2008安装WTL项目模板
1. 下载WTL,http://sourceforge.net/projects/wtl ;2. 解压文件至目录D:\WTL90_4140_Final;3. 双击D:\WTL90_4140_Final\AppWiz\Setup.js进行安装;4. 打开VS,确定新建项目中出现WTL项目模板;5. 将D:\WTL90_4140_Final\Includ
2014-06-11 10:36:25
568
原创 内存泄露检测
点击打开链接http://wenku.baidu.com/link?url=QuXWLM8jBAcZu01szjyuTO2sDXDSimZ4kyIv2XrnF4zXfZ1lHirVnRSwDuaoYWhE1T2vSbshkUMerMWdembFqagRh2oMWVExea04m_ZHJ3_http://wenku.baidu.com/link?url=sUYNhZGEcWgzJ3mNO
2014-04-10 10:26:12
487
原创 窗口子类化
LRESULT DirectionWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ CButtonDirection* pWnd = (CButtonDirection*)CWnd::FromHandle(hWnd); switch (message) { case WM_LBUTTONDOWN: {
2014-03-19 17:06:19
608
原创 学习规划
1.《Windows核心编程》;2.《大话设计模式》;3.《多核程序设计》;4.《软件易用性设计》;5.COM、ATL、WTL组件;6.RTP/RTSP流媒体控制传输;7.XML、Json数据解析;8.深刻理解Windows消息机制;
2014-02-26 11:30:30
516
原创 创建自定义鼠标形状
鼠标状态及对应的鼠标形状:#define CURSOR_STATE_COUNT 7enum CursorState{ cursorNormal = 0, cursorBeginSel, cursorSelect, cursorHover, cursorDrag, cursorLeave, cursorMovein,};static LPCTSTR cursorIcon[CU
2014-02-17 10:22:03
900
转载 应用程序发送系统消息
// 通过向系统发送消息,可以完成一些系统任务。HWND hWnd = ::FindWindow(_T("Shell_TrayWnd"), NULL);if (hWnd != NULL){ // 显示桌面 ::PostMessage(hWnd, WM_COMMAND, MAKELONG(407, 0), NULL);}具体的消息如下:
2014-02-17 09:18:48
600
原创 创建透明窗口
hWnd:窗口句柄;nDegree:透明程度void TranslateWnd(HWND hWnd, int nDegree){ ::SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE); // TopMost DWORD dwStyle = GetWindowLong(hWnd, GWL_EXSTY
2014-02-15 11:57:52
905
1
转载 OnOK()、OnCancel()()、OnClose()、OnDestroy()
第一,OnOK()和OnCancel()是CDialog基类的成员函数,而OnClose()和OnDestroy()是CWnd基类的成员函数,即WM消息响应函数。从应用程序结构的角度,拿对话框来说,红色的X对应的是CWnd,而处于对话框中的“确定”、“取消”按钮则对应了CDialog。第二,OnClose()和OnDestroy()在单视图程序中,根据>所讲,程序退出时执行的操作顺
2014-01-13 22:56:06
500
原创 gsoap搭建webservice-client
1.创建win32控制台工程webservice-client;2.将stdsoap2.h、stdsoap2.cpp、interface.nsmap、soapH.h、soapClient.cpp、soapStub.h、soapC.cpp、stringEx.h拷贝到webservice-client目录下,添加到工程(使用预编译头->”否”);3.新增webservice-client/in
2014-01-13 22:42:25
501
原创 gsoap搭建webservice
1.gsoap工具下载地址;http://sourceforge.net/projects/gsoap2/files/2.新建win32控制台工程webservice,新建webservice/interface目录;3.新建接口头文件interface/interface.h,根据需要声明接口函数;//gsoap ns service name: interface//gsoa
2014-01-12 23:31:24
632
转载 多线程DLL(/MD/MT.....)(转)
选项说明/MD使应用程序使用运行时库的多线程并特定于 DLL 的版本。定义 _MT 和 _DLL,并使编译器将库名 MSVCRT.lib 放入 .obj 文件中。用此选项编译的应用程序静态链接到 MSVCRT.lib。该库提供允许链接器解析外部引用的代码层。实际工作代码包含在 MSVCR80.DLL 中,该库必须在运行时对于与 MSVCRT.lib
2013-10-26 13:53:26
1822
原创 TortoiseSVN不显示图标的问题
不显示原因:Windows对覆盖图标有个数限制,注册表中TortoiseSVN相关图标排在限制数后。解决办法:打开注册表,想办法将TortoiseSVN图标排在前面。步骤:1.打开注册表。管理员方式运行regedit。2.找到图标目录文件夹ShellIconOverlayIdentifiers,不同的系统可能位置不一样。WIN7-32bit参考目录:HKEY_LOCAL_MAC
2013-10-26 11:27:10
796
原创 时间精确到us
LARGE_INTEGER litmp;LONGLONG QPart1, QPart2;double dfMinus, dfFreq, dfTim;QueryPerformanceFrequency(&litmp);// 获得计数器的时钟频率 dfFreq = (double)litmp.QuadPart;QueryPerformanceCounter(&litmp);// 获得初始值 QPart
2013-09-26 13:03:27
743
原创 YUV格式分析
http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.htmlhttp://blog.sina.com.cn/s/blog_735fb6480101bzvh.htmlhttp://blog.youkuaiyun.com/shallon_luo/article/details/5544796
2013-09-22 23:04:41
461
原创 TinyXML
参考资料:http://www.cnblogs.com/kex1n/archive/2010/10/03/1841502.html#2725229
2013-08-23 16:16:01
427
原创 vs2008编译zlib-1.2.8
1. 从http://www.zlib.net/下载zlib-1.2.8.tar.gz,解压到目录zlib-1.2.8; 2. 用vs2008命令行进入zlib-1.2.8\contrib\masmx86目录,执行bld_ml32.bat; 3. 进入目录zlib-1.2.8\contrib\vstudio,执行vcbuild/rebuild vc9\
2013-07-04 16:47:59
1824
原创 几种常见的排序算法实现
#include "stdafx.h"#include <cmath>#include <ctime>#include <assert.h>#include <iostream>using namespace std;// 交换值template<typename T>inline void swap_value(T *...
2013-07-02 16:56:22
439
原创 MKV文件解析实例
////////EBML头////////// 1A 45 DF A3 A3// EBMLVersion EBML编码器版本号 42 86 // ID 81 // 长度 01 // 值// EBMLReadVersion EBML解析器版本号 42 F7 // ID 81 // 长
2013-07-01 16:28:10
1780
原创 VS2008编译mkvtoolnix4.6.0
1. 下载mkvtoolnix-4.6.0.tar.bz2,解压到目录mkvtoolnix-4.6.0; 2. 进入mkvtoolnix-4.6.0目录,找到mkvtoolnix.sln,使用VS2008打开; 3. 编译生成解决方案;(需要先生成依赖的静态库,见附录二) 问题1:无法打开包括文件:“config.h”: No such fil
2013-06-30 23:51:41
1346
原创 检测ip地址是否为内网地址
#include #include #pragma comment(lib,"Iphlpapi")#pragma comment(lib,"WS2_32")/*** 检测remote_ip地址是否为内网ip** @return 1 是. * @return 0 否.*/int is_LAN(const char *remote_ip){ PIP_ADAPTER_INFO
2013-06-29 10:09:37
1035
原创 初始化COM组件
CoInitialize(NULL); CLSID clsId = GUID_NULL; if (S_OK == CLSIDFromString(OLESTR("{C4E98946-B075-4C69-83BB-79C95FE5E00F}"), &clsId)) { ICStringModule* pICString= NULL; HRESULT hr = CoCreate
2013-06-29 09:45:23
572
原创 svn创建版本库
1、 安装svn服务及客户端程序,并将bin目录添加到系统环境变量;2、 进入dos命令行,查看svn版本号; svn --version 3、 创建版本库(注意是否将安装bin目录包含到系统环境变量Path中); svnadmin create D:\svnrepo\h264_to_mkv_proj 4、 进入h264_to
2013-06-29 09:33:58
700
原创 js调用COM组件示例
说明:可能需要对IE安全设置中的ActiveX控件和插件相关属性进行设置。(如果需要可以将COM组件进一步封装为ActiveX,实现ISafeObject安全接口,签名打包为EXE或CAB文件) 调用示例: function testCString() { try { var obj = newActiveXObject("atl_pr
2013-06-28 15:30:50
2780
原创 VC中COM组件的几种调用方式
方式一:#import导入dll库,利用VC提供的智能指针包装类 引入dll文件: #import "atl_project.dll" no_namespace调用示例: CoInitialize(NULL); ////////////////////////////////////////////////////////////// // CS
2013-06-28 14:09:54
1153
原创 重新编译log4cxx工程并在代码中配置日志属性
重新编译log4cxx工程:1.用svn工具checkout最新的代码。地址:http://svn.apache.org/repos/asf//logging/log4cxx/trunk2.使用VS2008【文件】->【新建】->【从现有代码创建项目】,选择log4cxx\src\main文件夹。3.配置工程属性为lib类型,添加预处理器宏LOG4CXX,并选择相应的运行库
2013-06-26 12:03:16
1196
转载 log4j 格式详解
【2】log4j 格式详解 log4j.rootLogger=日志级别,appender1, appender2, ….日志级别:ALL,不区分大小写注意,需在控制台输入,只需将其中一个appender定义为stdout即可注意,rootLogger默认是对整个工程生效注意,如果只想对某些包操作,那么:log4j.logger.com.hutu=info, stdout,表示
2013-06-26 09:18:59
1100
原创 使用MFC类CInternetSession和CFtpConnection构建FTP客户端
#pragma once#include #include #define FTP_DEFAULT_PORT 21struct FileProperty{ CString strFileName; // FILE_ATTRIBUTE_DIRECTORY // GetFileAttributes DWORD dwFileType;};class CYWFtpSessi
2013-06-25 22:42:08
5244
1
原创 Windows套接字错误代码说明
WSAEINTR (10004)翻译: 中断函数调用。说明: 阻止操作被中断通过调用 WSACancelBlockingCall (Wsapiref_704y.asp)。WSAEACCES (10013)翻译: 权限被拒绝。说明: 尝试访问套接字访问权限被禁止的方式。例如,广播的地址可用于发送到但广播的权限未设置通过使用 setsockopt(SO_BROADCAST) 时,将
2013-06-25 11:09:32
5783
原创 简单的IOCP程序(TCP)
// tcp_iocp_serve.cpp#include #include #include #include using namespace std;#pragma comment(lib, "Ws2_32.lib") // Socket编程需用的动态链接库#pragma comment(lib, "Kernel32.lib") // IOCP需要用到的动态
2013-06-25 11:03:35
731
原创 在jsp文件中调用自定义控件(如果不存在,自动下载CAB文件安装注册)
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> "> My JSP 'index.jsp'
2013-06-25 09:07:55
1952
HaiSpace聊天室(服务器+QT客户端)
2013-06-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人