Parallel Debugging: Debugging Task-Based Parallel Applications in Visual Studio 2010 Stephen Toub, Daniel Moth - September 2009 2009 In Visual C++ 10 and the Microsoft .NET Framework 4, Microsoft is introducing new libraries and runtimes to significantly ease the process of expressing parallelism in your code base, together with new tool support for performance analysis and debugging of parallel applications. In this article, you will learn about debugging support in Visual Studio 2010, much of which is focused on task-based programming models.
.NET Matters: False Sharing Stephen Toub, Igor Ostrovsky, and Huseyin Yildiz - October 2008 This month: memory access issues in multi-core systems and diagnosing and avoiding false sharing in your parallel computing applications.
Advanced Basics: Reflection and Generics Ken Getz - January 2008 This month Advanced Basics flaunts the power of generics and reflection and shows how you get more flexible and efficient development by combining the two.
Basic Instincts: Extension Methods Adrian Spotty Bowles - November 2007 This column discusses one of the new features of Visual Basic 2008—Extension Methods. This powerful new feature was introduced to support LINQ. See what extension methods are, how to apply them yourself, and get some great usage tips.
Cutting Edge: AJAX application architecture, Part 2 Dino Esposito - October 2007 The second of this two-part series delves into the script services programming model, which is useful if you're looking for a full paradigm shift in building AJAX applications.
Cutting Edge: Transactional Workflows Dino Esposito - June 2007 When modeling business logic, workflows inevitably represent transactional tasks, so you need to know how to code transactional semantics in the Windows Workflow Foundation.
.NET Matters: Handling Messages in Console Apps Stephen Toub - June 2007 Many developers who use the Microsoft .NET Framework think that application type is tied to the libraries that can be used in that application. Stephen Toub clarifies.
Team System: Work Item Tracking Brian A. Randell - April 2007 In this column, Brian Randell explains how to build a simple Work Item explorer and demonstrates the core operations needed to add work item support when building your own add-in.
CLR Inside Out: .NET Application Extensibility Jack Gudenkauf and Jesse Kaplan - February 2007 This month the CLR team introduces the new System.AddIn namespace in the Base Class Library, which will be available in the next release of Visual Studio.
Service Station: The Service Factory for WCF Aaron Skonnard - February 2007 This month Aaron Skonnard continues his exploration of software factories with a look at the Web Service Software Factory for Windows Communication Foundation.
Service Station: Web Service Software Factory Aaron Skonnard - December 2006 Web Service Software Factory is designed to help you build Web service solutions that follow known architecture and design patterns, as Aaron Skonnard explains here.
CLR Inside Out: Investigating Memory Issues Claudio Caldato and Maoni Stephens - November 2006 Memory issues can manifest in a wide variety of ways. This column shows you how to collect the data you need to determine what types of mem¬ory issues you are experiencing.
CLR Inside Out: Using Strong Name Signatures Mike Downen - July 2006 Strong name signatures (and signing in general) are a key facet of Microsoft® . NET Framework security. But regardless of how well designed . NET signatures may be, they won’t offer the maximum benefit if you don’t know how to use them properly.
Cutting Edge: Context-Sensitive PictureBox Controls Dino Esposito - July 2006 Great ideas are timeless. A long time ago in Microsoft Systems Journal Paul DiLascia demonstrated a neat trick to display context-sensitive tooltips floating over pictures. As the user moved the mouse over the picture, the tooltip control updated its text to reflect the name of the pointed figure.
Service Station: WSE 3.0, SOAP Transports, and More Aaron Skonnard - June 2006 It's that time again. Time to answer some of the questions I get on a regular basis. This month I'll look at service orientation and policy-based compatibility, SOAP's transport-neutral design, and Web Services Enhancements (WSE) 3.0.
C++ at Work: Managed Code in Visual Studio 2005 Paul DiLascia - June 2006 Many of you are no doubt in the process of upgrading to Visual Studio® 2005, so I thought now would be a good time to relate some of my own experiences with the new compiler. What took me so long? Hey, I'm a retro kind of guy! Better late than never!.
Basic Instincts: Resources and Localization Ted Pattison - May 2006 There are two ways you can utilize resources such as strings, images, and text-based files from your Microsoft® . NET Framework-based application. You can embed them directly in the app or you can load them from an external file.
CLR Inside Out: The Performance Benefits of NGen. Surupa Biswas - May 2006 T ypically, methods in managed executables are just-in-time (JIT) compiled. The machine code generated by the JIT compiler is thrown away once the process running that executable exits; therefore, the method must be recompiled when the application is run again.
Advanced Basics: IntelliSense Code Snippets Lorenzo Minore - April 2006 IntelliSense code snippets are one of the coolest new features in Visual Studio® 2005. Code snippets are highly customizable code fragments intended to accomplish simple to intermediate tasks quickly; they can be inserted into your code with just a few keystrokes.
CLR Inside Out: Extending System.Diagnostics Krzysztof Cwalina - April 2006 The System. Diagnostics namespace in the Microsoft® . NET Framework contains powerful tracing capabilities. This includes the main tracing API: TraceSource. As you will see, the tracing APIs in System.
CLR Inside Out: Ensuring .NET Framework 2.0 Compatibility Jesse Kaplan - March 2006 If we learned only one thing about compatibility in the past few years, it is that compatibility is much more than avoiding breaking changes. On the Microsoft®. NET Framework and Visual Studio® teams, we do our part to ensure that the products we build are stable platforms that developers can truly rely on.
Bugslayer: Strengthening Visual Studio Unit Tests John Robbins - March 2006 Visual Studio 2005 brought so many new features to the table that it can seem almost overwhelming. One of the most exciting additions is the new unit testing features found in the Test menu on the main menu bar.
Smart Clients: Build A Windows Forms Control To Consume And Render WSRP Portlets Carl Nolan - February 2006 Smart client apps use local resources, provide a rich client experience, and support intelligent install mechanisms. Web services offer powerful interoperability and integration features. Find out how to combine them to develop integrated apps that incorporate data from disconnected sources.
Cutting Edge: Build Providers for Windows Forms Dino Esposito - February 2006 In ASP. NET and Windows Forms projects, some file types are treated differently than others. For example, ASPX and ASCX files are dynamically parsed and compiled to an assembly on the fly. The contents of an XML Schema Definition (XSD) file are used to create a new, strongly typed DataSet-based object at design time.
Pure C++: Live Source Browsing in Visual C++ Boris Jabes and Ameya Limaye - February 2006 If you're wondering where Stan Lippman is, we're happy to report that he has graciously granted us the use of his column this month to talk about some of the recent work the Visual C++ team has been doing to improve developer productivity.
Extreme ASP.NET: Codebehind and Compilation in ASP.NET 2.0 Fritz Onion - January 2006 As I write this column, the release candidates of the Microsoft® .NET Framework 2.0 and Visual Studio® 2005 have just come out, and by the time you read this, they will both already be on the shelves. It feels like it's been a long time coming.
Smart Clients: Craft A Rich UI For Your .NET App With Enhanced Windows Forms Support Chris Sells and Michael Weinhardt - Visual Studio 2005 Guided Tour 2006 The System.Windows.Forms namespace has increased by approximately 134 percent over the .NET Framework 1.1. There are 446 new public types; 113 existing types have been updated with new members and values; 218 types have been carried over from the original namespace. Read about it here.
Team Up!: Get All Your Devs In A Row With Visual Studio 2005 Team System Chris Menegay - Visual Studio 2005 Guided Tour 2006 In this article, Chris Menegay shows you how to use Team System throughout your software development lifecycle. He covers both the client tools available with Visual Studio Team Suite and the server features enabled by Team Foundation Server.
Editor's Note: Visual Studio 2005 Guided Tour - Visual Studio 2005 Guided Tour 2006 2005 was a truly exciting year for us here at MSDN Magazine. We launched a new magazine. We covered all sorts of amazing advances for the programmer, courtesy of Visual Studio 2005. We lost a couple of weeks, because of that dodgy falafel cart on 49th Street.
Are You in the Know?: Find Out What's New with Code Access Security in the .NET Framework 2.0 Mike Downen - November 2005 Unlike role-based security measures, code access security is not based on user identity. Instead, it is based on the identity of the code that is running, including information such as where the code came from. Here Mike Downen discusses the role of code access security (CAS) in .NET and outlines some key new features and changes in CAS for the .NET Framework 2.0.
Data Binding: Give Your Everyday Custom Collections a Design-Time Makeover Paul Ballard - August 2005 In this article, Paul Ballard shows how you can provide data binding support for your custom collections to enable sorting, searching, and editing in as simple a manner as possible. In addition, he shows how to make all of these features available in the Windows and Web Forms Designers, just like an ADO.NET DataSet.
Service Station: The Application Connection Designer Aaron Skonnard - August 2005 In some of my past columns on service orientation and contract-first development, I've mentioned the new suite of designers, formerly codenamed "Whitehorse," that are part of Visual Studio® Team edition for Software Architects Team System.
XML Comments: Document Your Code in No Time At All with Macros in Visual Studio Tony Chow - July 2005 Starting in Visual Studio 2005, XML documentation support will become available in Visual Basic and C++ as it has been for C#. However, making full use of the many comment tags will take a little extra work In this article, the author shows how Visual Studio macros can be used to automate the creation of XML documentation and creates macros that write large sections of comments with just a keystroke.
Visual Basic: Simplify Common Tasks by Customizing the My Namespace Joe Binder - July 2005 Underlying the My namespace's APIs is a fully extensible architecture you can leverage to customize the behavior of My and to add new services to its hierarchy to adapt to specific application needs. the My namespace is optimized to provide simple solutions to common problems. But if your requirements are different, you can use the My namespace's customization model to modify the behavior of individual My namespace members to meet specific application requirements.
Cutting Edge: Data Repeater Controls in ASP.NET Dino Esposito - June 2005 The ASP. NET Repeater is a basic container control that allows you to create custom lists from any data available to the page. It's a handy control, especially since most ASP. NET pages that display data need to repeat the same kinds of data over and over.
Advanced Basics: Scaling Up: The Very Busy Background Compiler Matthew Gertz - June 2005 One of the features that distinguishes Visual Basic® from the other languages in Visual Studio® is its use of a background compiler (BC). The BC runs from the moment you start up a Visual Basic project until the time you close the last one down.
Service Station: Techniques for Contract-First Development Aaron Skonnard - June 2005 In my May 2005 column, I discussed contract-first development and appropriate times to use it (see Service Station: Contract-First Service Development). In this second part, I'm going to focus on some techniques for contract-first development within the ASMX framework.
Draft a Rich UI: Ground Rules for Building Enhanced Windows Forms Support into Your .NET App Michael Weinhardt and Chris Sells - May 2005 In this article, the winning Windows Forms duo of Chris Sells and Michael Weinhardt team up again to explore lots of new features and additions to Windows Forms 2.0 that will let you build more flexible, feature-rich controls, get better resource management, more powerful data-binding abilities, and make your development life a whole lot more fun.
Escape DLL Hell: Simplify App Deployment with ClickOnce and Registration-Free COM Dave Templin - April 2005 DLL Hell that results from versioning conflicts is generally not a problem in .NET because components do not require registration, and are either totally isolated to an application or are managed in a well-defined side-by-side way with the help of the Global Assembly Cache. But if you're still using COM, wouldn't it be great if you could deploy your existing COM components using a model similar to the .NET Framework? In Windows XP, you can, and this article explains how.
Team Up!: Get All Your Devs in a Row with Visual Studio 2005 Team System Chris Menegay - April 2005 Visual Studio 2005 Team System includes tools to help project managers, architects, developers, testers, and even development managers. In this article, the author provides an overview of Team System using the Visual Studio 2005 December Community Technology Preview, shows you how to set up a development project, and explores the typical development process, from inception through testing.
Advanced Basics: Remembering User Information in Visual Basic .NET Duncan Mackenzie - April 2005 Many applications need to store user-specific settings to be persisted between sessions. But how do you go about saving and restoring these settings in your Microsoft® . NET Framework-based application? It's not all that easy to find the correct answer.
Cutting Edge: A New Grid Control in Windows Forms Dino Esposito - April 2005 Grid controls are essential in many of today's apps. Until now, though, most developers using Visual Basic® have had to buy third-party components to get an effective, easy to use grid component. The Windows® Forms DataGrid turned out to lack too many features for the average developer.
Service Station: Developing .NET Web Services with Beta 2 Aaron Skonnard - April 2005 Version 2. 0 of the Microsoft® . NET Framework makes numerous improvements at various levels in the Web services protocol stack. In addition, better tool support and an increased focus on interoperability make your life easier.
Excel: Integrate Far-Flung Data into Your Spreadsheets with the Help of Web Services Alok Mehta - February 2005 Excel 2003 lets you dynamically integrate the data provided by different Web services. It also lets you take advantage of the latest capabilities in Office 2003 to customize list views, graphs, and charts, and to catalog bulk items online or offline. Find out how you can makle the most of the data returned from your Web services with the Office 2003 Web Services Toolkit API.
Mobility: Optimize Your Pocket PC Development with the .NET Compact Framework Dave Edson and John Socha-Leialoha - December 2004 The .NET Compact Framework can be used to write great code and great applications. As long as you take a few things into consideration and are willing to bend a rule or two, you can have your performance cake and eat it too. In this article the authors present some neat tricks to make life as a programmer easier when using the .NET Compact Framework. Later they discuss techniques to increase performance, and decrease both load time and memory footprints. Sample code is provided.
.NET Internals: Tailor Your Application by Building a Custom Forms Designer with .NET Sayed Y. Hashimi - December 2004 The design-time architecture of Windows Forms in the .NET Framework has made development much more flexible than it had been with MFC. With Windows Forms, you can drag one of your custom controls from the toolbox and drop it onto the Visual Studio design surface and even though Windows Forms knows nothing about the control, it's able to host it and let you manipulate its properties—not possible in MFC. In this article, the author discusses what's going on under the covers as you design your forms and then walks through the creation of a bare-bones forms designer.
.NET Code Tuning: Make Your Apps Fly with the New Enterprise Performance Tool John Robbins - December 2004 Because the common language runtime (CLR) is a black box, it's pretty hard to divine what's going on when you want to track down performance problems. Microsoft will be delivering a brand new profiler, the Enterprise Performance Tool (EPT), as part of Visual Studio 2005 Team Developer Edition that's ideal for use on a production system because it offers some very lightweight means of collecting performance data. Here John Robbins takes you on a tour.
Data Points: Efficient Coding With Strongly Typed DataSets John Papa - December 2004 Someone once said to me that the hallmark of a good developer is the desire to spend time efficiently. Developers are continually pursuing ways to make coding easier and faster, and to reduce the number of errors.
Bootstrapper: Use the Visual Studio 2005 Bootstrapper to Kick-Start Your Installation Sean Draine - October 2004 There are plenty of times when you need to get information on running processes, not the least of which is during performance tuning. Using the techniques in this article and special .NET classes you'll see how to get a process' ID, name, priority, number of threads, kernel handle, and memory consumption, as well as its user-mode, kernel-mode, and total elapsed running time and put them to use in a custom app called AssemblyBrowser.
BizTalk 2004: Automate Your Business Processes with Human Workflow Services and Visual Studio Chris Whytock - October 2004 BizTalk Server is an excellent platform for automating B2B and EAI workflows. Process-driven workflows send messages between machines and access data. Until now, such processes were very difficult to automate, but with the introduction of Human Workflow Services in BizTalk Server 2004, this class of workflow automation is a very real possibility. This article explains it all.
SQL Server 2005: Unearth the New Data Mining Features of Analysis Services 2005 Jamie MacLennan - September 2004 In SQL Server 2005 Analysis Services you'll find new algorithms, enhancements to existing algorithms, and more than a dozen added visualizations to help you get a handle on your data relationships. Plus, enhancements to the Data Mining Extensions to SQL along with OLAP, DTS, and Reporting Services integration make it possible to create a new breed of intelligent apps with embedded data mining technology. Here the author explains it all.
Express Editions: Get a Lean, Mean Dev Machine with the Express Editions of Visual Basic and SQL Server 2005 Brian A. Randell - September 2004 The Express Editions of Visual Basic and SQL Server 2005 have lots of the features of the full-sized versions, but with a lot less of the overhead. Professional developer features such as full IntelliSense support, local debugger, Add Web Reference, and the improved Visual Data Tools will all be available in the Express products, so you don't have to leave your favorite features behind. In this article the author introduces you to these express editions and builds a sample app to get you started.
Advanced Basics: Being Generic Ain't So Bad Ken Getz - September 2004 Ispeak at a lot of user groups and conferences where I field tech support questions. Recently, a conference attendee (I'll call him Adam) came up to me with a sheaf of printouts, along with the following question.
Bugslayer: Three Vital FXCop Rules John Robbins - September 2004 In the June 2004 installment of the Bugslayer column, I introduced the amazing FxCop, which analyzes your . NET assemblies for errors and problems based on code that violates the . NET Design Guidelines.
Visual Studio 2005: Bridge the Gap Between Development and Operations with Whitehorse Brian A. Randell and Rockford Lhotka - July 2004 Microsoft is introducing a new suite of tools (code-named "Whitehorse") that will make it easier for you to design and implement systems that conform to a service-oriented architecture. Two of these tools -- the SOA Design Suite and the Class Designer -- support the graphical design of systems and components with support for code generation and support for bi-directional synchronization which lets you ensure that your diagram always represents your system design. This article introduces these tools and shows you how they'll improve your design and development efforts.
.NET Tools: Ten Must-Have Tools Every Developer Should Download Now James Avery - July 2004 This article introduces 10 development tools that can increase your productivity, give you a better understanding of .NET, and maybe even change the way that you develop applications. The tools covered include NUnit to write unit tests, Reflector to examine assemblies, FxCop to police your code, Regulator to build regular expressions, NDoc to create code documentation and five more.
The Big Story: An Overview of the New Services, Controls, and Features in ASP.NET 2.0 Jeff Prosise - June 2004 ASP.NET has become a bit of a gold standard for Web programming. The upcoming version, ASP.NET 2.0 will have even more of the kinds of features that have made it the popular framework it is today. This article takes a broad look at those features, including what's new in data source controls, themes and skins, the DataGrid and its new functionality, managing roles, and other administrative tasks.
Portals: Unleash Your Site's Potential with Web Parts and Personalization in ASP.NET 2.0 Steven A. Smith - June 2004 ASP.NET 2.0 has addressed some of the most common problems developers face today with a suite of controls, components and IDE tools. One such issuer is maintaining preferences information about individual users of a Web application in a uniform manner. This article drills down into ASP.NET 2.0 to illustrate how it helps solve these problems far easier than is possible today, and demonstrates how these features can be combined to build powerful, personalized Websites in very little time.
Data: More Load, Less Code with the Data Enhancements of ASP.NET 2.0 Dino Esposito - June 2004 A data source control is a server control that wraps some basic functions of a data source - be it a SQL Server database, an XML document, an Excel worksheet, or a sitemap description. Through the services of a similar component, data-bound controls can fetch data as well as insert new records or update and delete existing ones. Data source controls enable a consistent model across a variety of data sources and dramatically reduce the amount of code needed to implement a two-way data-binding scenario. This article provides an introduction to data source controls and other related data binding features.
Master Pages: Master Your Site Design with Visual Inheritance and Page Templates Fritz Onion - June 2004 Master pages in ASP.NET 2.0 solve a problem many Web developers have been solving on their own with a variety of techniques for years - providing a single master template for an entire site. This article covers the details of master pages, discussing their usage and implementation and how they are a natural evolution of custom techniques developers are using today.
Controls: Plan Your Migration to the Visual Studio 2005 Navigation Controls Dave Donaldson and Steven DeWalt - June 2004 Navigation is central to a well functioning Web application and it can be implemented numerous ways using today's technologies. This article highlights some of the key details of the new navigation controls that are part of the upcoming ASP.NET 2.0, and talks about how to design and implement one of these navigation controls today. This article contains a simple Web site that demonstrates the use of these navigation controls, pointing out some of the key items such as a breadcrumb control and things to watch for along the way. The article then describes how to implement a breadcrumb control today.
.NET Framework 2.0: Craft a Rich UI for Your .NET App with Enhanced Windows Forms Support Michael Weinhardt and Chris Sells - May 2004 The upcoming version of the .NET Framework offers a host of enhancements an order of magnitude over and above existing versions. In particular, developers writing Windows Forms benefit from a variety of new and improved features targeting development, deployment, increased productivity, and auto-generated code. This article covers some of the key new features including designer enhancements, new controls, data binding, and deployment to give you a taste of what's to come.
Debugging: DataTips, Visualizers and Viewers Make Debugging .NET Code a Breeze Morgan Skinner - May 2004 There is a whole host of new goodies in upcoming release of Visual Studio 2005 that will enhance your debugging experience. One such improvement will make it easy to visualize types within the debugger. This article discusses those improvements and covers debugger attributes and type visualizers. In addition, the author shows you how to extend the display of your own types with custom attributes and how to plug in an assembly to visualize.NET types built into the framework.
Office 2003: Secure and Deploy Business Solutions with Microsoft Visual Studio Tools for Office Brian A. Randell and Ken Getz - March 2004 Microsoft Visual Studio Tools for the Microsoft Office System is a new technology that brings the advanced features of Visual Studio .NET and the .NET Framework to applications built for Microsoft Office Word 2003 and Microsoft Office Excel 2003. Deploying solutions built with this technology requires that you understand how runtime security is enforced in managed applications and how to configure users' systems to run your solutions without introducing security holes.To promote that understanding, this article will demonstrate how to establish trust, explain policy considerations and permissions, and explain what trusted code is all about. Secure assembly deployment is also covered in detail.
Yukon Basics: XML, T-SQL, and the CLR Create a New World of Database Programming Eric Brown - February 2004 The next version of SQL Server, code-named "Yukon," includes quite a few enhancements and expanded language support. For example, Transact-SQL now conforms more closely to the ANSI-99 SQL specification and makes querying more flexible and expressive. Yukon can execute user-defined functions, stored procedures, and triggers written in CLR-targeted languages, including Visual Basic .NET and C#. It supports a subset of the W3C standard XQuery language, and has native XML support.In this article, the author outlines the most significant language features and builds an order-entry sample app.
Timers: Comparing the Timer Classes in the .NET Framework Class Library Alex Calvo - February 2004 Timers often play an important role in both client applications and server-based components (including Windows services). Writing effective timer-driven managed code requires a clear understanding of program flow and the subtleties of the .NET threading model. The .NET Framework Class Library provides three different timer classes: System.Windows.Forms.Timer, System.Timers.Timer, and System.Threading.Timer. Each of these classes has been designed and optimized for use in different situations. This article examines the three timer classes and helps you gain an understanding of how and when each class should be used.
Office 2003: Bring the Power of Visual Studio .NET to Business Solutions Built with Microsoft Office Ken Getz and Brian A. Randell - September 2003 Microsoft Visual Studio Tools for the Microsoft Office System is a new technology that brings the advanced features of Visual Studio .NET and the .NET Framework to apps built on Microsoft Word 2003 and Excel 2003. Now you can use Visual Basic .NET and C# to write document-centric, managed code solutions that run in-process with Word 2003 or Excel 2003, taking advantage of the rich object models they expose. Along the way you get the benefits of the managed environment in which a fully compiled .NET-based application executes, including code access security.
The ASP Column: Tree Controls with XSL George Shepherd - June 2003 Manipulating the TreeView server-side control is very much like programming any other ASP.NET server-side control. There are a number of properties, methods, and events that are available both programmatically and through the designer. Find out how to take advantage of it.
Visual Studio .NET: Building Windows Forms Controls and Components with Rich Design-Time Features, Part 2 Michael Weinhardt and Chris Sells - May 2003 This is the second of two articles discussing the extremely rich design-time features of the .NET Framework. Part 1 discussed the basics, showing you where to start and how to extend your control implementation through attributes and interfaces, as well as their effects on the property browser, code serialization, and other controls. Part 2 continues the journey by concentrating on design-time functionality that you can implement beyond your components and controls, including TypeConverters, UITypeEditors, and Designers. It would be impossible to cover everything you can do in two short articles, which is a testament to just how all-encompassing and flexible the design-time capability of the .NET Framework is.
Advanced Basics: Windows Forms Controls Ken Spencer - May 2003 Build a control that allows the user to drag and drop other controls onto the new control at run time, and allow the user to move the control around on a form, all in Visual Basic.
Visual Studio .NET: Building Windows Forms Controls and Components with Rich Design-Time Features Michael Weinhardt and Chris Sells - April 2003 Visual Studio .NET provides support for designing rich features into your controls and components, allowing you to set properties, set form placement, inherit from base classes, and much more. So how does Visual Studio .NET do all this? What does the Windows Forms designer do? What's the difference between a control and a component? How does Visual Studio integrate your controls so that they can access features of the .NET Framework?In this article, the authors answer these common questions by building a clock control and taking the reader along for the ride. In building the control, hosts and containers are illustrated, the property browser is explained, debugging is discussed, and a general overview of the design-time infrastructure is presented.
Visual Studio .NET: What You Need to Know Today About the New and Upgraded Features in Visual Studio .NET 2003 Carl Franklin - March 2003 Any time an upgrade of a favorite tool is released, questions about compatibility, versioning, and changes in methodology abound. The release of Visual Studio .NET 2003 is no exception. Developers will be relieved to learn that breaking changes have been kept to a minimum, and delighted to learn that important new features, like Visual J#, have been added. These and other new features of the .NET Framework 1.1 and Visual Studio .NET 2003, including mobile support and improved debugging, are discussed here.
Visual C++ .NET: Language Enhancements and Simplified GUI Development Enrich Your C++ Apps Richard Grimes - March 2003 Managed Extensions for C++ is the preferred programming language for developing Windows Services. Visual Studio .NET 2003 introduces C++ support for designers, providing all the RAD facilities that were available to other languages for developing forms, controls, components, and DataSets. Furthermore, support has been added for the creation of verifiable assemblies with C++.In this article, the author reviews these additions as well as the new compiler and linker switches, demonstrating how C++ remains the premier systems language while becoming a powerful tool for .NET GUI development as well.
Windows Forms: .NET Framework 1.1 Provides Expanded Namespace, Security, and Language Support for Your Projects Chris Sells - March 2003 With the much-anticipated release of the .NET Framework 1.1, developers are eager to know what's been added to their programming bag of tricks. In this article, the author focuses on new developments in Windows Forms, such as namespace additions, support for hosting managed controls in unmanaged clients, and designer support for C++ and J#. Integrated access to the Compact Framework and new mobile code security settings also make this release noteworthy. Along with these features, the author reviews the best ways to handle multiple versions of the common language runtime and highlights some potential pitfalls.
Printing: Preview and Print from Your Windows Forms App with the .NET Printing Namespace Alex Calvo - February 2003 Printing is an integral part of every complete Windows-based application. Providing robust printing capabilities in these applications has often proved to be a tedious chore. Now, printing from Windows Forms with the .NET Framework means you must adopt a document-centric approach, resulting in cleaner and more manageable code. While the System.Windows.Forms namespace provides seamless integration with all the standard print dialogs (such as Print Preview, Page Setup, and Print), the System.Drawing.Printing namespace offers numerous classes for extensibility and customization. These classes, and how they provide access to printing capabilities, are covered here. Other useful techniques, such as printing in the background to allow the user to continue other tasks, is also explained.
Windows Forms: Give Your .NET-based Application a Fast and Responsive UI with Multiple Threads Ian Griffiths - February 2003 If your application performs any non-UI processing on the thread that controls the user interface, it may make the app seem slow and sluggish, frustrating users. But writing multithreaded apps for Windows has long been restricted to C++ developers. Now with the .NET Framework, you can take advantage of multiple threads in C# to control the flow of instructions in your programs and isolate the UI thread for a fast and snappy user interface. This article shows you how. Also, it discusses the pitfalls of multiple threads and presents a framework for safe concurrent thread execution.
C++ and ATL: Use ATL Server Classes to Expose Your Unmanaged C++ Code as an XML Web Service Kirk Fertitta and Chris Sells - December 2002 Throughout this issue, you'll read all about the promise of Web Services and how the .NET Framework enables Web Service development. Many people will also be building their Web Services atop C++ code and frameworks like ATL Server, particularly when performance is paramount. In this article, the authors show how fully functional Web Services are built using ATL Server and Visual Studio .NET. Beginning with unmanaged C++ classes, they add ATL attributes that make the code work over HTTP.
Wireless Web: Microsoft Mobile Internet Toolkit Lets Your Web Application Target Any Device Anywhere Paul Yao and David Durant - November 2002 If you've built Web sites using ASP.NET, you'll welcome the Microsoft Mobile Internet Toolkit (MMIT). MMIT extends the Visual Studio .NET IDE you already know by providing new controls for handheld devices letting you easily develop applications for wireless devices. This means you can write less code while adapting it to more devices. Not only does MMIT integrate with Visual Studio .NET, it extends ASP.NET as well. This article gives you the background you need to write, test, and deploy a site with MMIT and make all your code able to target specific devices for a custom fit.
.NET Exceptions: Make the Transition from Traditional Visual Basic Error Handling to the Object-Oriented Model in .NET Jesse Liberty - November 2002 If you're used to Visual Basic 6.0 and you're making the transition to Microsoft .NET, you will find that error handling is quite different from what you've used for years. Visual Basic .NET uses a more object-oriented solution to signaling and responding to unexpected problems while your program is running. This approach, called structured exception handling, has a number of advantages over the On Error statements provided in previous versions of Visual Basic. For instance, exceptions give you lots more information about exactly what went wrong in your app. To help you take advantage of this modern error handling paradigm, this article will show you how to raise and respond to exceptions, as well as how to create your own custom exception classes.
The ASP Column: Deploying an ASP.NET App Using Visual Studio .NET George Shepherd - November 2002 When Visual Studio® . NET was released back in February 2002, it included a number of new features that made it easier to create Web applications. The Microsoft® . NET Framework includes classes for intercepting and processing HTTP requests, and Visual Studio .
Visual Studio .NET: Top Ten Cool Features of Visual Studio .NET Help You Go From Geek to Guru Jon Flanders and Chris Sells - October 2002 Visual Studio .NET has lots of cool features. Obviously, it supports languages that target the common language runtime, like C# and Visual Basic .NET, and it lets you write CLR-managed code. But did you know that there are features of the environment itself, independent of the language features, that earn Visual Studio .NET the cool tool stamp of approval?In this article the authors count down their favorite environment features—the ones they think every developer will applaud. They include support for debugging stored procedures, project reference management, metadata in Class View, a richer immediate window, custom environment programming with macros, and more.
Cutting Edge: Using an Eval Function in Web Services Dino Esposito - September 2002 Web Services are often presented as the perfect tool for pro-grammers. They're interoperable, based on open standards such as SOAP and WSDL, and are fully integrated with the Microsoft® . NET platform.
Scripting and .NET: Visual Studio for Applications Provides Customized Scripting Facilities for Your .NET Project Chris Sells - August 2002 In the past, the Microsoft Active Scripting architecture has allowed you to make your applications extensible. But it came with some drawbacks. You couldn't call into DLLs; you had to use COM interfaces. The scripts were not compiled, so they ran more slowly than they otherwise might, and a number of objects had to ride along with the script. To solve these problems and make extensibility easier to attain, Visual Studio for Applications was introduced. Presented here is an introduction to VSA that covers language support, types, events, and much more.
Rotor: Shared Source CLI Provides Source Code for a FreeBSD Implementation of .NET Jason Whittington - July 2002 With over 9,000 files, and including some 1300 public classes to pore through, the Shared Source CLI can teach you quite a bit about the internal workings of the CLR. But the sheer amount of source code included can make just starting your exploration a monumental task. This article discusses some of the things you can learn from the source code facsimile of the CLR, like how JIT compilation works. It will also help you understand how to control execution along with debugging and loading classes. A walk through the steps involved in setting up the runtime will let you become familiar with the process.
ASP.NET: Develop Polished Web Form Controls the Easy Way with the .NET Framework David S. Platt - June 2002 Pre-built custom controls make application design easier and faster and allow you to maintain UI consistency. However, prepackaged controls can be big and slow, and are OS-specific. For those who don't want to use prepackaged controls, Visual Studio .NET provides controls for Web Forms similar to those found in Windows Forms, including label and textbox, and new additions such as the DataGrid, all of which you can customize. If you want to design your own controls, the .NET Framework provides inheritable classes that take care of all the nasty stuff you want to avoid, including page lifecycle, maintaining state across invocations, and browser detection. This article discusses these concepts, as well as eventing, rendering, and client-side scripting.
Go International!: Let Your Apps Span the Globe with Windows Forms and Visual Studio .NET Jason R. Bell - June 2002 How would an English speaker feel if his car's owner's manual was written in German or if the dash board markings were written in Japanese because the car was manufactured in that country? This is an experience common to computer users all over the world who don't speak English as their primary language, and it's becomming more important. The Microsoft .NET Framework not only makes it possible to build international applications, but many of the tools such as Visual Studio .NET make it quite easy. This article looks at internationalization with .NET and presents real tools you can use to make all of your Windows Forms applications global-ready.
C#: XML Comments Let You Build Documentation Directly From Your Visual Studio .NET Source Files J. Andrew Schafer - June 2002 C# allows developers to embed XML comments into their source files-a useful facility, especially when more than one programmer is working on the same code. The C# parser can expand these XML tags to provide additional information and export them to an external document for further processing. This article shows how to use XML comments and explains the relevant tags. The author demonstrates how to set up your project to export your XML comments into convenient documentation for the benefit of other developers. He also shows how to use comments to generate help files.
WMI and .NET: System.Management Lets You Take Advantage of WMI APIs within Managed Code Zina Pozen - May 2002 Visual Studio .NET and the Microsoft .NET Framework SDK provide a new set of APIs and tools that let you consume Windows Management Instrumentation (WMI) data and events from managed .NET applications. After presenting an overview of what's new for WMI in the .NET Framework and the Visual Studio .NET environment, the author provides an in-depth exploration of the Management Extensions in Visual Studio .NET for Server Explorer. These extensions help you develop management-aware software and come in handy in a variety of distributed application development scenarios.
Crystal Reports: Add Professional Quality Reports to Your Application with Visual Studio .NET Andrew Brust - May 2002 Crystal Reports for Visual Studio .NET provides a comprehensive reporting solution for .NET developers that is thoroughly integrated with both the Visual Studio .NET IDE and the .NET Framework. Crystal Reports supports ADO.NET, XML Web Services, and ASP.NET server controls and caching. It also integrates seamlessly with the Visual Studio .NET Server Explorer, toolbox, and design environment. It has a rich programming model and flexible options for customizing and deploying reports. These major features and others covered here take the drudge work out of data representation in your own applications.
Windows Forms: Developing Compelling User Controls that Target Forms in the .NET Framework David S. Platt - April 2002 In the beginning, writing controls meant dealing with Windows messages. Then came Visual Basic controls, which introduced methods, properties, and events. Later, ActiveX controls, which ran atop COM, became popular. While each innovation in control writing brought more flexibility, nothing has matched the versatility of the new .NET Windows Forms controls and Web Forms controls. This article, the first of a two-part series, introduces the reader to Windows Forms, beginning with their inheritance from one of the .NET CLR base classes, which makes control creation much faster than before. Control programming is illustrated through the development of a login control. The equally flexible Web Forms controls will be covered in Part 2.
Windows CE: Develop Handheld Apps for the .NET Compact Framework with Visual Studio .NET Larry Roof - March 2002 Smart Device Extensions (SDE) for Visual Studio .NET allow programmers to develop applications for the .NET Compact Framework, a new platform that maintains many of the features of the .NET Framework in a version optimized for handheld devices. This article shows how SDE provides access through Visual Studio .NET to a variety of .NET classes for devices running Windows CE, including classes for creating user interfaces. Data access classes and Web Services for the .NET Compact Framework are also explained. Following that overview, a sample Web Service called XMLList is built. Then the UI-the XMLList client-side application-is created.
Visual C++ .NET: Tips and Tricks to Bolster Your Managed C++ Code in Visual Studio .NET Tomas Restrepo - February 2002 Developers using the Managed Extensions for C++ have more options than those using other languages because C++ is a lower-level language. However, this means an increase in code complexity. This article discusses a few of the more complex issues facing developers, such as operator overloading, managed types and unmanaged code, and boxing. Also covered are the is operator, the using statement, and string conversions. The author points out the flexibility of Managed Extensions for C++ and outlines the additional effort that is required for you to take advantage of its increased power and flexibility.
Visual Studio .NET: Custom Add-Ins Help You Maximize the Productivity of Visual Studio .NET Leo A. Notenboom - February 2002 Regardless of how great an integrated development environment (IDE) is, there will always be features that developers wish had been included. For that reason, the Visual Studio .NET IDE provides an extensive add-in facility that allows you to add nearly unlimited numbers of features and functionalities written in Visual Basic, C, C++, C#, or any .NET-compliant language. This article explains how add-ins work in Visual Studio .NET. It then shows how to add custom text editing by creating an add-in with two editing functions, a simple text insert of the current date, and a more complex function to reformat paragraphs of text. Finally, you'll learn how to add a page to the Options dialog.
Windows Services: New Base Classes in .NET Make Writing a Windows Service Easy Ken Getz - December 2001 Windows services are applications that run outside of any particular user context in Windows NT, Windows 2000, or Windows XP. The creation of services used to require expert coding skills and generally required C or C++. Visual Studio .NET now makes it easy for you to create a Windows service, whether you're writing code in C++, C#, or Visual Basic. You can also write a Windows service in any other language that targets the common language runtime. This article walks you through the creation of a useful Windows service, then demonstrates how to install, test, and debug the service.
Visual Studio .NET: Managed Extensions Bring .NET CLR Support to C++ Chris Sells - July 2001 If you're a longtime C++ programmer, the thought of migrating to Visual Studio .NET might make you wary at first. However, a new feature of Visual C++, the managed extensions for C++, allows you to build apps with the .NET Framework. When you use managed C++, your code is handled by the common language runtime (CLR). This provides advanced features like garbage collection, interoperability, and more. This article explains why you'd want to use the managed extensions, how to use them, how to mix managed and unmanaged code, and how your managed code can interoperate with programs written in other languages.
C++ Attributes: Make COM Programming a Breeze with New Feature in Visual Studio .NET Richard Grimes - April 2001 C++ attributes in Visual Studio .NET are used to generate C++ code through attribute providers. Attribute providers generate code for COM classes, and the code is injected by the C++ compiler at compile time. This has the effect of reducing the amount of code that you need to write. In addition, with C++ attributes you no longer need to maintain separate IDL and RGS files, which makes project management simpler. This article explains C++ attributes, the process used by the attribute provider to generate code, and the code that is automatically generated. It also covers how attributes affect the registration process, how attributes can be used to generate code module entry points, and how connection points can be implemented using C++ attributes. Also explained is how these features contribute to the Unified Event Model for the .NET platform.
Windows Forms: A Modern-Day Programming Model for Writing GUI Applications Jeff Prosise - February 2001 To write GUI applications for Microsoft .NET you'll use Windows Forms. Windows Forms are a new style of application built around classes in the .NET Framework class library's System.WinForms namespace. They have a programming model all their own that is cleaner, more robust, and more consistent than models based on the Win32 API or MFC, and they run in the managed environment of the .NET Common Language Runtime (CLR). This article details what Windows Forms are all about, from the programming model to Microsoft Intermediate Language and the JIT compiler. Two applications using forms, event handlers, anchors and persistence are built step by step.
Web Services: Building Reusable Web Components with SOAP and ASP.NET David S. Platt - February 2001 XML and HTTP are cross-platform technologies especially suited for building applications that can communicate with each other over the Internet, regardless of the platform they are running on. Web Services in the Microsoft .NET Framework make it easy to write components that communicate using HTTP GET, HTTP POST, and SOAP. An understanding of these concepts, along with knowledge of synchronous and asynchronous operations, security, state management, and the management of proxies by the .NET Framework is essential in building these applications. This article has been adapted from David Platt's upcoming book introducing the Microsoft .NET Platform to be published by Microsoft Press in Spring 2000.
Windows CE: eMbedded Visual Tools 3.0 Provide a Flexible and Robust Development Environment Paul Yao - January 2001 This article provides an overview of writing applications for Windows CE 3.0. Unicode support in Windows CE, the kernel, memory management, the object store, and COM and DCOM are discussed. The article also covers the user interface, graphics, the Internet, and how Windows CE compares to the desktop in each of these areas. eMbedded Visual Tools 3.0 is discussed in depth. To help the reader decide which tools to use, development with Visual Basic, Win32, MFC, and ATL are explained. Text editor samples with this article have been developed with Visual Basic and Win32 so their implementations can be compared.
ATL Server and Visual Studio .NET: Developing High-Performance Web Applications Gets Easier Shaun McAravey and Ben Hickman - October 2000 When developing high-performance applications for the Web, developers often must choose between performance and ease of development. With ATL Server, new with Visual Studio .NET, developers get the best of both worlds. ATL Server uses a tag replacement engine written in C++, provides a simple programming model, and promotes enhanced performance and easy debugging. This article presents an overview of the ATL Server architecture, then creates a basic ATL Server project. It then goes on to explain processing SRF files, HTTP streams, forms, cookies, and header files. Managing session state is also discussed, along with file uploads and performance monitoring.
Develop a Web Service: Up and Running with the SOAP Toolkit for Visual Studio Rob Caron - August 2000 The new Simple Object Access Protocol (SOAP) Toolkit for Visual Studio 6.0 provides the infrastructure for developers to build, expose, and consume Web services. With a few exceptions that are outlined in the toolkit, the SOAP Toolkit complies with the SOAP version 1.1 specification. It includes the Remote Object Proxy Engine (ROPE), a Service Description and Code Generation Wizard, and code that provides ASP and ISAPI reference implementations of SOAP listeners. This article describes the tools and the object model of the SOAP Toolkit, and then demonstrates ASP and ISAPI implementations of a functional Web service using this toolkit.
Shelley Powers: Migrating Your ASP Apps from Windows NT 4.0 to Windows 2000 Shelley Powers - August 2000 In order to take advantage of new features in Windows 2000 and IIS 5.0, you must first migrate your Windows NT 4.0-based ASP applications to Windows 2000. This article provides a multi-step migration plan. It discusses how to install and configure IIS 5.0, set up security, migrate MTS packages to COM+ applications, and handle differences in the ASP object models. Also included are guidelines for setting up Visual Basic and Visual C++ for development in Windows 2000 and information on what to expect when moving ASP components to the new OS.
The Future of Visual Basic: Web Forms, Web Services, and Language Enhancements Slated for Next Generation Joshua Trupin - April 2000 The plans for the next version of Microsoft Visual Basic include three major improvements: Web Forms, Web services, and object-oriented language enhancements. Web Forms will let veteran Visual Basic users develop Web-based applications as easily as they design standalone apps today. Through a SOAP interface, Web services will let you deploy programmable modules anywhere that can be reached by a URL. In addition, several key object-oriented language enhancements, including inheritance, polymorphism, and overloading, will make Visual Basic code as flexible as C++.