- 博客(25)
- 资源 (13)
- 收藏
- 关注
原创 让Visual Studio支持Boost ipp 文件语法高亮
打开Tools 菜单,选择Options在搜索框搜索file extension添加 ipp扩展名,并选择Visual C++作为编辑器确定,重新打开ipp文件 即可
2017-08-17 10:32:52
956
原创 MFC GDI+实现以鼠标为中心缩放图片(并且可以拖动)
MFC GDI+实现以鼠标为中心缩放图片(并且可以拖动)在开始之前我们先了解一下GDI+中的坐标系统世界坐标(World Coordinate) 是用来制作特定绘图自然模型的坐标。页面坐标(Page Coordinate) 则是指绘图接口(例如窗体或控件) 使用的坐标系统。设备坐标(Device Coordinate) 是在其上进行绘图的实体装置(例如屏幕或纸张) 所使用的坐标。“世界变换”
2017-07-31 13:26:39
7174
10
原创 去除迅雷影音游戏弹窗
迅雷影音弹窗较多,一不小心就点到了,桌面还会生成游戏图标,下面是去弹窗步骤。需要工具360安全卫士 - 关闭迅雷影音 - 打开迅雷影音的安装目录Thunder Network\XMP\V5.2.3.5016\Bin 找到 XLUEOPS.exe 文件,右键用360强力删除,并勾选防止再生。 - 打开目录C:\Users\Public\Thunder Network\ThunderNews
2016-12-13 23:47:44
6348
翻译 sol-v2.0 一个具有高级特性和出众性能的 C++&Lua 绑定库
Sol 是一个C++ 绑定lua的库,当前支持 Lua5.1以上的版本(包含LuaJit2.0).Sol的目的是使用起来简单,并且容易添加进工程。这个库是只有头文件的,所以很容易集成到工程中。 下载链接 官方文档快速预览#include <sol.hpp>#include <cassert>int main() { sol::state lua; int x = 0; l
2016-08-31 12:41:34
6291
翻译 Premake5 介绍
什么是PremakePremake 是一个命令行工具,用lua编写的工程定义文件,通常用它来生成不同平台的工程文件,例如Visual Studio, Xcode, or GNU Make。workspace "MyWorkspace" configurations { "Debug", "Release" }project "MyProject" kind "ConsoleApp"
2016-08-24 15:35:49
8997
1
原创 (一)通用工具之同步队列(sync_queue)
介绍我们经常需要在多线程间通信,例如网络通信线程和逻辑线程,网络线程需要把收到的数据 传递到 逻辑线程进行处理;同样 逻辑线程 需要把发送的数据,传递到网络线程进行发送。 这时我们就需要一种数据结构 同步队列。由于C++11 对线程提供了支持,我们需要一种支持 先入先出的数据结构即可 ,STL库里面已经有现成的 std::deuqe, std::queue。但C++11 引入了右值引用,类
2016-07-25 14:23:04
5834
原创 多线程游戏服务器开发(2)-编写网络库
网络库功能介绍网络库具有的功能1.具备多线程2.监听某个端口3.连接远程服务器4.保存并管理所有链接,外部与网络库操作通过链接ID5.向某个连接发送数据6.强制关闭某个链接7.网络事件回掉:connect, receive, close8.错误处理网络库主要接口class tcp_frame { public:
2016-07-21 15:00:39
2438
原创 多线程游戏服务器开发(1)-简介
准备工作随着C++11的普及,利用asio网络库可以更加轻松地编写跨平台的C++服务器。我的目标就是编写出一个轻量的多线程服务器框架。准备visual studio 2015 社区版 这个版本对C++11支持比较全面asio 这是从boost库剥离出来的跨平台网络库,使用支持C++11的编译器可以完全不再依赖boost库google protobuf 支持多种语言的数据序列化库框架介绍ac
2016-07-11 16:09:16
2221
1
原创 Unity 使用 Protobuf-net
1.下载 Protobuf-net 点击打开链接2.用VS打开Protobuf-net 解决方案,编译CodeGen 项目3.在protobuf-net-master\ProtoGen\bin\Debug 目录中编写一个测试Order.proto 文本文件,.proto 语法请自行查找资料package ServerMessage; message Order{
2015-11-09 20:26:51
789
原创 在MFC 窗口中运行 cocos2d-x 3.2 (二) 让其在MFC picture控件中运行
上一篇我们配置了运行环境,但是并不完美,MFC窗口 和
2014-09-26 16:04:21
3426
8
原创 在MFC 窗口中运行 cocos2d-x 3.2 (一) 基本配置
1.软件平台 Visual Studio 2012 , Cocos2d-x 3.2
2014-09-26 15:01:38
4030
13
原创 Apache 模块用C++ 编译时, AP_INIT_TAKE1 宏的问题
AP_INIT_TAKE1 宏的第二个参数 会出现如下错误:conversion from 'const char* (*)(cmd_parms*, void*, const char*)' to 'const char* (*)()'解决方法:应该这样使用:AP_INIT_TAKE1( "Directive", (cmd_func) drctv_handler, NULL, OR_ALL,
2014-01-24 16:35:34
1349
原创 MFC 多文档 自定义浏览器新打开窗口解决办法
一般情况下我们点击链接,如果是新建窗口,会调用其他浏览器打开。我的view类是集成于 CFormView,下面是解决这种问题的一种办法:一、在YourView类中新建自定义消息1.在YourView类 头文件中添加 #define WM_MY_MESSAGE_SEARCH WM_USER+200 afx_msg LRESULT OnMySearch(WPARA
2014-01-16 15:36:52
1332
原创 VC6.0 编译Xpdf 库(with freetype-2.4.6)
1.解压freetype-2.4.6 ,在其目录下freetype-2.4.6\builds\win32 中可以用相应版本VS 编译。 编译完成后 在freetype-2.4.6\objs 目录下找到 .lib文件 ,复制到freetype-2.4.6\目录下,并更改名字为freetype2.lib.2.解压xpdf-3.03,打开 命令行 窗口,输入 cl(如果无法识别,请在VC 安
2014-01-09 17:24:35
1489
原创 链表排序-直接插入排序
排序函数如下:typedef struct Node{ int data; Node *next; Node(int a);}List;Node::Node(int a){ data = a; next = NULL;}void sortList(List *&L){ if(L == NULL) { return; //空链表 } /
2013-11-21 16:28:25
1032
原创 排序算法—插入排序之直接插入排序
直接插入排序就是从无序区,依次取出一个数据,通过大小比较,插入到有序区,直到数据全部有序为止。下面是我对直接插入排序过程的一种理解,就像排序 扑克牌中的顺子一样:首先假设你手中有 5 张扑克牌,依次是:4,2,5,3,1。a. 把牌背面面向你,现在你不清楚牌里面的数字。b. 从 左向右 翻一张牌 (现在,数字4 就是我们的有序区)4 XX X Xc. 现
2013-11-20 11:59:51
1070
原创 VC 下 由进程名获取进程句柄
#include #include HANDLE GetProcessHandle(TCHAR *processname){ if(processname == NULL) { return NULL; } HANDLE proc = NULL; PROCESSENTRY32 pe; DWORD id=0; HANDLE hSnapshot=CreateToolhelp
2013-11-18 09:54:25
2201
原创 AH00052: child pid xxxx exit signal Segmentation fault (11) 解决办法
今天在修改一个 apache 模块,测试时出现了这个问题,由于加载的模块较多,无法确认具体是那个模块出了问题。由错误描述可以看出 是段错误,因此可以通过调试解决首先查找当前httpd 的进程:# ps -ef|grep httpdroot 6353 1 0 09:58 ? 00:00:00 /usr/local/apache/bin/httpd -k
2013-10-17 10:36:36
11127
原创 apache 模块调试
1.停止apache服务#apachectl -k stop2.#gdb httpd (这里指apache/bin/httpd)3.设置断点等操作 4.#run -X5.向服务器发送连接,即可触发断点
2013-09-12 17:52:42
2298
原创 CentOS下Mysql,无法找到mysql.h头文件
首先查找与mysql相关资源yum search mysql然后找到:mysql-devel.i686 : Files for development of MySQL applications安装即可:yum install mysql-devel.i686
2013-09-09 16:24:47
3480
原创 CentOS下安装MySql mysql.sock 文件无法找到
关于mysql.sock 文件的路径,如果修改它的位置,可能会出现mysql.sock 文件无法找到,解决办法如下:要修改路径时,需要修改/etc/my.cnf 文件:[mysqld]socket=...同时还要修改(添加)[client]socket=...socket为mysql.sock 文件存放的路径
2013-09-09 16:20:28
1554
原创 关于 WinHttpWriteData 出错 GetLastError() 值为 87(ERROR_INVALID_PARAMETER)
在Windosw 7中 ,使用WinHttpWriteData 发送数据的大小,如果超过了在WinHttpSendRequest指定的大小,使用GetLastError将会出现 87 (ERROR_INVALID_PARAMETER)ERROR。解决办法:使两个API函数中数据长度一致。这是在Windows 7以上版本的操作系统中,新添加的参数有效性检查,防止错误的使用
2013-08-28 10:44:37
5564
原创 CentOS 下安装Apache
1.采用yum安装#yum install httpd配置Apache开机启动#chkconfig --levels 235 httpd on启动Apache#/etc/init.d/httpd start2.采用源码安装(1)安装包httpd-2.4.4.tar.gz http://httpd.apache.org/download.cgi apr-1
2013-07-23 14:52:58
606
原创 STL中list,遍历删除元素注意事项
void DeleteListElem(){ std::list intlist; for(int i=0;i<10;i++) { intlist.push_back(i); } std::list::iterator ite1; std::list::iterator ite2; for(ite1 = intlist.begin();ite1 != intlist.
2013-07-09 14:53:31
1374
libharu 静态库源码 vc6.0
2014-01-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人