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使用过程中的两个问题的更多相关文章

  1. Visual Studio 2019 preview中体验C# 8.0新语法

    准备工作: Visual Studio 2019 Preview版本中并没有包含所有的C# 8.0的新功能,但目前也有一些可以试用了.在开始之前,需要进行入两项设置: 将Framework设置为.ne ...

  2. Android Studio使用过程中常见问题及解决方案

    熟悉Android的童鞋应该对Android Studio都不陌生.Android编程有两个常用的开发环境,分别是Android Studio和Eclipse,之前使用比较多的是Eclipse,而现在 ...

  3. 在Visual Studio for Mac中使用fastlane管理iOS的provision

    Xamarin开发中,最烦的就是provision的管理了. 全手工的话,要先创建一个key,上传后生成cert文件,再创建provision.如果在手机上调试,还要把手机加到provision中去. ...

  4. 在 Visual Studio for Mac 中编译和生成

    使用Visual Studio将C#生成DLL文件的方法 https://www.cnblogs.com/AaronBlogs/p/6840283.html Visual Studio 开发 - Vi ...

  5. 在 Visual Studio 调试器中指定符号 (.pdb) 和源文件

    查找并指定符号文件和源文件:指定符号加载行为.使用符号和源服务器上:加载符号自动或在要求.   内容 查找符号 (.pdb) 文件 查找源文件   查找符号 (.pdb) 文件 说明 在之前的 Vis ...

  6. Visual Studio App Center 中的 Bug 跟踪服务

    我在之前的一篇文章 <使用 Visual Studio App Center 持续监视应用使用情况和问题> 中介绍了 App Center 的基本功能及使用入门,其中 诊断 可以自动手机用 ...

  7. 再次记录 Visual Studio 2015 CTP 5 的一个坑

    接上一篇:升级 Visual Studio 2015 CTP 5 的坑.坑.坑 升级到 VS2015 CTP 之后,今天要改项目中的一个东西,然后就不得不把 C# 6.0 改变的语法代码中改了下(之前 ...

  8. Visual Studio 2015 RC中的ASP.NET新特性和问题修正

    (此文章同时发表在本人微信公众号"dotNET每日精华文章") 微软在Build大会上发布了Visual Studio 2015 RC,这也预示着Visual Studio 201 ...

  9. 在Visual Studio 2010/2012中 找不到创建WebService的项目模板

    参考文章: http://blog.sina.com.cn/s/blog_6d545999010152wb.html 在 Visual Studio 2010 或者2012的新建 Web 应用程序或者 ...

随机推荐

  1. poj1200-Crazy Search(hash入门经典)

    Hash:一般是一个整数.就是说通过某种算法,可以把一个字符串"压缩" 成一个整数.一,题意: 给出两个数n,nc,并给出一个由nc种字符组成的字符串.求这个字符串中长度为n的不同 ...

  2. Ruby 里的 %Q, %q, %W, %w, %x, %r, %s, %i (译)转

    原文地址  转自 %Q 用于替代双引号的字符串. 当你需要在字符串里放入很多引号时候, 可以直接用下面方法而不需要在引号前逐个添加反斜杠 (\") >> %Q(Joe said: ...

  3. 分布式数据库中的Paxos 算法

    分布式数据库中的Paxos 算法 http://baike.baidu.com/link?url=ChmfvtXRZQl7X1VmRU6ypsmZ4b4MbQX1pelw_VenRLnFpq7rMvY ...

  4. [译] 理解PHP内部函数的定义(给PHP开发者的PHP源码-第二部分)

    文章来自:http://www.hoohack.me/2016/02/10/understanding-phps-internal-function-definitions-ch 原文:https:/ ...

  5. 旺信UWP正式版发布

    下载链接:https://www.microsoft.com/store/apps/9nblggh5lq9x 各位园主好,在旺信Beta版发布后近两个月,我们的新版本1.1.0终于上线了,并且更名为旺 ...

  6. 免杀后门之MSF&Veil-Evasion的完美结合

    本文由“即刻安全”投稿到“玄魂工作室” Veil-Evasion 是 Veil-Framework 框架的一部分,也是其主要的项目.利用它我们可以生成绕过杀软的 payload !kali 上并未安装 ...

  7. Maven日常 —— 你应该知道的一二三

    以前在日常工作中,使用Maven只是机械的执行Maven clean.Maven install,对其中的原理与过程并无了解,近期阅读了<Maven实战>,对Maven有了更深入的理解. ...

  8. storm 集群配置

    配置storm集群的过程中出现写问题,记录下来 1.storm是通过zookeeper管理的,先要安装zookeeper,从zk官网上下来,我这里下下来的的3.4.9,下载后移动到/usr/local ...

  9. android studio sdk 不能更新

    网上看到好多sdk不能更新的,解决办法基本上一下,试了下大都没用,,有人说改hosts ,我试了 貌似没用 下面是我亲测可以更新的一种方法:使用镜像地址更新 步骤: 1. 打开 SDK Manager ...

  10. WaitType:SOS_SCHEDULER_YIELD

    今天遇到一个query,处于SOS_SCHEDULER_YIELD 状态,physical IO 不增加,CPU的使用一直在增长.当一个sql query长时间处于SOS_SCHEDULER_YIEL ...