Visual C++ Concepts: Creating and Managing Projects

Visual C++ Concepts: Creating and Managing Projects 
General Property Page (Project) 

 

When a project is selected in Solution Explorer, the General property page under the Configuration Properties node, displays two sections of properties:

  • General

  • Project Defaults

General

The properties in the General section affect the location of files that are created in the build process and which files to delete when the Clean option (Build menu) is selected.

Output Directory

Specifies the directory where tools such as the linker will place all final output files that are created during the build process. Typically, this includes the output of tools such as the linker, librarian, or BSCMake.

To programmatically access this property, see OutputDirectory.

Intermediate Directory

Specifies the directory where tools such as the compiler will place all intermediate files created during the build process. Typically, this includes the output of tools such as the C/C++ compiler, MIDL, and the resource compiler.

To programmatically access this property, see IntermediateDirectory.

Extensions to Delete on Clean

The Clean option (Build menu) deletes files from the intermediate directory where a project's configuration is built. Files with extensions specified with this property will be deleted when Clean is run or when you perform a rebuild. In addition to files of these extensions in the intermediate directory, the build system will also delete any known output of the build regardless of where it is located (including intermediate outputs such as .obj files). Note that you can specify wildcard characters.

To programmatically access this property, see DeleteExtensionsOnClean.

Build Log Files

Allows you to specify a non-default location for the log file that is created whenever you build a project.

You can use project macros to change the directory location. See Macros for Build Commands and Properties.

Inherited Project Property Sheets

Specifies which property sheets you want to use. See How to: Inherit Project Settings from Property Sheets for more information.

Project Defaults

The properties in the Project Default section represent default properties that you can modify. See Specifying Project Settings with Property Pages for a discussion of default properties. The definition for these properties can be found in the .vsprops files in Program Files/Microsoft Visual Studio 8/VC/VCProjectDefaults.

Configuration Type

There are several configuration types from which to choose:

  • Application (.exe), displays linker toolset (C/C++ Compiler, MIDL, Resource Compiler, Linker, BSCMake, XML Web Service Proxy Generator, custom build, prebuild, prelink, postbuild events).

  • Dynamic Library (.dll), displays linker toolset, specifies /DLL linker option, and adds the _WINDLL define to CL.

  • Makefile, displays makefile toolset (NMake).

  • Static Library (.lib), displays librarian toolset (same as linker toolset except substitute librarian for linker and omit XML Web Service Proxy Generator).

  • Utility, displays utility toolset (MIDL, custom build, prebuild, postbuild events).

To programmatically access this property, see ConfigurationType.

Use of MFC

Specifies whether the MFC project will statically or dynamically link to the MFC DLL. Non-MFC projects can select Use Standard Windows Libraries to link to various Win32 libraries that are included when you use MFC.

To programmatically access this property, see useOfMfc.

Use of ATL

Specifies whether the ATL project will statically or dynamically link to the ATL .DLL. If you specify anything other than Not Using ATL, a define will be added to the compiler's Command Line property page.

To programmatically access this property, see useOfATL.

Minimize CRT Use in ATL

This property prevents CRT startup code from being linked with an ATL project. When enabled, it also defines _ATL_MIN_CRT. This will reduce the size of your binary but prevents calling any functions that require the CRT startup code. The Use of ATL property must be set to something other than Not Using ATL in order for Minimize CRT Use in ATL to be in effect.

For more information, see Knowledge Base article Q165076 : INFO LNK2001 on CRT Symbols in ATL Release Build for more info.

To programmatically access this property, see ATLMinimizesCRunTimeLibraryUsage.

Character Set

Defines whether _UNICODE or _MBCS should be set. Also affects the linker entry point where appropriate.

To programmatically access this property, see CharacterSet.

Common Language Runtime support

Causes the /clr compiler option to be used.

To programmatically access this property, see ManagedExtensions.

Whole Program Optimization

Specifies the /GL compiler option and /LTCG linker option.

For information on how to access the General property page under the Configuration Properties node, see How To: Specify Project Properties with Property Pages.

See Also

Reference
Property Pages (C++)
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值