Windows Developer FAQFind answers to some of the most frequently asked questions concerning Windows development and .NET Framework basics. From setup and hardware issues to questions about future plans and about what it all means, this FAQ is an excellent companion to the Windows Vista Forums on MSDN. On This Page
Getting StartedWhat is the .NET Framework?
The .NET Framework is the managed-code programming model for Windows, starting with Windows Vista. The .NET Framework 3.5 is a superset of the .NET Framework, designed to expose the new functionality in Windows Vista to the developer through managed classes. If you know how to write managed code on the .NET Framework, the .NET Framework 3.5 will be familiar to you. | What is the difference between Windows and the .NET Framework?
The .NET Framework is a managed-code programming model, including APIs for the Windows Presentation Foundation and the Windows Communication Foundation. | Where is the .NET Framework documentation?
The documentation for .NET Framework is available online and as a part of the downloadable Windows SDK. | What about the new changes happening in the Fundamentals layer, e.g., security, ClickOnce, configuration, etc.?
They are exposed through the .NET Framework. | Where do I report .NET Framework and Windows bugs?
Please report bugs directly to the Windows Vista Forums. They are regularly monitored by the development teams. And someone else may have had the same bug and already know a workaround or fix. | The Windows client operating system is interesting, but what about Windows Server 2008?
For information about Windows Server 2008 please go to the Windows Server 2008 Developer Center. |
^ back to top
FAQ BasicsWhy isn't my question answered in this FAQ?
This FAQ draws most of its information from the MSDN Windows Vista forums, as well as blogs and other community resources. It does not attempt to reproduce all the information on the Windows Developer Center or in the SDK. See the next item for tips on finding answers elsewhere. If you'd like to recommend a question and answer for inclusion in this FAQ, contact the editor using the "Contact Us" link at the bottom of this page. Please refrain from using that link to ask questions about Windows; by using the forums instead, you benefit from the knowledge of many developers and the community benefits from the discussion. | I didn't find the answer to my question in this FAQ. Where should I look next?
First, start by searching MSDN online. Next search the Windows Vista Forums. | Where should I post questions that are not related to Windows and the .NET Framework?
It's not uncommon for people to post unrelated questions to forums; however, you will get much better support by posting unrelated questions in an appropriate forum. Microsoft maintains hundreds of forums spanning the range of its products and technologies. You can go to the home for MSDN forums and try searching on a few key words and see which forums discuss those topics. |
^ back to top
Essential ConceptsWhat is the Windows Presentation Foundation?
The Windows Presentation Foundation is the unified presentation subsystem for Windows. It consists of a display engine and a managed-code framework. The Windows Presentation Foundation unifies how Windows creates, displays, and manipulates documents, media, and user interface, which enables developers and designers to create visually stunning, differentiated user experiences that improve customer connection. | What is the Windows Communication Foundation?
The Windows Communication Foundation is a set of technologies for building and running connected systems. The Windows Communication Foundation is a new breed of communications infrastructure built around the Web services architecture. Advanced Web services support in the Windows Communication Foundation provides secure, reliable, and transacted messaging along with interoperability. The Windows Communication Foundation's service-oriented programming model is built on the .NET Framework and simplifies development of connected systems. The Windows Communication Foundation unifies a broad array of distributed systems capabilities in an extensible architecture, spanning transports, security systems, messaging patterns, encodings, network topologies and hosting models. The Windows Communication Foundation is an integral capability of Windows Vista. Microsoft has also done significant work to integrate the Windows Communication Foundation with existing Microsoft technologies for building distributed systems including COM+, MSMQ, and ASP.NET Web services. Applications built with those existing technologies can now be exposed as services without modification to the application. This infrastructure-level solution greatly assists developers in exposing existing applications as services. The Windows Communication Foundation also provides simple and mechanical mechanisms to migrate applications that use .NET remoting, ASP.NET Web services, and .NET Enterprise Services to natively use the Windows Communication Foundation programming model. |
^ back to top
General Topics: The BasicsWill my existing Win32 and .NET applications continue to run under Windows Vista without modification?
Yes. Applications written against the documented Win32 APIs and the .NET Framework will run without any modifications under Windows Vista. | Will my MS-DOS applications continue to run under Windows Vista without modification?
Yes, they will. |
^ back to top
General Topics: Windows Vista and Existing TechnologiesWhat operating system is used to code Windows Vista?
A lot of the development of Windows Vista is self-hosted on builds of Windows Vista, as well as Windows XP and larger server-based machines for large compilation processes. | Is C# used for any core features of Windows Vista?
Yes, for example, much of the Windows Presentation Foundation is written using C#. |
^ back to top
Setup and Configuration: InstallationCan I create install Windows Vista as a dual boot with Windows XP?
Yes. This Knowledge Base article describes the process. | Can Windows Vista be installed on the same partition as another operating system?
It is very strongly recommended that you do not install multiple operating systems on a single partition and doing so is unsupported. If you don't experience problems now, you may run into them later. The main problem is that your Program Files folder is going to be at least partly shared between your two operating systems. |
^ back to top
MSBuildHow do I use MSBuild?
Installing the Windows Vista SDK sets up the build environment and target to easily run MSBuild from the Windows Vista build command window. To run msbuild.exe: - Install the .NET Framework 3.0 (formerly WinFX) SDK Beta.
- Click the Start button, click All Programs, click Microsoft Windows Vista SDK, click Open Build Environment Window, and then click Build Environment.
- Run msbuild from the build command window.
| Is XAML only used for quick UI prototyping?
XAML will be used for production work, not just for prototyping. Specifically, localizing your application or ensuring that it is accessible—common for most applications today—will be a lot more work if you build your own user interface from code instead of using XAML. | Why do we need XAML as a new way to create applications in the .NET Framework?
The new application model in Windows Vista separates out declarative code (XAML) from procedural code (C#, VB.NET, J#, and other languages). One major reason for using XAML is to bridge the gap between developing an application for Microsoft Windows and developing an application for the Web. XAML does not give you new functionality; it is just a declarative way to instantiate and initialize managed objects. XAML does, however, provide you with a way to solve problems such as the following examples. - When you write procedural code (C#, etc.) to create a number of controls, and compare that to the equivalent XAML, the XAML is more compact, less redundant, and less error-prone. Writing a designer for XAML will be a lot easier than writing a forms designer for C# or VB.NET, since the designer won't have to do all that code parsing to figure out where to insert or change the setting of a property.
- In the real world, many customers find requests coming in at the very last minute asking for changes to the user interface—a button needs to be moved or removed or the company logo needs to appear on every window. It is especially at the end of the development process, when you think your code is "frozen" and tested, that you'd rather not have to dive into the source code and start changing things. Who knows what subtle interaction you might break? With XAML, most—if not all—of the presentation layer is in its own file, thus providing a high degree of certainty that making a user interface change in the XAML will not break business logic code.
- XAML enables professional graphic designers or user interface specialists to add beauty, style and grace to an application without modifying source files directly. Partitioning the user interface and the logic that drives it means each of us can get our job done without getting in each other's way or having to understand the myriad details of one another's tools.
- XAML is considerably smaller than the equivalent C# code. Since there is less code, there are fewer opportunities for errors.
| Why did Microsoft create XAML instead of using XUL?
XAML gives developers richer control over the Windows Vista user interface. Its tags map directly into objects in the Windows Presentation Foundation engine, and developers get a choice of programming language. In short, developers will be able to build very rich Windows Presentation Foundation user interfaces with their existing programming language skills. | Where is the XAML specification?
Learn about XAML globalization in Globalization for the Windows Presentation Foundation. | Will XAML replace other programming languages like C# and VB?
No. XAML complements procedural languages, much the same way HTML complements ECMAScript. You can very quickly declare how you want your user interface to look with XAML, and then use a language like C# to define the business logic behind that user interface. | Can XAML be used to develop both Web and client-server applications?
XAML is used as part of Windows Presentation Foundation to write smart client applications that take advantage of the power of the PC and benefit from all of the power of the CLR. For Windows Presentation Foundation applications, the logic runs on the client, unlike ASP.NET, which processes on the server. ASP.NET continues to be the answer to producing powerful Web applications that take advantage of the benefits of the CLR on the server. | What relationship does Microsoft have with companies building XAML clones and how does this announcement affect those relationships?
We have no relationship with them. |
^ back to top | |