A.2 Visual C++ Projects There are five categories of Visual C++ projects: .NET, ATL, MFC, Win32, and General. The following sections describe each of these. | In VS.NET 2002, these projects were not divided into categoriesall C++ projects were presented as a single category. Also, the .NET project types had slightly different names. In VS.NET 2003, these were changed to be more consistent with the project names used in VB, C#, and J# (although not entirely consistent, for some reason). The old names are given in parentheses after the new names . | | A.2.1 Visual C++ .NET Projects The following Visual C++ .NET projects (or managed C++ projects, as they are sometimes known) are available in Visual Studio .NET: - Windows Forms Application (.NET) (not available in VS.NET 2002)
-
This template creates a .NET-based Windows application with a Windows Forms GUI. - Managed C++ Class Library)
- Class Library (.NET) (was
-
This template creates a .NET class library (DLL). - Windows Control Library (.NET) (not available in VS.NET 2002)
-
This template creates a .NET class library intended to contain Windows Forms controls. - Managed C++ Web Service)
- ASP.NET Web Service (was
-
This template creates an ASP.NET web application that provides a web service. - Managed C++ Application)
- Console Application (.NET) (was
-
This template builds a .NET-based command-line application. - Windows Service (.NET) (not available in VS.NET 2002)
-
This template creates a .NET-based Windows Service. It creates a class that inherits from System.ServiceProcess.ServiceBase . - Managed C++ Empty Project)
- Empty Project (.NET) (was
-
This template creates a Managed C++ project that initially contains no files. A.2.2 Visual C++ ATL Projects The following Visual C++ ATL projects are available in Visual Studio .NET: - ATL Project
-
This template creates an ATL-based DLL, executable, or Windows Service that implements one or more COM classes. By default, this project template uses the new attributed version of ATL. - ATL Server Project
-
This template creates an ATL Server ISAPI extension DLL that can be used to create a high-performance web-based UI. - ATL Server Web Service
-
This template creates an ATL Server ISAPI extension DLL that can be used to create a high-performance web service. A.2.3 Visual C++ MFC Projects The following Visual C++ MFC projects are available in Visual Studio .NET: - MFC ActiveX Control
-
This template creates an MFC-based ActiveX control. Its output will be an .ocx file. - MFC Application
-
This template creates an MFC Windows Application. - MFC DLL
-
This template creates a DLL that uses MFC. - MFC ISAPI Extension DLL
-
This template creates an MFC ISAPI extension. A.2.4 Visual C++ Win32 Projects The following Visual C++ Win32 projects are available in Visual Studio .NET: - Win32 Console Project
-
This template builds a command-line application. It creates a standard Win32 EXE file. This is essentially a specialized version of the Win32 Project template. - Win32 Project
-
This template builds a Windows Application, a Console Application, a DLL, or a static library. By default, these projects have no access to technologies such as the MFC or the ATL. Only the standard C++ libraries and the raw Win32 API are available. (The wizard provides options to enable MFC support in console or static library applications. You can also enable the ATL in console applications. This will allow you to use the classes these libraries define, but this wizard will not generate all of the framework code you would get with the library-specific templates.) A.2.5 Visual C++ General Projects The following Visual C++ general projects are available in Visual Studio .NET: - Custom Wizard
-
This template creates an MFC-based DLL project that can be integrated into VS.NET to create a custom wizard. (See Chapter 9 for information about other ways to create custom wizards for VS.NET.) - Extended Stored Procedure
-
This template creates a DLL that can be used in SQL Server as an extended stored procedure. - Makefile Project
-
This creates a project that will run nmake to build your application rather than using the normal VS.NET build mechanism. This can be useful if your existing project infrastructure relies heavily on traditional makefiles, and you do not want to introduce devenv.exe into your automated build process. |