记录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 应用程序或者 ...
随机推荐
- 业务安全通用解决方案——WAF数据风控
业务安全通用解决方案——WAF数据风控 作者:南浔@阿里云安全 “你们安全不要阻碍业务发展”.“这个安全策略降低用户体验,影响转化率”——这是甲方企业安全部门经常听到合作团队抱怨.但安全从业者加入公司 ...
- Logging with Debug And Trace (一)
对于一个应用程序而言,Log 必不可少. 在.net 里面,最简单的方式就是用Console 来输出 信息了,例如下面的例子: public class Program { public static ...
- 送干货,实用内联gulp插件——gulp-embed
现在npm上有很多gulp内联工具,用于把脚本和样式内嵌到HTML页面上,之前搞项目我也在这些插件中寻觅许久,但均不满足公司项目的一个需求—— HTML上同时插入了开发(dev版,src文件夹下,比如 ...
- 【数据结构】平衡二叉树—AVL树
(百度百科)在计算机科学中,AVL树是最先发明的自平衡二叉查找树.在AVL树中任何节点的两个子树的高度最大差别为一,所以它也被称为高度平衡树.查找.插入和删除在平均和最坏情况下都是O(log n).增 ...
- 手工给Meteor增加smart package的方法
windows下无法装mrt(Meteor的包管理工具).不过还好smart package本身也就只是一个文件夹而已,不需要在Meteor中注册什么东西.所以直接把smart package扔到me ...
- [New Portal]Windows Azure Storage (14) 使用Azure Blob的PutBlock方法,实现文件的分块、离线上传
<Windows Azure Platform 系列文章目录> 相关内容 Windows Azure Platform (二十二) Windows Azure Storage Servic ...
- C语言 · 求矩阵各个元素的和
问题描述 这里写问题描述. 输入格式 测试数据的输入一定会满足的格式. 例:输入的第一行包含两个整数n, m,分别表示矩阵的行数和列数.接下来n行,每行m个正整数,表示输入的矩阵. 输出格式 要求用户 ...
- TODO:小程序的用户身份
TODO:小程序的用户身份 小程序的用户身份有三种,一个管理员,二十个开发者,四十个体验者 1.管理员,可设置风险操作保护.风险操作提醒等操作. a)修改管理员,需要用到原管理员,新管理员的身份证号码 ...
- java中 用telnet 判断服务器远程端口是否开启
package net.jweb.common.util; import java.io.BufferedReader; import java.io.BufferedWriter; import j ...
- 特邀美国EMC实战专家Mark来华授课
“轻松搞定EMC-PCB和系统设计”课程介绍 本次课程特邀美国EMC领域权威专家Mark Montrose主讲,将涵盖满足产品电磁兼容性和信号完整性的基本原理.课程涉及多个领域,不仅仅针对PCB设计, ...