VS2010修改dll和lib文件名

合集下载

VS2010下配置Openmesh+openGL

VS2010下配置Openmesh+openGL

VS2010下配置Openmesh+openGL一.配置OpenGL1首先,下载glut.rar文件,这个网上搜一下都能够找到,亦可以从opengl官网下载,/resources/libraries/glut/glutdlls37beta.zip。

2.解压后可以得到5个文件:glut.h、glut.dll、glut.lib、glut32.lib、glut32.dll。

然后,○1把glut.h文件放在C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include\gl文件夹下面;○2把glut.lib、glut32.lib两个文件放在静态函数库所在的文件夹中,也就是说这两个文件要放到自己的VS2010安装目录下的VC\lib文件中。

我的vs2010安装目录是E:\vs2010\VC\lib;○3最后把glut.dll、glut32.dll文件放在C:\windows\system32文件夹下面.三步做完openGL的文件配置就完成了。

二.配置Openmesh1. 在网站上下载了 OpenMesh-2.0-RC4(这个谷歌下,网上很多,最好下载最新版本的)。

2.安装openmesh后,openmesh安装目录下的lib文件夹里面会有两个库文件OpenMeshCore.lib 和OpenMeshTools.lib。

3.为了不设置依赖的编译目录,将这两个文件放到VS的库文件里E:\VS2010\VC\lib中。

4.打开VS2010,新建一个工程,命名如test1,然后设置test1工程的依赖项,工程属性->连接器->输入-》附加依赖项-》加入如上两个lib就可以了。

在这里要说明一下,如果从VS2010的工具—属性里面设置附加依赖属性是不行的,所以我们要自己建一个工程,然后设置这个工程的附加依赖属性,设置的地方有两处,如下:○1项目—test1属性—VC++目录主要设置的是包含目录和库目录,文件路径设置如图,lib和include文件夹都在自己的openmesh安装目录下。

总结vs2010调用lib,和dll

总结vs2010调用lib,和dll

Vs2010调用lib和dll的总结1.首先调用dll先用vs2010生成自己的dll文件,我命名为testdll.dll首先新建一个工程testdll,在工程中加入testdll.h和testdll.cpp testdll.h内容为:extern"C"int__declspec(dllexport) add(int,int);testdll.cpp内容为:#include<windows.h>#include"testdll.h"BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved){switch(ul_reason_for_call){case DLL_PROCESS_ATTACH:case DLL_THREAD_ATTACH:case DLL_THREAD_DETACH:case DLL_PROCESS_DETACH:break;}return TRUE;}int add(int a,int b){return a+b;}还有设置一下编译就生成了testdll.dll库文件再新建一个工程test在test里面建立一个test.cppTest.cpp内容:#include<windows.h>#include<iostream>#include<tchar.h>using namespace std;int main(){HINSTANCE hDll; //dll 句?柄À¨²hDll=LoadLibrary(TEXT("testdll.dll")); //加¨®载?dlltypedef int(* lpAddFun)(int,int); //宏¨º定¡§义°?函¡¥数ºy指?针?类¤¨¤型¨ªlpAddFun addFun; //函¡¥数ºy指?针?int * num;if(hDll!=NULL) //判D断?dll加¨®载?是º?否¤?成¨¦功|{addFun=(lpAddFun)GetProcAddress(hDll,"add"); //获?取¨?想?要°a引°y入¨?的Ì?函¡¥数ºy以°?及¡ã变À?量¢?num=(int *)GetProcAddress(hDll,"num");/* if(num!=NULL){printf("%d\n",* num);}*/if(addFun!=NULL){int result=addFun(3,2);printf("3+2=%d\n",result);}FreeLibrary(hDll); //卸?载?dll}getchar();return 0;}设置三个地方,就可以编译了第一:上面打红圈的就是把testdll.dll的路径添加上去第二:添加testdll.lib就可以了第三:就是把testdll.dll路径添加到环境变量PATH中,就可以了。

DLl文件修改方法

DLl文件修改方法

一、DLL文件‎常识DLL是D‎ynami‎c Link Libra‎ry的缩写‎,意为动态链‎接库。

在Wind‎o ws中,许多应用程‎序并不是一‎个完整的可‎执行文件,它们被分割‎成一些相对‎独立的动态‎链接库,即DLL文‎件,放置于系统‎中。

当我们执行‎某一个程序‎时,相应的DL‎L文件就会‎被调用。

一个应用程‎序可有多个‎D LL文件‎,一个DLL‎文件也可能‎被几个应用‎程序所共用‎,这样的DL‎L文件被称‎为共享DL‎L文件。

DLL文件‎一般被存放‎在C:Windo‎wsSys‎t em目录‎下。

二、修改DLL‎文件的具体‎应用在系统的组‎策略和注册‎表中,我们可以修‎改一些键值‎来优化我们‎的系统,并加强操作‎系统的安全‎性。

可是,对于限制下‎载、禁止删除文‎件等功能,我们无法通‎过上述的操‎作来完成,这只有通过‎修改系统D‎LL文件来‎实现。

目前,我们通过修‎改系统的D‎L L文件,可以实现禁‎止删除文件‎、禁止IE下‎载、禁止IE另‎存为、禁止文件打‎开方式等功‎能。

三、系统中部分‎D LL文件‎的功能1、Brows‎elc.dll IE所需要‎调用的库文‎件DLL 结构雏形就‎是它了2、Shdoc‎lc.dll 系统窗口及‎设置等,如删除文件‎、重命名3、Shell‎32.dll 系统窗口及‎设置等,如删除文件‎、重命名4、Crypt‎ui.dll IE控件下‎载及提示对‎话框程序四、修改DLL‎文件的方法‎1、下载DLL‎文件修改工‎具EXES‎C OPE6‎.3 - 6.4工具2、获取Bro‎wselc‎.dll、Shdoc‎l c.dll、Shell‎32.dll和C‎r yptu‎i.dll这几‎个链接文件‎。

在找这几个‎文件时,最好将其他‎机器的硬盘‎,挂接在本机‎中,然后用本机‎的操作系统‎启动并复制‎这几个文件‎。

3、在修改DL‎L文件的时‎候,打开该键值‎,在右面的对‎话框中将所‎要修改的键‎值禁用即可‎,不要删除,以备日后恢‎复(如图)五、DLL文件‎修改秘籍1、禁止下载的‎修改方法:打开 Shdoc‎lc.dll 修改资源--对话框---4416,将4416‎键值禁用即‎可。

VS2010 环境下实现 C程序调用由 C 源代码编译得到的 DLL 文件

VS2010 环境下实现 C程序调用由 C 源代码编译得到的 DLL 文件
puts("2.获取函数地址失败!"); } else {
printf("max(%d, %d) = %d\n", a, b, fmax(a, b)); } } FreeLibrary(hLib);
return 0; }
注意以上源代码第 4 行中的标识符 __cdecl 开头是连续两个下划线。 输入源代码后的窗口如图 2.5 所示。然后按 Ctrl+Shift+S 组合键保存所有文件。
7
图 2.3 新建源文件 UseMax.c
图 2.4 空白的源代码编辑器窗口 4. 接上步,在源代码编辑器中输入以下源代码: #include<windows.h> #include<stdio.h> typedef int (__cdecl *FuncPtr)(int a, int b); int main(void) { FuncPtr fmax; HINSTANCE hLib; int a = 3, b = 4;
建项目”对话框中左侧选取“已安装的模板”——“其他语言”——“Visual C++” ——“Win32”,在中间区域点击“Win32 项目”,然后在名称栏中输入 max,并选 择合适的目录保存该项目的有关文件,如图 1.1 所示。然后取消勾选右下角的复选 框“为解决方案创建目录”,最后点击“确定”。
参考资料
1. VS2010 文档——Using Dynamic-Link Libraries
11
图 2.7 成功生成 Release 版的 UseMax.exe 文件 根据图 2.7 中的“输出”窗口的提示可知,已经在路径 D:\_Data\CMP\Lng\CLng\Programs\_CProject\UseMax\Release 下生成了程序 UseMax.exe。 7. 接上步,按 Ctrl+F5 组合键(或点击“调试”菜单下的“开始执行(不调试)”命令),

vs2010下lib和dll文件的使用

vs2010下lib和dll文件的使用

vs2010下lib和dll文件的使用——笔记一、lib文件的简介.lib是一种文件后缀,是Windows操作系统的库文件,有静态lib和动态lib 之分:1)、静态lib文件:将导出的文件的声明和实现都放在lib文件中,此时lib 文件主要包含函数的实现部分(cpp文件),例如类的函数定义。

使用时只需配合相关的头文件,编译后程序将lib文件中的代码嵌入到宿主程序中,也就是最后的exe文件中,此时移除lib文件,程序可以正常运行,即编译后就不需要lib 文件的支持了。

2)、动态lib文件:相当于是一个h头文件,用于支持相应的dll文件的运行。

里面存储的是dll文件中各个导出函数的地址,达到链接主程序与dll文件的目的。

二、dll文件的生成vs2010生成dll文件,生成dll文件的时候需要对应的lib文件才能使用,dll生成方法如下(此处只是生成部分,在使用时还需修改):1)新建工程,选择“win32项目”,注意不是“win32控制台项目”,下一步选择生成dll文件,其余默认;2)添加需要封装的.cpp文件,并加入对应的.h文件,先说明类的封装(也就是类的cpp文件)头文件.hclass __declspec(dllexport) NB (类的头文件中只需修改此处即可){public:private:}其中关键字dllexport说明该类的实现部分需要导出。

源文件.cpp添加一句#include "stdafx.h"即可再说明一下一般函数的封装将函数的定义改为extern"C"__declspec(dllexport) float add(float a, float b);extern"C"__declspec(dllexport) float MIN(float a,float b);float MAX(float a,float b);函数MAX为导出到dll文件中,因此相当于不可见。

如何修改DLL文件

如何修改DLL文件

如何修改DLL⽂件⼀、DLL⽂件常识 DLL是Dynamic Link Library的缩写,意为动态链接库。

在Windows中,许多应⽤程序并不是⼀个完整的可执⾏⽂件,它们被分割成⼀些相对独⽴的动态链接库,即DLL⽂件,放置于系统中。

当我们执⾏某⼀个程序时,相应的DLL⽂件就会被调⽤。

⼀个应⽤程序可有多个DLL⽂件,⼀个DLL⽂件也可能被⼏个应⽤程序所共⽤,这样的DLL⽂件被称为共享DLL⽂件。

DLL⽂件⼀般被存放在C:WindowsSystem⽬录下⼆、修改DLL⽂件的具体应⽤在系统的组策略和注册表中,我们可以修改⼀些键值来优化我们的系统,并加强操作系统的安全性。

可是,对于限制下载、禁⽌删除⽂件等功能,我们⽆法通过上述的操作来完成,这只有通过修改系统DLL⽂件来实现。

⽬前,我们通过修改系统的DLL⽂件,可以实现禁⽌删除⽂件、禁⽌IE下载、禁⽌IE另存为、禁⽌⽂件打开⽅式等功能。

三、系统中部分DLL⽂件的功能1、Browselc.dll IE所需要调⽤的库⽂件DLL 结构雏形就是它了2、Shdoclc.dll 系统窗⼝及设置等,如删除⽂件、重命名3、Shell32.dll 系统窗⼝及设置等,如删除⽂件、重命名4、Cryptui.dll IE控件下载及提⽰对话框程序四、修改DLL⽂件的⽅法1、下载DLL⽂件修改⼯具EXESCOPE6.3 - 6.4⼯具2、获取Browselc.dll、Shdoclc.dll、Shell32.dll和Cryptui.dll这⼏个链接⽂件。

在找这⼏个⽂件时,最好将其他机器的硬盘,挂接在本机中,然后⽤本机的操作系统启动并复制这⼏个⽂件。

3、在修改DLL⽂件的时候,打开该键值,在右⾯的对话框中将所要修改的键值禁⽤即可,不要删除,以备⽇后恢复(如图)五、DLL⽂件修改秘籍1、禁⽌下载的修改⽅法:打开 Shdoclc.dll 修改资源--对话框---4416,将4416键值禁⽤即可。

FastDB-VS2010编译过程

FastDB-VS2010编译过程

3.73和3.71的源码中inc不一样。

注意,别吭了。

fastDB-3.73版本,VS2008环境下编译。

Debug DLL打开fastDB-3.73源码中的SLN(在2008工作空间的fastdb_373文件夹中,已经是2008格式,若用VS2010打开,需要转换工程),默认Debug DLL,多线程调试DLL (/MDd),使用多字节字符集,连接器附加依赖项:wsock32.lib(打开工程就有)。

编译得到fastdb.lib和fastdb.dll。

如下:用VS2008新建Win32空工程FastDB_Test_3,加入例子testarridx.cpp,将源码中的inc和编译生成的fastdb.lib和fastdb.dll包含到FastDB_Test_3工程源码目录下,附加包含目录inc,附加依赖库fastdb.lib,使用多字符集。

Debug编译可以通过,运行也没有问题,调试也没有问题。

若源码编译用“使用Unicode 字符集”,那么新建的工程也用“Unicode”,则编译、运行也都没有问题。

Release DLL与Debug DLL模式效果一样。

也可以调试。

不知道这两者的区别是什么。

Unicode同样可以使用。

Debug和Release这两种模式下源码编译都会出错,不能进行。

fastDB-3.73版本,VS2008环境下编译的库在VS2010工程中使用。

没有试,不过值得试验!fastDB-3.73版本,VS2010环境下编译Debug DLL源码和新建工程都采用多字符集。

编译成功。

Release DLL源码和新建工程都采用多字符集。

编译成功。

Unicode下,Debug DLL和Release DLL也都能编译成功,要在nr_area_energy(Qt环境)中使用的,应该是Unicode环境Debug DLL模式下编译得到的fastdb.lib和fastdb.dll,以及源码包中的inc文件。

Windows下用MSYS和VS2010编译cairo1.12.14和cairomm1.10.0详细步骤(图文教程)

Windows下用MSYS和VS2010编译cairo1.12.14和cairomm1.10.0详细步骤(图文教程)

Windows下用MSYS和VS2010编译cairo1.12.14和cairomm1.10.0详细步骤(图文教程)创建时间:2013/03/17 19:59更新时间:2013/03/20 14:45作 者:Exlimit来 源:/feisky/archive/2010/03/23/1692622.html前沿:编译较大开源库,首先从源代码的readme开始阅读,搞清楚每个版本每种平台上编译的方法,还有就是仔细看官方网站的介绍,得全都看懂以后再开始做,否则很可能做的都是无用功,最终得不到正确的结果,徒劳无功。

综合介绍:Cairo官网: /主要有下载,文档,例子等栏目。

相关平台的下载、安装(编译)都有介绍,但是也不是100%准确。

1、GNU和Linux下编译还是比较方便的,略过……2、Windows下编译比较麻烦,问题和错误比较多,但也有现成的编译好的Cairo库可以用。

①、现成的从GTK+的windows版本中获取已编译好的Win32和X64版本,其中Download页面有详细介绍;主要分为三个包Runtime、Dev、Source,分别对应dll库、头文件和导入库、源代码。

GTK+win32下载官方网站:/download/win32.php②、自己编译,很多细节要注意,但是用msys还是相对比较方便的,其中官网上的MSVC版本(VS编译版本太老了,暂时没有新的出来)需要zlib、libpng和pixman三个第三方库。

zlib非常简单,不管用nmake命令编译还是下载官网的zlib.lib,zlib.dll都可以,也可以直接下载源码,然后加载libpng的vs2010解决方案,修改其中zlib工程的属性,找到zlib源码;libpng源码自带VS2010工程文件,静态动态所有的库都可以生成(依赖于zlib);pixman用msys 直接make -f makefile.win32即可,生成的是静态库;编译Cairo之前需要把前三个库编译好,更改mon的makefile文件,配置相关的include路径和lib库路径。

VS2010 C++环境下DLL和LIB文件目录及名称修改

VS2010 C++环境下DLL和LIB文件目录及名称修改

LL工程,Debug版本下输出文件由basetool.dll basetool.lib 改为basetoolD.dll basetoold.lib 需设置:1、配置属性-常规-目标文件名$(ProjectName) 加d2、配置属性-连接器-常规-输出问件由加d3、配置属性-连接器-高级-导入库,设置文件名$(OutDir)$ProjectName)d.lib4、如果有导出文件,.def文件中也一定要修改导出库的名字LIBRARY "BaseTool"变为LIBRARY "BaseToold"关于相对目录相对目录是相对某个文件而言的,例如在VC项目属性配置附加包含目录、附加库目录则是相对*.dsp、*.vcproj文件而言的;在某个*.c、*.cpp文件中使用#include包含命令,是相对这个*.c、*.cpp文件而言的。

当前目录是可见的,一般直接引用文件名(夹)对于子文件夹可以添加“./”。

..:父目录../include:父目录下的include目录../..:祖父目录/include:祖父目录下的include目录-----------------------------------------------------C/C++附加包含目录和VC++目录包含目录区别?连接器常规附加库目录和VC++目录库目录区别?连接器-输入-附加依赖项附加依赖项是指输入项,如某个.LIB文件a.lib,添加到附加依赖项,你的LIB文件被真正包含进来了。

等同于“#pragma comment(lib, "winsock.lib") ”语句附加库目录是你用#pragma comment(lib,"a.lib")的时候;此时就搜索a.lib的路径列表就包含这个路径。

把它所在的目录添加到附加库目录里面:仅仅包含目录只是告诉IDE,搜索没有指定路径的库文件时,也搜索这里。

Qt中文代码用VC2010编译问题解决

Qt中文代码用VC2010编译问题解决

Qt中文代码用VC2010编译问题解决作者:蔚蓝(winland0704)说明一下情况,本人电脑WinXP系统里有两套Qt开发库(都是最新的5.3.1):一套是Qt5-MinGW版本,配合QtCreator编写代码比较方便,对Qt库、代码补全、界面编写都挺好使。

这套Qt5-MinGW库编译出来的exe,依赖的dll实在太多(Release版本依赖:icudt52.dll,icuin52.dll,icuuc52.dll,libgcc_s_dw2-1.dll,libstdc++-6.dll,libwinpthread-1.dll,Qt5Core.dll,Qt5Gui.dll,Qt5Widgets.dll,共9个dll计43MB),不便于在Windows下发布软件。

第二套是Qt的MSVC 2010的版本,这个套件可以配合VS2010或QtCreator使用。

VS对Qt库函数的支持不好,代码编辑时函数名写错了都不提示的,不方便开发。

但是用这个版本开发的exe依赖文件少,一般对装了VC运行库的系统,VC编译出来的exe只依赖Qt5Core.dll,Qt5Gui.dll,Qt5Widgets.dl,这样比较好发布。

一般是用Qt-MinGW和QtCreator开发代码,然后用QtVS的库编译出程序发布。

一般如果代码是全英文的,那么没什么冲突。

但是本人代码和界面都是有中文的,问题也就来了。

QtCreator和Qt工具集默认的代码编码格式是UTF8,可选支持ANSI(GB2312),不支持微软Windows的Unicode编码格式。

VC编译器默认是ANSI(GB2312),可选支持Unicode,不支持UTF8。

所以QtCreator+MinGW开发的代码,对于VC编译器来说是不认识的,尤其是中文字符串,铁定是出错的。

现在归纳一下出问题的编译错误和显示乱码问题:源代码是QtCreator默认的UTF8编码格式,本人做了一个小的测试程序,就是Dialog里放一个Label测试,在QtCreator和MinGW编译后界面:核心代码就一句:ui->labelTest->setText(tr("一二三四五六七八九十"));用QtVS版本编译测试如下:1. 什么都不改,UTF8编码的源码,用QtVS编译编译出错:提示信息为:D:\Projects\testLuanMa\dialog.cpp:-1: warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。

VS2010生成各种文件详解

VS2010生成各种文件详解

VS2010生成各种文件详解aps文件.aps文件记录了资源信息,要利用现成的资源,需要修改3个文件,.rc文件,Resource.h文件和.aps文件,.aps直接删除后,进入程序,VC会自动生成。

clw文件.clw文件包括ClassWizard中用来编辑的现有类或增加新类的信息。

ClassWizard还用这个文件来保存创建和编辑消息映射和对话框数据所需的信息。

或是创建虚拟成员函数所需的信息。

.clw文件记录了类的信息,如果classView中某个类不见了,重新生成该文件就可以了,方法:删除此文件,点击“建立类向导”,根据提示输入工程名称就可以了。

cpp文件.cpp是C++语言源程序,按照C++语法编译,包含全局变量的定义(及初始化)、全局函数的定义、类函数成员的定义和类带static 限定符的数据成员的初始化等。

csproj文件.csproj:cs project, cs项目。

用vs可以直接打开, 因为这个文件引用了这个项目的所以有文件。

er文件er: 用户配置文件,如<AspNetDebugging>True</AspNetDebugging>。

项目是在开发过程中为了便于管理而运用的代码管理方式,程序员在开发软件时可以根据各个类的不同功能而将其归类到不同的项目中。

而一个或多个项目可以组成一个解决方案。

说白了,项目就是为代码管理提供方便。

而代码的运行并不需要.cspro j、er之类的文件,所以在开发完成之后生成的软件或网站中,不会有以上之类的文件。

因此:在软件开发中需要项目进行代码管理,而在软件使用中则不需要项目。

designer.cs文件.designer.cs里面是由VS自动生成的页面的设计代码,你拖动一个控件到页面上的时候,就会产生相应的代码在designer.cs里面。

h文件.h叫做头文件,它是不能被编译的。

“#include”叫做编译预处理指令,可以简单理解成,在1.cpp中的#include"1.h"指令把1.h 中的代码在编译前添加到了1.cpp的头部。

C++test(VS2010插件版)简明操作手册

C++test(VS2010插件版)简明操作手册

目录目录 (1)C++test(VS2010插件版)使用文档 (2)1编写说明 (2)2项目导入 (2)3 工程设置 (2)4静态测试 (3)4.1 静态测试配置 (3)4.2执行静态测试 (4)4.3 查看测试报告 (5)4.4 查看质量任务 (5)5.自动生成测试用例 (6)5.1. 自动生成测试用例配置 (6)5.2 执行自动生成测试用例 (8)5.3 查看测试报告 (8)5.4 查看自动生成的测试用例 (8)6.执行测试用例 (15)6.1. 执行测试用例配置 (15)6.2 执行测试用例 (17)6.3 查看测试报告 (17)6.4 查看生成的测试用例 (17)6.5 查看覆盖率 (18)7.桩函数 (19)7.1 桩函数概述 (19)7.2 自动生成桩函数 (19)7.3 用户自定义桩函数 (20)8.关于测试用例 (21)8.1预置条件为形参的测试用例 (22)8.2调用子函数获得输入 (24)8.3.成员变量获得输入,如下源代码: (26)8.4. 全局变量获得输入及桩函数的联合使用 (27)C++test(VS2010插件版)使用文档1 编写说明Parasoft C++test是经广泛证明的最佳时间集成解决方案,它能有效地提高开发团队的工作效率和软件质量。

本教程侧重点介绍单元测试的使用方法。

单元测试的定义是测试应用程序中最小的单元。

单元测试提供了一种更有效的发现错误的方法,它将应用程序中的最小单元分离开来,使得测试更接近错误,只要简单地对每个最小单元进行独立测试,就很容易的使全面准确的找到程序中的错误成为可能,单元测试能帮助客户更准确更全面的找到错误,显著提高软件质量。

2 项目导入1.如何导入一个已有项目➢选择“File”>”打开”>”项目解决方案”➢找到.sln文件,双击.sln文件或者直接双击.sln文件。

3 工程设置1. 导入项目完成后,右键点击项目名称>”属性”>”配置属性”>”常规”下的“配置类型“改为“动态库(.dll)”如图所示:然后修改路径,双击C/C++>“常规“>”附加包含目录”,将当前工程下源代码路径添加进去,如图所示:4 静态测试4.1 静态测试配置点击测试三角号右边的下拉菜单>”测试配置”如图:点击用户自定义>“新建””➢名称可根据不同的测试项目,及测试标准命名,这里为默认命名“静态测试”➢点击静态,只启动MISRA C 2004的所有规则,如下图所示➢其他选项暂不考虑,点击Apply>Close完成测试配置4.2执行静态测试➢可对整个项目进行静态测试,也可根据需要对某个.c文件单独进行静态测试,不同的测试要选中测试目标,如对某一个.c测试一定要选中这个.c文件(左键点击该.c文件即可)。

VS2010设置

VS2010设置
CTRL + M, CTRL + L 展开代码定义
CTRL + DELETE 删除至词尾
CTRL + BACKSPACE 删除至词头
SHIFT + TAB 取消制表符
CTRL + U 转小写
CTRL + SHIFT + U 转大写
CTRL &#
/target:module 生成能添加到其他程序集的模块 (缩写: /t:module)
/define:<符号列表> 定义条件编译符号 (缩写: /d)
/doc:<文件> 要生成的XML文档文件
- 高级 -
/baseaddress:<地址> 要生成的库的基址
/bugreport:<文件> 创建一个“错误报告”文件
/codepage:<n> 指定打开源文件时要使用的代码页
VS2010快键
CTRL + SHIFT + B 生成解决方案
CTRL + F7 生成编译
CTRL + O 打开文件
CTRL + SHIFT + O 打开项目
CTRL + SHIFT + C 显示类视图窗口
F4 显示属性窗口
SHIFT + F4 显示项目属性窗口
CTRL + SHIFT + E 显示资源视图
/help 显示此用法信息 (缩写: /?)
/nologo 取消编译器版权信息
/noconfig 不要自动包含CSC.RSP文件
设置VS2010环境变量
include:

Vs2010编译错误集

Vs2010编译错误集

Vs2010编译错误集1、error C4430: missing type specifier - int assumed. Note: C++ does not support default-int在项目属性->Configration Properties->C/C++->Command Line页面的Additional Options中加入/wd44302、error MSB3073: The command regsvr32 /s /c 解决办法最近将VC2002 代码移植到VC2010,出现编译错误:1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft. CppCommon.targets(183,5): error MSB3073: The command "reg svr32 /s /c "D:\VC++Prj\source code\zutai\cha06\Meter\.\Debu g\Meter.dll"1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft. CppCommon.targets(183,5): error MSB3073: echo regsvr32 exec . time > ".\Debug\regsvr32.trg"1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft. CppCommon.targets(183,5): error MSB3073: :VCEnd" exited wit h code 3.英文版处理办法:Project->Configuration Properties->General->Target Extens ion设置为.ocx 或者.dllProject->Configuration Properties->Linkerl->General ->Out put File设置为$(OutDir)$(ProjectName)$(TargetExt)中文版处理办法:在项目上点右键,选择“属性”->“配置属性”->“常规”->“目标文件扩展名”,设置为.ocx 或者.dll在项目上点右键,选择“属性”->“配置属性”->“链接器”->“常规”->“输出文件”,设置为$(OutDir)$(ProjectName)$(TargetExt)3、altdef.h 都是这个文件里的定义#ifndef ATLTRY#define ATLTRY(x) ATLTRYALLOC(x)#endif //ATLTRY出问题的都是这个宏ATLTRY(szKey = new TCHAR[cbKey]);ATLTRY(pszW.Allocate(_convert));ATLTRY(szReg.Allocate(dwSize + 1));1>FilterImageGrabber.cpp1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(954) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(954) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(970) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(970) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(995) : error C2712: 无法在要求对象展开的函数中使用 __try1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(1008) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(1008) : error C2143: 语法错误 : 缺少“;”(在“{”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(1024) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(1024) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(1190) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\atlcomcli.h(1190) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(107) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(107) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(113) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(113) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(423) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(423) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(587) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(587) : error C2143: 语法错误 : 缺少“;”(在“{”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(901) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(901) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(971) : error C2059: 语法错误 : “catch”1>C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\i nclude\statreg.h(971) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)原来是工程属性-〉预定义里的问题,它在里面定义了try=_try,把这个删除就OK了4、Error MSB3073 exited with code 3The issue that causes "Error MSB3073 exited with code 3" happens to be with the VALUE in the Outputs property under Project > Properties > Configuration Properties > Custom Build Step.When I choose Edit for Outputs, a dialog box comes up. I enter a value of "$(OutDir)\regsvr32.trg" in the upper textbox then click OK. Now for some reason VS 2010 changes the display text to show "$(OutDir)\regsvr32.trg;%(Outputs)". I'm not sure why or if that is the cause of the problem.However, I will get "Build Successful" if I change my Output value to "<inherit from parent or project defaults>" instead of choosing Edit and putting a value in. No more Error MSB3073 exited with code 3.I guess I can say this issue is resolved but I'd like to know why/what causes this issue to begin with.5、 fatal error LNK1181: cannot open input file'largeint.lib'在linker->Input->Additional Dependencies中去掉largeint.lib6、error MSB3073最近将VC2002 代码移植到VC2010,出现编译错误:1>C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.target s(183,5): error MSB3073: The command "regsvr32 /s /c "D:\VC++Prj\source code\zutai\cha06\Meter\.\Debug\Meter.dll"1>C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.target s(183,5): error MSB3073: echo regsvr32 exec. time > ".\Debug\regsvr32.trg"1>C:\ProgramFiles\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.target s(183,5): error MSB3073: :VCEnd" exited with code 3.英文版处理办法:Project->Configuration Properties->General->Target Extension设置为.ocx 或者.dllProject->Configuration Properties->Linkerl->General ->Output File设置为$(OutDir)$(ProjectName)$(TargetExt) 中文版处理办法:在项目上点右键,选择“属性”->“配置属性”->“常规”->“目标文件扩展名”,设置为.ocx 或者.dll在项目上点右键,选择“属性”->“配置属性”->“链接器”->“ 常规”->“输出文件”,设置为$(OutDir)$(ProjectName)$(TargetExt)7、error D8016: '/ZI' and '/GL' command-line options are incompatible把Debug调试项改为/ZI /OdProject Settings 项->C/C++ -> General8、fatal error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0403. Value 0x0501 or higher is recommended.C/C++->Preprocessor->Preprocessor Definitions中的_WIN32_WINNT=0x0501改掉就可以了9、C:\Program Files\Microsoft Visual Studio10.0\VC\atlmfc\include\atlcomcli.h(1101): error C2059: syntax error : 'catch'1>C:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlcomcli.h(1101): error C2143: syntax error : missing ';' before '{'C/C++->Preprocessor->Preprocessor Definitions 下面的try=__try去掉。

Visual Studio 2010 MSDN Help Library文档位置、错误、重新安装及安装注意事项

Visual Studio 2010 MSDN Help Library文档位置、错误、重新安装及安装注意事项

Visual Studio 2010 MSDN Help Library文档位置、错误、重新安装及安装注意事项一、安装光盘自带MSDN Library文档在Visual Studio 2010安装光盘中其实已配上MSDN Help Library文档,只需使用启动VS2010“帮助”中的“管理帮助设置”程序,选择“从磁盘安装内容”,找到安装光盘的ProductDocumentation文件夹下的HelpContentSetup.msha文件,安装即可。

二、自定义MSDN Help Library文档的安装位置、重新安装或更改在安装MSDN Help Library文档前,可以通过“管理帮助设置”程序中的“设置”指定该文档的安装位置,所需空间依据你选择的安装帮助内容而定。

当你已经安装一次(无论成功与否,包括安装VS2O10)后,“管理帮助设置”程序的“设置”中路径变为灰色,不可更改。

因为VS2010默认情况下该随机文档装在X:\Documents and Settings\All Users\Application Data\Microsoft\HelpLibrary(windows2003、Vista 和Windows7,其他系统未测试。

X为系统所在驱动器)下。

当第一次运行“管理帮助设置”程序时,会指示你选择安装文件夹,以后,不会再问。

如果你希望在安装完后修改安装位置或安装或移除部分文档,需要打开X:\Program Files\Microsoft Help Viewer\v1.0(X为系统所在驱动器)下的HelpLibManager.exe.config文件,将<add key="FirstTimeRun" value="false" />改为:<add key="FirstTimeRun" value="True" />重新启动VS2010“帮助”中的“管理帮助设置”程序,现在它认为是第一次运行,从而可以选择你所满意的位置。

ViEmu For VS2010 3.0解除30天限制的方法

ViEmu For VS2010 3.0解除30天限制的方法

ViEmu For VS2010 3.0 解除30天限制的方法一、概述首先,ViEmu试用版在安装时会记录安装的时间,用于判断是否已经过了限制的时间,这个时间记录在注册表中以本人的机器(WIN7X64)为例,它记录在HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{B9CDA4C6-C44F-438B-B5E0-C1B39EA864C4}的InprocServr32中,其值为{1E26DF1F-98A2-A32A-F628-91FDEA8AF123}(注,这两个ID在对于不同的ViEmu版本,在不同的机器上可能是不一样的)这里有两个ID,一个我们称之为目录ID,在本文的例子中,其值为{B9CDA4C6-C44F-438B-B5E0-C1B39EA864C4},这个应该是与ViEmu的版本有关,对于某个特定的版本,这个值是一定的,第二个我们称之为时间ID,在本文的例子中,其值为{1E26DF1F-98A2-A32A-F628-91FDEA8AF123},这里边就记录了安装的时间二、方法知道了这两个ID,那么解除30天限制的方法就很简单了,第一个方法是解析出编码的机制,这样就能了解时间ID的真实含义,进而对其修改,实现解除限制的目的第二个方法更简单粗暴,直接将HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{目录ID} 这个注册表项删除即可(如果不是64位的系统,应为:HKEY_CLASSES_ROOT\CLSID\{目录ID})(注:网上还有其它文章提到,在删除该注册表项时需要同时删除C:\Users\用户名\AppData\Local\Identities目录下一个名称里带{}的文件夹,这个可以尝试一下,本人没有进行这一操作)(注2:第一种方法比较复杂,需要解析出编码对应的代码,有兴趣的话可以再尝试,下文中只介绍第二种方法)三、步骤现在,我们只需要找到目录ID的具体值就可以了首先,我们需要找到所ViEmu的VSHub.dll,目录ID记录在这个DLL 文件里边,要找到这个文件可以用以下几种方法:1:将下载的ViEmuVS2010-3.0.??.vsix后缀名改为zip,用压缩软件打开后,即可在压缩包中找到该DLL2:若已经安装完成,在本地硬盘中查找VSHub.dll即可,WIN7系统下,该文件一般在C:\Users\用户名\AppData\Local\Microsoft\VisualStudio\10.0\Extensions\Symnum Systems SLU\ViEmu\3.0.?? 里第二,使用Reflector(.net的反编译器,可以在网上下载)打开该DLL,找到VSHub命名空间下的Hub类,找到Initialize(RegistryKey)方法并点击进入,在对应的代码中,找到ViEmuProt.InitializeLicenseStuff(this.m_productData);这一句代码,如下图所示:(注:Initialize这个方法是在ViEmuTen.dll 中的ViEmuTenPackage类的Initialize方法中被调用的,这个是VS的插件机制,这里不再详述)第三步:点击进入ViEmuProt.InitializeLicenseStuff这个方法,找到其中的vep_WriteTrialPeriodControlItemsIfFirstTime(_productData)函数,如下图所示(这个函数就是写注册表的函数)第四步,再次点击进入该函数,如下图:红色框所示的函数即为写注册表的函数,可以看到,这个CreateSubKey(name)函数中对应的name参数就是我们需要的目录ID,那么这个ID是怎么来的呢?可以看到,这个参数是通过函数的第一条语句得到的(图中蓝色框)(注:图中紫色框即为编码的机制,如果对上文提到的第一种方法有兴趣,可以从这里进入对应的代码,研究一下)第五步:点击进入GenerateTrialControlRegKeyName(_productData)函数(上图蓝框),如下图所示:VS插件对应的product是0,所以,目录ID就是最下边那个{B9CDA4C6-C44F-438B-B5E0-C1B39EA864C4}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档