9 _风清扬

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 5w+

Windows平台C++ 使用VS2015 编译gRPC(总结)

操作系统和VS版本:Win10 和 VS2015 文章写作时间: 2019年11月08日如果不想折腾,直接去下载编译好的库吧:https://download.csdn.net/download/atceedsun/11966124注意: VS2013及其以前的版本不能编译gRPC,因为gRPC依赖的protobuf库的...

2019-11-08 09:37:52

Visual Studio 2015 - Windows XP (v140_xp) 编译工具 ucrtbased.dll缺失

先写结论,最好不要使用VS2015-WinXP编译工具来编译VC++程序,因为你最终会发现,编译出来的程序如果是动态链接到运行库的话,即便你已经拷贝了所有需要的运行库dll,当在xp系统上运行时,还是会提示缺少ucrtbased.dll(Debug版)或者ucrtbase.dll(Release版)。解决办法有两个:1.静态链接到运行时库  (MT 或者 MTd)    如果使用了MFC,

2016-12-12 16:47:41

setlocale 多线程调用引发程序crash

最近的一个项目,由于要读写中文文本,所以使用了以下代码:char* old_locale = _strdup(setlocale(LC_CTYPE, NULL)); setlocale(LC_CTYPE, "chs"); CStdioFile file; //CFile::modeCreate:以新建方式打开,如果文件不存在,新建;如果文件已存在,把该文件长度置零,即清除文件原有内容

2016-10-17 16:35:15

VS2015编译Protobuf库以及使用

第一次使用protobuf,中间碰到了不少坑,记录下来,也希望能帮到别人一、编译。 在编译这里就碰到了一个坑,我下载的最新版的protobuf源码里面,并没有包含vsprojects文件夹,最新版改用CMake编译了,我折腾了半天也没编译成功。 看了网上的文章的发表时间,猜测应该是老版本的源码里面有vs的工程,于是下载了2.6.1版本的源码,果然有vs工程。于是直接用VS2015

2016-10-10 15:26:00

MFC使用VLD检测内存泄漏

直接在InitInstance函数所在的cpp文件里面,最开头添加#include 。如果包含了预编译头stdafx.h,则在此行后面包含vld.h即可。直接从vld的官网上下载安装包,安装之后,会自动配置好环境变量,不用再手动配置,比较方便。使用过程中,碰到了下面的问题:我的开发环境是WIN7 64位+VS2013,安装了vld-2.5,头文件也包含了,调试程序的时候,输出框里面却只

2016-02-23 15:20:19

.net2.0用TLS1.2+TCP Stream访问https网站

背景在用HttpWebRequest访问一个https的网站时,程序在执行到下面这一句代码时会出异常:HttpWebResponse response = capRequest.GetResponse() as HttpWebResponse异常信息是: 基础连接已被关闭,发送时出错。这个异常信息与经常碰到的"基础连接被关闭,未能建立TLS/SSL安全通道"不同,况且我的程序里面也

2015-12-31 21:15:23

系统在英文状态下调用 MultiByteToWideChar 中文乱码问题

1.在正常的中文系统下执行MultiByteToWideChar很正常,其中,第一个参数为:CP_ACP2.在英文系统下执行MultiByteToWideChar,取得的字符编码全部变成了3F,后将"CP_ACP"替换为936,就正常显示了。主要是WideCharToMultiByte的第一个参数codepage造成的,如前面所使用的CP_ACP所表达的意思是使用系

2015-11-26 20:27:32

VC准确地获取真实网络连接的名字(本地连接)

因为虚拟机和vpn软件会创建网络连接,电脑就有可能有多个网络连接,用程序获取真实的操作系统的网络连接就比较困难。原理:注册表项HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\NetworkCards下面会有子键,里面记录的是系统创建的对应真实网卡的网络连接的名字,但是这个名字不太友好,要做转换。上VC

2015-11-07 16:28:29

VC使用WMI获取活动的网卡列表

#include #include #include #include #include #pragma comment (lib, "comsuppw.lib") #pragma comment (lib, "wbemuuid.lib") int main(void) //主函数,程序的入口 { USES_CONVERSION; HRESULT hr

2015-10-20 17:25:50

winsock代理类

原文地址:http://blog.csdn.net/bodybo/article/details/7274865代理通常有三种:HTTP、SOCKS4、SOCKS5。HTTP代理可以使用libCurl库来直接使用,其它两种代理一般都需要自己写代码来实现。头文件#pragma once#include #include #include using namespa

2015-10-20 11:03:50

windows系统用命令行netsh修改网络连接的ip、网关、dns

原文地址:http://blog.csdn.net/force_eagle/article/details/2495016写成一个bat文件:echo #设静态IPnetsh interface ip set address name="本地连接" source=static addr=192.168.1.20 mask=255.255.255.0echo #设

2015-10-19 17:48:47

jsoncpp使用简介

Jsoncpp是一个使用C++语言实现的面向对象的json库。Jsoncpp提供的接口中有3个核心类:Reader、Writer、Value。Reader类负责从字符串或者输入流中加载JSON文档,并进行解析,生成代表JSON文档的Value对象。 Writer类负责将内存中的Value对象转换成JSON文档,可输出到文件或者是字符串中。 Value类的对象代表一个JSON值,既可以代表一个文档,也

2015-09-14 16:22:30

破解时常用的汇编指令

一,破解时常用的汇编指令如下,汇编较弱者可先强行背住,以后就可慢慢理解了。cmp a,b //比较a与bmov a,b //把b的值送给a,使a=bret //返回主程序nop //无作用,英文"no operation"的简写,意思是"do nothing"(机器码90) (解释:ultraedit打开编辑exe文件时看到90,等同于汇编语句nop)call //调用子程

2015-08-12 11:24:10

"由于应用程序配置不正确,应用程序未能启动" VS2008 Release /MD编译

原文地址:http://blog.sina.com.cn/s/blog_48f93b530100ix0a.html问题描述: 用VS2008 Release /MD模式编译了一个可执行程序,程序依赖的CRT库和对应的manifest文件也都拷贝到了程序所在目录,大部分系统都可以正常打开,但是在一些xp系统上却出现如下对话框: 最简单的办法可以安装微软的补丁[**vcredist_x86.exe

2015-07-29 11:14:45

VS2008远程调试

VS2008远程调试器安装包的下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=10647远程调试就是可执行程序运行在别的电脑上面,但是又想在本机上面单步调试代码。 因为很多时候,本机运行的程序没问题,一旦到测试机上面可能就会出很多问题,这种情况下,远程调试就可以很方便地帮助自己定位问题代码。VS提供的远程调试器很简单很好用,

2015-07-06 17:50:01

C#中让WebBrowser运行Javascript脚本

原文地址: http://blog.unieagle.net/2012/06/21/c%E4%B8%AD%E8%AE%A9webbrowser%E8%BF%90%E8%A1%8Cjavascript%E8%84%9A%E6%9C%AC/C#中可以让Webbrowser运行Javascript脚本来实现各种自动化操作,比如点击网页上的按钮,输入用户名密码等等。代码也很简单:

2015-05-28 11:21:47

Android利用Fiddler进行网络数据抓包

原文地址: http://www.trinea.cn/android/android-network-sniffer/

2015-05-23 15:17:31

总结Windows程序的异常处理(dmp文件,防止崩溃)

总结一下上两篇文章,一、如何像C#的try catch那样捕获Windows应用程序的所有异常。首先要捕获的就是SEH异常,可以通过_set_se_translator把SEH异常转换成标准的C++异常,然后再调用_set_invalid_parameter_handler、_set_purecall_handler设置自己的异常处理函数(具体参考VS2005之后 _set_se_tr

2015-05-20 14:46:04

VS2005之后 _set_se_translator有可能不起作用

_set_se_translator这个函数的目的就是把SEH异常转换成C++异常,这样用一个try catch块就能保证代码里面产生的任何异常都能被捕获到,从而达到程序不崩溃的目的。但是VS2005之后的版本,微软增加了一些新的异常机制,新机制在出现错误时默认不通知应用程序,这时程序就崩溃了。VS2005添加了这两个函数:_set_invalid_parameter_handler、_s

2015-05-20 12:12:20

VS2005、VS2008中SetUnhandledExceptionFilter函数不起作用

很多软件通过设置自己的异常捕获函数,捕获未处理的异常,生成报告或者日志(例如生成mini-dump文件),达到Release版本下追踪Bug的目的。但是,到了VS2005(即VC8),Microsoft对CRT(C运行时库)的一些与安全相关的代码做了些改动,典型的,例如增加了对缓冲溢出的检查。新CRT版本在出现错误时强制把异常抛给默认的调试器(如果没有配置的话,默认是Dr.Watson),而不再通

2015-05-20 09:45:22

查看更多

勋章 我的勋章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。