Visual C++中 文件类型

项目通常产生 EXE 或 DLL。

项目可以相互依赖;在生成过程中,Visual C++ 环境在每个项目中和各项目间都要检查依赖项。

每个项目都有核心源代码,并且根据项目类型的不同,它可以有许多其他的文件分别包含项目的各个方面。

这些文件的内容由文件扩展名指示。

Visual Studio 开发环境利用文件扩展名确定在生成过程中如何处理文件内容。

文件扩展名  类型  内容

.asmx       源    部署文件。

.asp        源    Active Server Page 文件。

.atp        项目  应用程序模板项目文件。

.bmp、.dib、.gif、.jpg、.jpe、.png   资源     常规图像文件。

.bsc        编译  浏览器代码文件。

.cpp、.c    源    应用程序的主源代码文件。

.cur        资源  光标位图图形文件。

.dbp        项目  数据库项目文件。

.disco      源    动态发现文档文件。处理 XML Web services 发现。

.exe、.dll  项目  可执行文件或动态链接库文件。

.h          源    头文件或包含文件。

.htm、.html、.xsp、.asp、.htc、.hta、.xml   资源    公共 Web 文件。

.HxC        项目  帮助项目文件。

.ico        资源  图标位图图形文件。

.idb        编译  状态文件,包含在最小重新生成和增量编译期间可由编译器使用的源文件和类定义之间的依赖项信息。使用 /Fd 编辑器选项指定 .idb 文件的名称。有关更多信息,请参见 /Gm(启用最小重新生成)。

.idl        编译  接口定义语言文件。有关更多信息,请参见Platform SDK 中的接口定义 (IDL) 文件。

.ilk        链接  增量链接文件。有关更多信息,请参见 /INCREMENTAL。

.map        链接  包含链接器信息的文本文件。使用 /Fm 编译器选项命名映射文件。有关更多信息,请参见 /MAP。

.ncb        解决方案   非编译浏览器文件。

.obj、.o 已编译但未链接的对象文件。

.pch        调试   预编译头文件。

.pdb        调试   程序调试数据库文件。有关更多信息,请参见什么是 .pdb 文件?

.rc、.rc2   资源   生成资源的资源脚本文件。

.sbr        编译   源浏览器中间文件。BSCMAKE 的输入文件。

.sln        解决方案 解决方案文件。通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。

.suo        解决方案 解决方案用户选项文件。记录所有将与解决方案建立关联的选项,以便在每次打开时,它都包含您所做的自定义设置。

.srf        项目     服务器响应文件。该文件包含 ATL Server 应用程序的 HTML 代码。

.txt        资源     文本文件,通常为自述文件。

.vap        项目     Visual Studio Analyzer 项目文件。

.vbg        解决方案 兼容的项目组文件。

.vbp、.vip、.vbproj 项目 Visual Basic 项目文件。

.vcproj     项目    Visual C++ 项目文件。有关更多信息,请参见项目文件和生成文件。

.vdproj     项目    Visual Studio 部署项目文件。

.vmx        项目    宏项目文件。

.vup        项目    实用工具项目文件。

项目文件和生成文件

文件名           目录位置       解决方案资源管理器位置  说明

Solname.sln      Projname       不显示在解决方案资源管理器中

在开发环境中使用的解决方案文件。它将一个或多个项目的所有元素组织到单个的解决方案中。此文件存储在父项目目录中。

Projname.suo     Projname       不显示在解决方案资源管理器中

在开发环境中使用的解决方案选项文件。它存储为解决方案创建的所有用户选项,以便每次打开项目的解决方案时,它都具有所需的外观并包含所有选择的自定义设置。此文件存储在父项目目录中。

Projname.vcproj  Projname       不显示在解决方案资源管理器中

在开发环境中使用的项目文件。在以前的版本中,此文件称为 Projname.dsp。它存储项目的专用信息。每个项目都有一个单独的 .vcproj 文件。有关更多信息,请参见“.vcproj 文件的格式”。此文件存储在父项目目录中。

Projname.idl     Projname       源

包含类型库的接口说明语言源代码的文件。Visual C++ 使用此文件生成类型库。生成的库向其他自动化客户端公开控件的接口。有关更多信息,请参见Platform SDK 中的接口定义 (IDL) 文件。

Projname.ncb     Projname       不显示在解决方案资源管理器中

非编译浏览器文件。它包含分析器生成的由类视图使用的信息。如果此文件被无意间或故意删除,将自动重新生成它。

Readme.txt       Projname       项目

一个描述项目中的每个文件的文件,它使用应用程序向导实际创建的文件名进行描述。位于项目的父目录中。

为 CLR 项目创建的文件

文件名             文件说明

AssemblyInfo.cpp   此文件包含用于修改项目的程序集元数据的信息,即属性、文件、资源、类型、版本信息、签名信息等。有关更多信息,请参见 .NET Framework SDK 中的“程序集概念”。

projname.asmx      一个文本文件,它引用封装了 XML Web services 功能的托管类。

projname.cpp       Visual Studio 为您创建的主源文件和应用程序的入口点。标识项目的 .dll 文件和项目命名空间。在此文件中提供您自己的代码。

projname.vsdisco   一个 XML 部署文件,它包含对描述 XML Web services 的其他资源的链接。

projname.h         项目的主包含文件,包含所有声明、全局符号和其他头文件的 #include 指令。

projname.ncb       无编译浏览器文件,包含分析器生成的信息和类视图使用的信息。

projname.sln       在开发环境中用来将项目的所有元素组织成一个解决方案的解决方案文件。

projname.suo       在开发环境中使用的解决方案选项文件。

projname.vcproj    在开发环境内用来存储该项目的特定信息的项目文件。

ReadMe.txt         说明文件,它使用由模板创建的实际文件名来描述项目中的每个文件。

ATL 程序或控件的源文件和头文件

活动模板库 (ATL) 是一套基于模板的 C++ 类,使您可以创建小型、快速的组件对象模型 (COM) 对象。它对主要的 COM 功能具有特殊支持,这些功能包括常用实现、双重接口、标准 COM 枚举数接口、连接点、分开的接口和 ActiveX 控件。

根据为创建的项目选择的选项,在 Visual Studio 中创建 ATL 项目时将创建下列文件。

所有这些文件都位于 Projname 目录中,而且位于解决方案资源管理器中的头文件(.h 文件)文件夹中或源文件(.cpp 文件)文件夹中。

仅在创建 ATL Server 项目时,项目才包含 ProjnameIsapi.vcproj、ProjnameIsapi.h、ProjnameIsapi.cpp 和 ProjName.srf 文件。

文件名         说明

Projname.h     主包含文件,包含 ATLSample.idl 中定义的项的 C++ 接口定义和 GUID 声明。编译期间由 MIDL 重新生成。

Projname.cpp   主程序源文件。它包含进程内服务器的 DLL 导出实现和本地服务器的 WinMain 实现。对于服务,它还实现所有服务管理函数。

ProjnameIsapi.cpp 包含 ISAPI 扩展代码和附加 ATL Server 代码的根 ISAPI 扩展文件。可以根据项目的具体需要自定义 ATL Server 代码。

ProjnameIsapi.vcproj 使用应用程序向导生成的 Visual C++ 项目的主项目文件。它包含生成文件的 Visual C++ 版本信息,以及有关用应用程序向导选择的平台、配置和项目功能的信息。

ProjnameIsapi.def 包含将从 ISAPI 扩展 DLL 导出的函数,其中包括 ISAPI 扩展函数 HttpExtensionProc、GetExtensionVersion 和 TerminateExtension。这些函数委托给 CIsapiExtension 类的实例。

Resource.h       资源文件的头文件。

StdAfx.cpp       包含 StdAfx.h 和 Atlimpl.cpp 文件

StdAfx.h         包含 ATL 头文件。

ProjName.srf     服务器响应文件。包含 ATL Server 应用程序的 HTML 代码。

MFC 程序或控件的源文件和头文件

所有这些文件都位于 Projname 目录中,而且位于解决方案资源管理器中的头文件(.h 文件)文件夹中或源文件(.cpp 文件)文件夹中。

文件名          说明

Projname.h      程序或 DLL 的主包含文件。它包含其他头文件的所有全局符号和 #include 指令。它从 CWinApp 导出 CPrjnameApp 类并声明 InitInstance 成员函数。对于控件,CPrjnameApp 类从 COleControlModule 导出。

Projname.cpp    主程序源文件。它创建从CWinApp 导出的 CPrjnameApp 类的一个对象,并重写 InitInstance 成员函数。对于可执行文件,CPrjnameApp::InitInstance 完成以下几件事。它注册文档模板,以用作文档和视窗之间的连接;创建主框架窗口;以及创建空文档(如果有一个文档被指定为应用程序的命令行参数,则打开此文档)。对于 DLL 和 ActiveX(原为 OLE)控件,CProjNameApp::InitInstance 通过调用 COleObjectFactory::RegisterAll
向 OLE 注册控件的对象工厂,然后调用 AfxOLEInit。另外,CProjNameApp::ExitInstance 成员函数用于通过 AfxOleTerm 调用从内存中卸载控件。此文件也通过实现 DllRegisterServer 和 DllUnregisterServer 函数,在 Windows 注册数据库中注册和注销控件。

Projnamectrl.h、Projnamectrl.cpp  声明并实现 CProjnameCtrl 类。从 COleControl 导出 CProjnameCtrl,并且定义一些初始化、描述和序列化(加载和保存)控件的成员函数的主干实现。也定义消息、事件和调度映射。

Projnamedlg.cpp、Projnamedlg.h    选择基于对话框的应用程序时创建。此文件导出和实现名为 CProjnameDlg 的对话框类,并且包含初始化对话框和执行对话框数据交换 (DDX) 的主干成员函数。“关于”对话框类也放在这些文件中,而不是放在 Projname.cpp 中。

Dlgproxy.cpp、Dlgproxy.h          在基于对话框的程序中,主对话框的项目自动化代理类的实现和头文件。仅当选择了自动化支持时才使用它。

Projnamedoc.cpp、Projnamedoc.h    导出和实现名为 CProjnameDoc 的文档类,并且包含初始化文档、序列化(加载和保存)文档和实现调试诊断的主干成员函数。

Projnameset.h/.cpp                创建支持数据库且包含记录集类的程序时创建。

Projnameview.cpp、Projnameview.h  导出并实现名为 CProjnameView 的视图类,该类用于显示和打印文档数据。CProjnameView 类从下列 MFC 类之一导出:

CEditView

CFormView

CRecordView

COleDBRecordView

CTreeView

CListView

CRichEditView

CScrollView

CView

CHTMLView

CHTMLEditView

项目的视图类包含描述视图和实现调试诊断的主干成员函数。如果启用了打印支持,则还添加打印、打印设置和打印预览命令消息的消息映射项。这些项调用基视图类中的相应成员函数。

ProjnamePropPage.h、ProjnamePropPage.cpp    声明和实现 CProjnamePropPage 类。从 COlePropertyPage 导出 CProjnamePropPage 并且提供实现数据交换和验证的主干成员函数 DoDataExchange。

IPframe.cpp、IPframe.h       在应用程序向导的自动化选项页(六个步骤中的第三步)中,如果选定了“袖珍服务器”(Mini-Server) 或“完全服务器”(Full-Server) 选项,则创建它们。这些文件导出并实现名为 CInPlaceFrame 的就地框架窗口类,该类在容器程序就地激活服务器时使用。

Mainfrm.cpp、Mainfrm.h       从 CFrameWnd(对于 SDI 应用程序)或 CMDIFrameWnd(对于 MDI 应用程序)导出 CMainFrame 类。如果在应用程序向导的“应用程序选项”页(六个步骤中的第四步)中选定了相应的选项,则 CMainFrame 类处理工具栏按钮和状态栏的创建。有关使用 CMainFrame 的信息,请参见应用程序向导创建的框架窗口类。

Childfrm.cpp、Childfrm.h     从 CMDIChildWnd 导出 CChildFrame 类。CChildFrame 类用于 MDI 文档框架窗口。如果选定了 MDI 选项,则总是创建这些文件。

时间: 2024-10-08 23:27:24

Visual C++中 文件类型的相关文章

linux 中文件类型和颜色的区分

linux 中文件类型和颜色的区分 to be  continued linux 中文件类型和颜色的区分,布布扣,bubuko.com

PHP中文件类型 文件属性 路径以及 文件相关的函数

一: 文件类型判断: 1.is_dir()  判断是不是目录 2.is_file() 判断是不是文件 3.is_executeable() 判断是不是可执行文件 4.is_readable()  判断是不是可读文件 5.is_writable() 判断是不是可写文件 6.is_link()  判断是不是快捷方式 二:文件属性: 1.file_exits()  文件是否存在 2.filesize() 文件大小 3.filectime()  文件创建时间 4.filemtime() 文件修改的时间

CentOS 6.6 系统中文件类型,属性与权限

一.系统中的文件类型. 类型: ①'d'代表目录文件, dr-xr-xr-x.  5 root root  1024 2月  27 00:15 boot 'dr-xr-xr-x.'中的'd',就是表示这个文件为目录文件. ②'-'代表普通文件, -rwxr-xr-x. 1 root root   23408 10月 15 12:45 arch '-rwxr-xr-x.'中的'-',就是表示这个文件为普通文件. ③'b'代表块设备文件, brw-rw----. 1 root disk      7

Android 中文件类型与MIME的匹配表(转)

背景介绍: MIME:全称Multipurpose Internet Mail Extensions,多功能Internet 邮件扩充服务.它是一种多用途网际邮件扩充协议,在1992年最早应用于电子邮件系统,但后来也应用到浏览器.MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开.多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式. 在Android中通过文件的MIME类型来判断有哪些应用程序可以处理这些文

修改与文件类型关联的默认程序

13/12/27 安装了Planner项目管理软件后,发现.planner文件的默认打开程序为gedit.想要将其修改过来,在open with的程序列表里也没有planner这一项,而且也无法人工指定命令行,似乎这一功能被Nautilus关掉了.通过网上搜索,Gnome系统中文件类型的描述,即mimetype,存放于/usr/share/mime与~/.local/share/mime目录下.而用于描述应用程序所能打开的文件类型则主要放在其中的application子目录中.可以看到,其中已经

linux 的文件类型总结文档

win中是通过扩展名,区别文件类型(jpg,jpeg,png,gif/doc,txt,pdf/avi,wmv,mp4) linux中文件类型和或者扩展名没有关联 linux的文件类型 linux中一切皆文件: f(-)    regular file 普通文件 普通文件类型: 1.纯文本文件(ASCII编码) 2.二进制文件(binary) 3.数据类格式的文件 lastlog命令显示结果 d    directory    目录文件 l    symbolic link    软连接文件:so

Linux: Linux的文件类型及查看文件类型的方法

Linux文件类型和文件的文件名所代表的意义是两个不同的概念,在linux中文件类型与文件扩展名没有关系.它不像Windows那样是依靠文件后缀名来区分文件类型的,在linux中文件名只是为了方便操作而的取得名字.Linux文件类型常见的有:普通文件.目录.字符设备文件.块设备文件.符号链接文件等. 一 常见的文件类型 1,普通文件类型 Linux中最多的一种文件类型, 包括 纯文本文件(ASCII):二进制文件(binary):数据格式的文件(data);各种压缩文件.第一个属性为 [-] .

Visual Studio中根据系统区分引用64位、32位DLL动态库文件的配置方法

原来使用Win7的32位系统,进行C#工程的开发,后来重装系统,换成了win7的64位系统 调试原来的工程,由于在其中引用了"SQLite"的32位的dll,导致在64为位下程序无法运行(但是编译可以通过) 后来通过修改工程文件(.csproj),在其中设置引用的条件,解决了问题 打开引用了SQLite的工程(例如叫做info)的工程文件(info.csproj),找到对SQLite引用的语句,类似如下的代码 代码如下: <Reference Include="Syst

在Visual Studio中开发Matlab mex文件,生成mexw64/mexw32

csunking贡献,2015-9-22 1712 1.   概述 通过使用C/C++与Matlab混合编程,既可以享受到C代码快速执行的速度,又可以方便的使用Matlab众多的库函数和强大的绘图功能.让Matlab调用C函数是通过DLL文件实现的,而这个DLL的开发过程不仅仅可以使用Matlab自带的mex命令,还可以使用VC++开发环境,使用VC有很多好处,一是让我回到了原来熟悉的开发环境中,二能够使用更加标准的C++编译器,第三点也是最爽的,可以使用VC强大的调试功能. 此次文档更新时使用