Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1562181
  • 博文数量: 327
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 3556
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-05 21:28
个人简介

东黑布衣,流浪幽燕。 真诚善良,值得信赖。

文章分类

全部博文(327)

我的朋友

分类: BSD

2016-10-21 23:45:08

Visual Assisit X

01. 如何在VS2005中设置80个字符警戒线?
这个是VisualAssistX的功能;Options -> Display 倒数第五行 “Display indiocato
r after....” 将EditBox中设置成80。


02.
在Visual Studio中写代码时,按键,会自动进行缩进。有时希望实现按键出现
多个空格的效 果。Visual Studio 提供了这样的功能,具体设置方法为:打开 “Tools --
> Options --> Text Editor”,
如果是编写C/C++程序,就打开“C/C++-->Tabs”,在这里,选中“Insert spaces”即可,还
可在该对话框中设置 Tab 的大小和缩进大小。修改完设置后,写代码时再按键就会
自动加入几个空格。

在Visual Studio 2005中,选定代码后,按Ctrl+K+F组合键,可以自动进行代码对齐。
VC6.0中相应的快捷键是:Alt+F8

03. 怎么消除c4996警告
VC6---选项Project | Configuration Properties | C/C++ | Preprocessor | Preprocessor
Definitions 添加_CRT_SECURE_NO_DEPRECATE和_SCL_SECURE_NO_DEPRECATE

VS2005 项目属性---C/++ --->预处理定义下-》配置 -》下面添加_CRT_SECURE_NO_DEPRECATE和_SCL_SECURE_NO_DEPRECATE两个宏

04. 检测到 Mac 文件格式: 请将源文件转换为 DOS 格式或 UNIX 格式

非常简单可以解决:

方法一,用editplus打开,再复制回VS

方法二:在VS中,点文件->高级保存选项,然后在行尾选项中选择windows(CR LF),重新编译,ok

方法三:
Unix/Linux换行符是'\n'
Windows换行符是'\r\n'
Mac换行符是'\r'
编个小程序比如Mac2Unix.c将命令行给出的文件中所有'\r'替换为'\n',然后利用批处理的for语句处理指定目录下所有文件即可。

  1. //Mac2Unix.c
  2. #include <stdio.h>
  3. FILE *f;
  4. int c1,c2;
  5. int main(int argc,char *argv[]) {
  6.    if (argc!=2) {
  7.       printf("Usage: Mac2Unix filename\n");
  8.       return 1;
  9.    }

  10.    f=fopen(argv[1],"rb+");
  11.    if (NULL==f) {
  12.       printf("Can not open file [%s]!\n",argv[1]);
  13.       return 2;
  14.    }

  15.    while (1) {
  16.       c1=fgetc(f);
  17.       if (EOF==c1) break;
  18.       if ('\r'==c1) {
  19.          c2=fgetc(f);
  20.          if (EOF==c2) {
  21.             fseek(f,-1L,SEEK_CUR);
  22.             fputc('\n',f);
  23.             break;
  24.          }

  25.          if ('\n'!=c2) {
  26.             fseek(f,-2L,SEEK_CUR);
  27.             fputc('\n',f);
  28.             fseek(f,1,SEEK_CUR);
  29.          }
  30.       }
  31.    }
  32.    fclose(f);
  33.    return 0;
  34. }
比如在cmd窗口里面输入以下命令,可以用c:\mydir\Mac2Unix.exe处理所有c:\tmp\目录下及其所有子目录下的*.c文件
for /f %f in ('dir /a-d /b /s c:\tmp\*.c') do c:\mydir\Mac2Unix.exe %f

05. fatal error C1010: unexpected end of file while looking for precompiled head
致命错误C1010:在寻找预编译指示头文件时,文件未预期结束。
就是没有找到预编译指示信息的头文件。
问题一般发生在:通过添加文件的方式,添加了一些cpp文件到一个MFC的程序,但该cpp文件并不是MFC,而是标准的C++。
解决方案1: 右键单击项目工程中的cpp文件,在菜单Project->Settings->C/C++->Precompile Header,设置为第一项:Not using precompile headers。
解决方案2:在.cpp文件开头添加包含文件stdafx.h。 #include"stdafx.h"

06. 1>LINK : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt
这个错误是因为采用incremental linking(增量式链接)导致的,可以通过禁止工程中incremental linking的选项避免这个问题。具体操作:

Project(项目)->Properties(属性)->Linker(连接器)->Gerneral(常规)->Enable Incremental Linking(启动增量链接),把 Yes (/INCREMENTAL) 改为 No (/INCREMENTAL:NO) 即可。

上述问题只有在debug版本下才会出现的,是因为release版本会默认关闭增量连接而debug版本默认是启动增量链接的。

incremental linking 是为了节省编译所用时间,加快编译速度。至于为什么会有问题,应该是VS工程的一个BUG。


07. 请问VS2010里面的CLR console application和win32 console application有什么不一样?
他们好像都可以编写C/C++程序,主函数名不一样,参数也不一样,好像win32运行的更快一点?
CLR console application 就是 .Net 程序,
和 C# 之类的写的程序一样了,不是传统意义上的 C/C++ 程序


08.  卸载或更改程序”里面未显示VS2013,如何卸载
MSI没问题的话,msiexec /x 产品码就可以删掉。VS2013不同版本产品码不一样,不确定的话,
可以用wmic product where "Name like '%Visual Studio%'" get Name, Version, IdentifyingNumber
看(这需要MSI的数据没问题),或者上其他有同一个版本的VS2013的机器看看
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall下面的删除命令行是什么。

msiexec干不掉的话,你的机器的MSI组件可能损坏,去
下载运行MSI修复工具先
。但是损坏到无法修复的可能性也是有的,要做好重做系统的准备。

09. 彻底卸载 Visual Studio 2013、 Visual Studio 2015 以及后续各种版本
0. 解压下载的 TotalUninstaller.zip 文件
1. 使用 administrator 权限运行cmd
2. 执行 Setup.ForcedUninstall.exe
3. 根据提示键入 'Y' 开始卸载
下载地址:




阅读(1604) | 评论(0) | 转发(0) |
0

上一篇:20161019 ADV

下一篇:Word Pdf Tips

给主人留下些什么吧!~~