记录visual Studio使用过程中的两个问题
Visual Studio是Windows平台下进行项目管理和开发的终极利器。除了微软自家的技术外,新版的VS不但支持Javascript, Python的开发调试,甚至还支持了Android, iOS应用开发,不可谓不强大。对于我个人而言,VS主要是用来做C/C++开发,作为Qt开发的IDE来代替QCreator,简直是本人的最爱。曾经说过不太喜欢QCreator来开发Qt应用,因为在程序编译出错时,QCreator的提示非常不友好。不知道QCreator经过了数个版本的发展,现在是否有改进。这篇博文记录两个在使用VS过程中的问题,算是比较常见的问题。
Visual Studio中新建x64类型解决方案
Visual Studio在新建工程时,其工程模板中默认只提供了32位的工程:

而有时候我们的程序需要编译64位版本,提供给64位的操作系统使用。这个时候我们需要手工新建“平台”了。右键选中项目,在菜单中选择“属性”,弹出“项目属性”对话框,右上角选择“配置管理器”,如下:


在“活动解决方案平台”中选择新建,弹出如上所示的对话框。在“新建平台”下拉框中选择“x64”,然后选择确定即可。这时候可以看到项目的平台属性为“x64”了。编译出来的可执行程序就可以在64位机器上运行了。但是要注意的是:当一个VS解决方案中如果存在多个项目时,这时如果要新建平台的话,要谨慎选择上图中红框限定的选项了。因为有可能其他的项目已经新建过了命名为“x64”的“平台”了。这个时候再新建的话就会产生冲突。要解决冲突的话,把红框中的选项取消掉即可。

另外还有一个地方需要注意:在新建x64平台时,其平台属性配置是从Win32复制过来的。因此,有些属性需要根据情况修改(如预处理器定义)。
Unicode字符集
Unicode字符集也是VS工程的一个属性,指定在该项目中使用什么样的字符集。最近在改造公司的一个项目的日志文件时,由于以前的日志在输出时无法正常保存中文,因此需要日志文件支持宽字符的输出。在改造完底层的日志函数之后,在应用程序中调用日志函数时竟然报错:

尽管我辣么明显的加上了TEXT宏,VS仍然提示我参数类型不对!前思后想一番突然想到,难道是项目字符集的问题?不然的话加了TEXT宏应该会有效果啊!于是打开项目属性页面看看,果然:

在“字符集”一栏显然什么都没有设置。极有可能是这个原因导致的。于是当机立断将其设置为“使用Unicode字符集”:

保存一看,错误已经消失的无影无踪……可见,正确的设置好项目的字符集编码,对于TEXT宏正常工作还是非常重要的。至此,项目中的日志文件改造也就顺理的完成了。

记录visual Studio使用过程中的两个问题的更多相关文章
- Visual Studio 2019 preview中体验C# 8.0新语法
准备工作: Visual Studio 2019 Preview版本中并没有包含所有的C# 8.0的新功能,但目前也有一些可以试用了.在开始之前,需要进行入两项设置: 将Framework设置为.ne ...
- Android Studio使用过程中常见问题及解决方案
熟悉Android的童鞋应该对Android Studio都不陌生.Android编程有两个常用的开发环境,分别是Android Studio和Eclipse,之前使用比较多的是Eclipse,而现在 ...
- 在Visual Studio for Mac中使用fastlane管理iOS的provision
Xamarin开发中,最烦的就是provision的管理了. 全手工的话,要先创建一个key,上传后生成cert文件,再创建provision.如果在手机上调试,还要把手机加到provision中去. ...
- 在 Visual Studio for Mac 中编译和生成
使用Visual Studio将C#生成DLL文件的方法 https://www.cnblogs.com/AaronBlogs/p/6840283.html Visual Studio 开发 - Vi ...
- 在 Visual Studio 调试器中指定符号 (.pdb) 和源文件
查找并指定符号文件和源文件:指定符号加载行为.使用符号和源服务器上:加载符号自动或在要求. 内容 查找符号 (.pdb) 文件 查找源文件 查找符号 (.pdb) 文件 说明 在之前的 Vis ...
- Visual Studio App Center 中的 Bug 跟踪服务
我在之前的一篇文章 <使用 Visual Studio App Center 持续监视应用使用情况和问题> 中介绍了 App Center 的基本功能及使用入门,其中 诊断 可以自动手机用 ...
- 再次记录 Visual Studio 2015 CTP 5 的一个坑
接上一篇:升级 Visual Studio 2015 CTP 5 的坑.坑.坑 升级到 VS2015 CTP 之后,今天要改项目中的一个东西,然后就不得不把 C# 6.0 改变的语法代码中改了下(之前 ...
- Visual Studio 2015 RC中的ASP.NET新特性和问题修正
(此文章同时发表在本人微信公众号"dotNET每日精华文章") 微软在Build大会上发布了Visual Studio 2015 RC,这也预示着Visual Studio 201 ...
- 在Visual Studio 2010/2012中 找不到创建WebService的项目模板
参考文章: http://blog.sina.com.cn/s/blog_6d545999010152wb.html 在 Visual Studio 2010 或者2012的新建 Web 应用程序或者 ...
随机推荐
- C ReadProcessMemory
ReadProcessMemory函数用于读取其他进程的数据. BOOL STDCALL ReadProcessMemory ( HANDLE hProcess, LPCVOID lpBaseAddr ...
- 多位数每一位个系数:个位num%10;十位num/10%10.......
请输出满足这样条件的五位数. 个位=万位 十位=千位 个位+十位+千位+万位=百位 思路: 1.定义一个要操作的五位数变量num 2.求出每一位个系数 个:num%10 十:num/10%10 百:n ...
- Response.StatusCode的HTTP状态代码列表
1xx - 信息提示这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应. · 100 - Continue 初始的请求已经接受,客户应当继续发送请求的其余部分.( ...
- STOMP协议介绍
STOMP,Streaming Text Orientated Message Protocol,是流文本定向消息协议,是一种为MOM(Message Oriented Middleware,面向消息 ...
- 剑指Offer面试题:27.最小的k个数
一.题目:最小的k个数 题目:输入n个整数,找出其中最小的k个数.例如输入4.5.1.6.2.7.3.8这8个数字,则最小的4个数字是1.2.3.4. 这道题是典型的TopK问题,其最简单的思路莫过于 ...
- MapReduce剖析笔记之一:从WordCount理解MapReduce的几个阶段
WordCount是一个入门的MapReduce程序(从src\examples\org\apache\hadoop\examples粘贴过来的): package org.apache.hadoop ...
- Improve Your Study Habits
1.Plan your time carefully. Make a list of your weekly tasks.Then make a schedule or chart of your t ...
- Tomcat7基于Redis的Session共享实战二
目前,为了使web能适应大规模的访问,需要实现应用的集群部署.集群最有效的方案就是负载均衡,而实现负载均衡用户每一个请求都有可能被分配到不固定的服务器上,这样我们首先要解决session的统一来保证无 ...
- maven profile的使用
作为一名程序员,在开发的过程中,经常需要面对不同的运行环境(开发环境.测试环境.生产环境.内网环境.外网环境等等),在不同的环境中,相关的配置一般不一样,比如数据源配置.日志文件配置.以及一些软件运行 ...
- Hibernate