Introduction to Windows Applications
An important part of Visual Studio .NET is the ability to create Windows applications that run locally on users' machines. Visual Studio .NET allows you to create the application and user interface using Windows Forms.
Note You can use Windows Forms as the user interface for a distributed ASP.NET Web application. For details, see Windows Forms as the Presentation Tier of a Three-Tier Application.
Visual Studio Windows Applications
A Visual Studio Windows application is built around the .NET Framework, a rich set of classes that allows you to program sophisticated applications. You can create Windows applications using any .NET programming language (Visual Basic, C#, Managed Extensions for C++, and many others) and .NET debugging facilities.
Windows applications created with .NET classes afford you other benefits. You can access operating-system services and take advantage of other benefits provided by your user's computing environment. You can access data using ADO.NET. For details, see Introduction to Data Access with ADO.NET. GDI+ allows you to do advanced drawing and painting within your forms. For details, see GDI+ Graphics. Your Windows applications can make calls to methods exposed through XML Web services, encouraging you to take advantage of information and computing resources from a variety of sources and partners. For details, see Introduction to Programming XML Web Services in Managed Code.
Windows Applications and Visual Studio
Just as with any other .NET application, you can create Windows applications in a text editor, make calls to .NET methods and classes, compile your application at the command line, and distribute the resulting executable program.
Alternatively, you can use Visual Studio .NET. When you use Visual Studio .NET to create Windows applications, you are creating essentially the same application that you could create by hand. The advantage of using Visual Studio .NET is that it provides tools that make application development much faster, easier, and more reliable. These tools include:
- Visual designers for Windows Forms with drag-and-drop controls. For details, see Windows Forms Designer.
- Code-aware editors that include statement completion, syntax checking, and other IntelliSense features.
- Integrated compilation and debugging.
- Project management facilities for creating and managing application files, including deployment locally, over an intranet or over the Internet.
If you have used Visual Studio before, these features will seem familiar; they are similar to features available in previous versions of Visual Basic and Visual C++. Visual Studio .NET expands on these features to provide a superior environment for developing Windows applications.
Developing Windows Applications
Windows application development with Visual Studio can take many shapes. You can create Windows Forms and Windows service applications that leverage the power of the .NET Framework, or you can use Visual C++ to create Win32 applications.
For details about Windows Forms and how to work with them in Visual Studio, see the following topics:
- Creating Windows Forms — provides information on how to create and program Windows Forms.
- Windows Forms Walkthroughs — lists topics that provide a step-by-step development of commonly created Windows applications based on Windows Forms.
- Windows Forms Controls — collection of topics detailing the specifics and usage of the Windows Forms controls.
Windows Service Applications
Using Microsoft Visual Studio .NET or the Microsoft .NET Framework SDK, you can easily create services by creating an application that is installed as a service. This type of application is called a Windows service. With framework features, you can create services, install them, and start, stop, and otherwise control their behavior.
For details, see Windows Service Applications.
You can use the Project Wizard to create Win32 project types, including console applications, executable Windows applications, dynamic-link libraries, and static libraries.
For details, see Creating Win32 Projects.