监视变量显示未定义标识符:

  VS2012在编译的时候采用了较快的编译模式,所以有些变量就显示未定义了。 
  解决方案: 
  项目->属性->c/c++->优化->改为禁用/OD 
  重新编译就可以了。

'scanf': This function or variable may be unsafe. Consider using scanf_s instead

  这种错误,这是新版vc库添加的警告因为微软认为scanf的使用存在安全隐患,因为C/C++中的字符串处理都是以\0为截止符的,如果搜索不到\0,容易出现字符串越界所有vc扩展的所谓安全标准库,都添加了一个参数用以指定字符串参数的长度,用以避免这种安全隐患。
  解决方案:
  项目 -> 属性 -> C/C++ -> 预处理器 ->预处理器定义:添加 _CRT_SECURE_NO_DEPRECATE

 发布的程序在其他电脑上无法运行

  解决方案:
  使用VS2010编译的程序在windows xp中运行时,经常会出现找不到相关的DLL文件,我们可以使用静态编译的方法把这些运行依赖文件打包到*.exe中来,以减少对环境的依赖。
  一般可以配置以下两项:
  (1)项目 -> 属性 -> 配置属性 -> 常规 -> MFC的使用 :在静态库中使用MFC。
  (2)项目 -> 属性 -> 配置属性 -> C/C++ -> 代码生成 -> 运行库 :多线程(/MT)。

工具菜单下没有外部工具(VS2008遇到的)

  解决方案:
  工具 -> 自定义 -> 命令
  在左边的一栏中选择工具,然后在右边的一栏中找到外部工具,拖动到最上面的菜单里。

调试时加载符号

  解决方案:
  工具 -> 选项 -> 调试 -> 符号
  取消MicroSoft符号服务器的勾选

 修改默认栈的大小

   #pragma comment(linker, "/STACK:102400000,102400000")

使用VS2010以后的版本创建C++窗体程序

  VS2010以及以前的版本,创建项目时都可以在CLR下找到“Windows窗体应用程序”的项目模板,但是VS2012以后的版本就没这么方便了。可以通过打开旧版本的项目来修改,也可以像下面这样操作:

这里就以VS2015为例,打开VS2015如下图所示:

  众所周知,WinForm需要.NET的支持。因此我们需要建立一个CLR空项目,步骤如下:

  ①新建项目

  ②选择CLR空项目

  ③结果

  添加WinForm头文件:

  ①右键点击头文件,添加新建项

  ②选择UI的Windows窗体

  ③结果

  注意,在第三步结果这里,可能会(请注意!是可能,反正在我的电脑上发生了)报错:若要在加载设计器前避免可能发生的数据丢失,必须纠正以下错误。 

  这里可以不必理会,请按照步骤继续走。   

  这里出现了大家所熟知的窗体设计器,但是还是没能允许,因为没有主函数。需要继续进行如下操作:

  ①编写主函数代码

  代码这里给出了,大家注意修改对应的命名空间名称及窗体类名称。

  当你走到此处时,保存修改,将那个报错的窗口关掉,然后重新打开,你就会发现,是下面这样的:

  一切OK了!庆祝一下

  ②点击“本地Windows调试”,结果:

  而后: 

  我们发现程序可以成功编译运行了,但是还留着一个黑乎乎的控制台。接下来,我们就通过设置取出这个控制台:

  ①右键点击项目,设置项目属性

  ②子系统改为窗口

  ③入口函数设置为main

  ④再次执行,黑框就不见了

Visual Studio蛋疼问题解决的更多相关文章

  1. Visual Studio蛋疼问题解决(2)

    Astyle配置 1.下载并安装Astyle(AstyleExtension.vsix),重新启动VS: 2.工具->选项,从左侧列表找到AStyleFormatter,在右边编辑参数,参考设置 ...

  2. Visual Studio蛋疼问题解决(1)

    监视变量显示未定义标识符: VS2012在编译的时候采用了较快的编译模式,所以有些变量就显示未定义了.  解决方案:  项目->属性->c/c++->优化->改为禁用/OD  ...

  3. Microsoft Visual Studio 2015 下载、注册、安装过程、功能列表、问题解决

    PS:请看看回复.可能会有文章里没有提到的问题.也许会对你有帮助哦~ 先上一张最终的截图吧: VS2015正式版出了,虽然没有Ultimate旗舰版,不过也是好激动的说.哈哈.可能有的小伙伴,由于工作 ...

  4. Visual Studio 2015出现Cannot find one or more components. Please reinstall the application.的问题解决

    cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE devenv.exe /resetuserdata devenv. ...

  5. 使用Visual Studio 调试断点不起作用的问题解决办法 调试Revit CAD 不能进入断点

    随着Visual Studio 2010正式版的发布,相信不少人都像我一样升级到了Visual Studio 2010.那么您在使用VS2010在AutoCAD,Map 3D或Revit的.net应用 ...

  6. win7(64位旗舰版)visual studio 2017无法安装及vs2015闪退问题解决方式

    折腾了两天,几乎试了网上说的所有方法(就差重装系统了,看到有人说重装系统之后还是同样的问题,果断放弃重装),visual studio 2017的安装问题终于解决了,为了帮助同样还在折腾的初级开发者们 ...

  7. Visual Studio Installer闪退问题解决方法

    Visual Studio 2019安装推荐的方式是通过官方给的Installer进行的(2017也是同样方法),但是有时会出现在”即将完成…一切即将准备就绪“这个界面闪退的问题,导致软件的安装.卸载 ...

  8. Visual Studio Code 使用Git进行版本控制

    Visual Studio Code 使用Git进行版本控制 本来认为此类教程,肯定是满网飞了.今天首次使用VS Code的Git功能,翻遍了 所有中文教程,竟没有一个靠谱的.遂动笔写一篇. 请确保你 ...

  9. Apworks框架实战(四):使用Visual Studio开发面向经典分层架构的应用程序:从EasyMemo案例开始

    时隔一年,继续我们的Apworks框架之旅.在接下来的文章中,我将逐渐向大家介绍如何在Visual Studio中结合Apworks框架,使用ASP.NET Web API和MVC来开发面向经典分层架 ...

随机推荐

  1. 分享类shareSDK

    1.新浪微博分享时需要注意: [A] 应用信息->基本信息->应用地址 [B] 应用信息->高级信息->OAuth2.0 授权设置 //当使用新浪微博客户端分享的时候需要按照下 ...

  2. auto(c++11)

    C++primer 第五版,第三章出现了此段程序,求解读附源码:代码1:#include<iostream>#include<string>using namespace st ...

  3. 假定CSomething是一个类,执行下面这些语句之后,内存里创建了____个CSomething对象。

    CSomething a(); CSomething b(2); CSomething c[3]; CSomething &ra = b; CSomething d=b; CSomething ...

  4. 二、JavaScript语言--JS实践--倒计时效果

    主要内容:分析不同倒计时效果的计算思路及方法,掌握日期对象Date,获取时间的方法,计算时差的方法,实现不同的倒时计效果. Javascript 日期对象: Date()返回当前的日期和时间 getY ...

  5. Xcode因为证书问题经常报的那些错

    去开始做 iOS开发的时候,因为证书问题 Xcode 经常报这样或那样的错,经过实践,现在看见 Xcode 报错已经心平气和了,经常报的错就那么多,整理一下. 1. 确认下证书是不是开发证书,如果是发 ...

  6. 在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程

    在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程 本教程提供PDF格式下载: 在RedHat.Enterprise.Linux_v6.3系统中安装Ora ...

  7. 【PHP&&mysqli】

    msyqli和mysql只有一个字母的差别,真正的含义是msyql的增强版扩展. MySQL可以处理满足程序员对MySQL数据库操作的各种需要了,为什么还需要mysqli呢?因为mysqli支持面性对 ...

  8. penghui_031413 Bat命令学习

    penghui_031413   Bat命令学习 基础部分:====================================================================== ...

  9. 【hibernate merge】session1.merge(T entity)方法的含义和update方法的区别

    注意:  MERGE语句是SQL语句的一种.在SQL Server.Oracle数据库中可用,MySQL.PostgreSQL中不可用. 1>session1.merge(T entity) 合 ...

  10. Liferay 6.2 改造系列之十三:修改用户编辑页面表单内容

    为简化用户编辑,删除无用内容: 在/portal-master/portal-impl/src/portal.properties文件中,有如下配置: # # Input a list of sect ...