vs2010下libevent的使用
在Makefile.nmake中的CFLAGS中加入/ZI选项,同时去掉/Ox优化选项,这样生成的lib库会带有调试信息
切换到libevent的所在目录
xcopy /E /H /R D:\libevent-2.0.16-stable\include\* D:\libevent\include\
xcopy /E /H /R D:\libevent-2.0.16-stable\WIN32-Code\* D:\libevent\include\
xcopy /E /H /R D:\libevent-2.0.16-stable\*.h D:\libevent\include\
mkdir d:\libevent\libs
copy D:\libevent-2.0.16-stable\*.lib D:\libevent\libs\
新建vs2010控制台项目并使用以下代码
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <winsock2.h>
#include <event.h>
#include <evhttp.h>
void root_handler(struct evhttp_request *req, void *arg)
{
struct evbuffer *buf = evbuffer_new();
if(!buf){
puts("failed to create response buffer");
return;
}
evbuffer_add_printf(buf, "Hello: %s\n", evhttp_request_uri(req));
evhttp_send_reply(req, HTTP_OK, "OK", buf);
}
void generic_handler(struct evhttp_request *req, void *arg)
{
struct evbuffer *buf = evbuffer_new();
if(!buf){
puts("failed to create response buffer");
return;
}
evbuffer_add_printf(buf, "Requested: %s\n", evhttp_request_uri(req));
evhttp_send_reply(req, HTTP_OK, "OK", buf);
}
int main(int argc, wchar_t* argv[])
{
struct evhttp *httpd;
WSADATA wsaData;
DWORD Ret;
if ((Ret = WSAStartup(MAKEWORD(2, 2), &wsaData)) != 0) {
printf("WSAStartup failed with error %d\n", Ret);
return -1;
}
event_init();
httpd = evhttp_start("0.0.0.0", 18505);
if(!httpd){
return 1;
}
evhttp_set_cb(httpd, "/", root_handler, NULL);
evhttp_set_gencb(httpd, generic_handler, NULL);
printf("httpd server start OK!\n");
event_dispatch();
evhttp_free(httpd);
WSACleanup();
return 0;
}
代码生成\运行库 多线程 (/MT)
高级\编译为 编译为 C 代码 (/TC)
输入\附加依赖项 ws2_32.lib;wsock32.lib;libevent.lib;libevent_core.lib;libevent_extras.lib;%(AdditionalDependencies)
输入\忽略特定默认库 libc.lib;msvcrt.lib;libcd.lib;libcmtd.lib;msvcrtd.lib;%(IgnoreSpecificDefaultLibraries)
转载于:https://www.cnblogs.com/toosuo/archive/2012/08/25/2655659.html
vs2010下libevent的使用相关推荐
- 【流媒體】jrtplib—VS2010 下RTP开源协议库JRTPLIB3.9.1编译
[流媒體]jrtplib-VS2010下RTP开源协议库JRTPLIB3.9.1编译 SkySeraph Apr 7th 2012 Email:skyseraph00@163.com 一.JRTPLI ...
- vs2010下使用dmp文件和pdb文件调试时dump、exe和pdb三个文件要保持版本一致的原因
一.pdb文件简介 英文:Program Data Base,即程序的基本数据,是 VS 编译链接时生成的文件. pdb文件主要存储了如下调试信息: (1)public,private 和 stati ...
- vs2010开发php,VS2010 下 开发C++
VS2010 下 开发C++ 1, 导入头文件 #include 当打" 2, 枚举 enum 和 C# 中不同 例: enum type { a = 1, b = 2, c = 3 }; ...
- 选择版本Win7系统VS2010下搭建qt开发环境
这几周一直在研究选择版本之类的问题,下午正好有机会和大家共享一下. win7下vs2010搭建qt环境总算成功了,在此分享一下. 最初选择了VS2012 + qt-windows-opensource ...
- VS2010下配置OpenCV2.2
VS2010下配置OpenCV2.2 1. 下载OpenCV2.2 安装 2. 我的安装路径是D:\Program Files\OpenCV2.2 3. 打开VS2 ...
- 在VS2010下利用vue开发团队项目
开发一个项目,采用什么语言都可以,主要能熟练高效的开发都是合理的,这次我们采用vue来开发一个团队项目.在开始之前掌握vue的基本用法,如双向数据绑定.组件和路由等,建议先去看之前的文档(webpac ...
- OSG笔记一:在Win7、VS2010下配置OSG3.4
在配置OSG初期找了很多相关的博文,内容都大同小异,且总与现在最新的版本有些出入,偏偏OSG这家伙编译一次的时间总是很长(有时候需要四.五个小时),失败了就很伤.在配置了不知道多少遍之后终于探索出了一 ...
- 推荐一个VS2010下的智能联想插件,比IntellSense更给力! http://bbs.itheima.com/thread-53922-1-1.html (出处: 黑马程序员IT技术论坛)
推荐一个VS2010下的智能联想插件,比IntellSense更给力! http://bbs.itheima.com/thread-53922-1-1.html (出处: 黑马程序员IT技术论坛)
- C语言编译时无法打开文件,在VS2010下编译无法打开包括文件:“GL/glaux.h”: No such file or director...
最近测试了一个OpenGL的示例程序: #include #include #include "glos.h" void main(void) { auxInitDisplayMo ...
- 在VS2010 下编译 cocos2d-x-2.1.4
在VS2010 下编译 cocos2d-x-2.1.4 首先感谢 cocos2d-x 团队为我们做出这么好的跨平台框架,让我们这些码农省了很多时间,事半功倍. 里沃特最近在编译 win32 版本的时候 ...
最新文章
- linux 浏览器源码下载,Android开发:图片浏览器源码
- Docke的WEB管理工具
- Vc2003可以直接跑quake3
- Intelij IDEA 2016.3安装mybatis插件并激活教程
- 95% CI, 置信区间 Confidence Interval
- 《Python Cookbook 3rd》笔记(3.14):计算当前月份的日期范围
- linux 父子进程 资源_linux 父子进程 资源_实验4 Linux父子进程同步
- stm32 Flash读写[库函数]
- 利用opencv中的级联分类器进行人脸检測-opencv学习(1)
- 总结一下m3u8格式相关问题
- [AV1] Segment
- android手机黑科技软件,4款安卓手机黑科技APP,功能非常牛逼,希望大家谨慎使用...
- css文字右边加横线,CSS伪类before,after制作左右横线中间文字效果
- Python爬虫入门(四):实战,爬取4399小游戏首页
- 〖Python 数据库开发实战 - Python与Redis交互篇⑫〗- 综合案例 - 新闻管理系统 - 删除新闻(含redis缓存)
- 在intellij上运行java_如何解决无法在IntelliJ中运行java 11示例程序?
- matlab仿真磁滞回线,磁滞回线测量方法及Simulink仿真分析研究.pdf
- php socket_read 读取全部,PHP中socket_read的问题_php
- C语言高精度加法(含c++版)
- 如何修改网站标题和logo