Synopses & Reviews
DEVELOPING APPLICATIONS WITH VISUAL STUDIO.NET is an in-depth guide that takes Windows programming to the next level: creating .NET applications that leverage the prior knowledge and experience of C++ Win32 programmers. The .NET Framework supplies programmers with rich standard run-time services, supports the development of Web-based services, and provides both inter-language and inter-machine interoperability. Programmers can now focus on creating more complex, more distributed, and more Web-enabled applications.
This book begins by describing the .NET Framework, introducing the facilities .NET offers and the classes programmers can use. It goes on to describe the tools available in Visual Studio.NET and demonstrates their use. Readers are then ready to develop and debug applications with the help of clearly illustrated examples in C# and Managed C++.
DEVELOPING APPLICATIONS WITH VISUAL STUDIO.NET covers commonly overlooked topics such as error handling, memory management, event logging, localization issues, performance monitoring, ATL Server, and Managed C++. Author Richard Grimes shares his hard-won understanding of Visual Studio.NET, emphasizing the innovations that save you time and trouble and steering you away from those that limit programming power.
Among the topics explored in-depth:
- The Common Language Runtime (CLR)
- Core classes in the Framework Class Library
- Contexts and .NET remoting
- Interoperation and COM+
- The Visual Studio.NET environment
- Creating and building solutions
- Visual C++.NET
- Application development
- Debugging
With this book as your guide, you will learn how to efficiently develop strong, robust code within .NET.
0201708523B01092002
Synopsis
This is the.NET book C++ developers have been waiting for: a meaty, practical guide to Visual Studio.NET programming from one of the world's leading authorities on Microsoft development. Best-selling COM/ATL author Richard Grimes begins by reviewing the fundamental concepts that underlie the .NET Runtime, including managed vs. unmanaged code, garbage collection, the Microsoft Intermediate Language, type information, and metadata. Next, Grimes introduces the .NET Class Libraries -- first at a high level, and then with far greater detail about the libraries that will be of greatest value. Grimes covers contexts and remoting, introducing serialization, marshalling, channels and SOAP, and the role of Web services as an interoperability mechanism. Once readers are solidly grounded in .NET, Grimes turns to Visual Studio.NET: its facilities, tools, and project structure, ranging from project management issues to Web discovery. In Part III, Grimes offers comprehensive coverage of using Visual Studio.NET to build advanced applications. He presents detailed coverage of managed C++ written for experienced C++ developers; a thorough walkthrough of C++ development with WinForms designed to help developers migrate from Win32; extensive coverage of Microsoft's ATL Server and web application/service development; and finally, a full chapter on debugging. For every experienced Windows developer familiar with Visual C++.
About the Author
Richard Grimes is an independent consultant specializing in COM, ATL, and .NET. He is the best-selling author of a number of books written for Wrox Press, including
Professional Visual C++ MTS Programming (1999),
Beginning ATL 3 COM Programming (1999),
Professional ATL COM Programming (1998), and
Beginning ATL COM Programming (1998).
0201708523AB07292002
Table of Contents
(NOTE:
Each chapter concludes with a Summary.)
Preface.
Acknowledgments.
1. NET Runtime.
.NET Features.
.NET Languages.
Executing Code.
Interop.
Garbage Collector.
Security.
Types.
Classes.
Managed and Unmanaged C++ Classes.
Value Types.
Boxing.
Managed Arrays.
Member Access.
Common Language Specification.
Other .NET Features.
Interfaces.
Metadata and Attributes.
Exceptions.
Delegates.
Events.
Packaging and Deployment.
Assemblies and Modules.
Versioning before .NET.
Locating and Versioning .NET Assemblies.
Application Domains.
Administering Security.
2. Framework Class Library.
The Win32 API.
Memory Allocation.
Error Handling.
Framework Class Library.
The Core Library.
General-Purpose Classes.
System Classes.
Tracing and Debugging.
Net.
Threading.
Reflection.
GDI+ and Windows.
System.Drawing.
System.Drawing.Drawing2D.
System.Windows.Forms.
Other Framework Class Library Classes.
Event Log.
Performance Counting.
Process Information.
Data.
Message Queuing.
3. Contexts and Remoting.
Contexts.
Context Bound and Context Agile.
Passing Parameters by Reference and by Value.
Marshaling Objects between Contexts.
Context Sink Chains.
Dynamic Properties and Sinks.
Tracking Handler s.
Serialization.
Serializing Objects.
Formatters.
Object Manager.
Custom Serialization.
MSMQ Serialization.
Remoting.
.NET Remoting.
.NET Remote Components.
Marshaling.
Leases and Lifetime.
Message Sinks and Channels.
Channels.
Extending the Remoting Framework.
SOAP.
Security.
Web Services.
Architecture.
Managed Web Services.
SOAP Invocation.
Web Service Clients.
ASP.NET Services334
Web Services and Security.
Asynchronous Programming.
Asynchronous Delegates.
Fire and Forget.
Delegates and Remoting.
4. Interoperation and COM+.
Interoperation.
Interop with Native Code.
Calling DLLs.
Platform Invoke.
String Conversions.
Errors and Exceptions.
Data Flow Direction.
Structures.
Arrays and Buffers.
Marshaling.
Explicit Allocation of Buffers.
Unmanaged Exceptions.
Unsafe Code.
COM Interop.
Interop of COM and Managed Code.
COM Callable Wrapper.
Exporting Type Information.
Registration.
Runtime Callable Wrapper.
COM Automation Types.
COM Interface Types.
COM Events.
COM Aggregation.
COM Interop and the CRT.
Component Services.
Serviced Components.
Assemblies and Applications.
COM+ Context.
Object Pooling.
Transactions.
COM+ Security.
Queued Components.
Loosely Coupled Events.
Catalog Configuration.
5. Visual Studio.NET Environment.
The Visual Studio Environment.
Menus, Commands, and Shortcut Keys.
Docking Windows and Toolbars.
Documents.
Start Page.
Projects and Solutions.
Project Types.
Project Wizard Files.
Project Files.
Solution Configurations.
Project Configurations.
Project Properties.
Configuring Code.
Adding Items to C++ Projects.
Resource View.
Adding Items to C# Projects.
Adding References.
Class View.
Properties.
C# Resources.
Editing Code.
The Text Editor.
HTML Editor.
XML Editor.
Data.
Designers.
Binary Editor.
Searching and Browsing Code.
Find In Files.
Find In Project.
Command Window.
Incremental Searches.
Bookmarks.
Braces.
Object Browser.
Tools.
External Tools.
The Help System.
Toolbox.
Clipboard Ring.
The Macro Explorer and Editor.
Add-In Manager.
The VS.NET Command Line.
6. Creating and Building Solutions.
C++ and C# Project Types.
ATL Projects.
MFC Projects.
Managed C++ Projects.
Other C++ Projects.
C++ Project Options.
C# Project Types.
C++ Classes.
Simple Object.
COM+ Component.
Control.
Performance Monitor.
C# Classes.
Components, Controls, and Forms.
Inherited Forms and Controls.
Data.
Enterprise Template Projects.
Enterprise Solutions.
Enterprise Template Files and Proxy Projects.
Policy File.
Server Explorer.
Data Connections.
Servers Node.
The Build Process.
Source Control.
Customizing Builds.
Building and Task List.
Deploying Solutions.
Deployment Solutions.
Visual Studio Analyzer.
7. Visual C++ .NET.
ATL.
A Few New Keywords.
ATL Attributes.
Interfaces.
ATL Object Map.
ATL Server Project and ATL Server Web Service.
Managed Extensions for C++.
Class Declaration.
Member Access.
Properties and Fields.
Compiling to IL.
.NET Pointers.
Managed C++ and Interfaces.
Multiple Interfaces.
Managed Arrays.
Managed Strings.
Exceptions.
Operators.
Global Methods.
Using Managed Code in Unmanaged Code.
Using Managed Types within Unmanaged Types.
Calling Managed Code.
8. Application Development.
Developing Components.
Developing Controls.
Developing a Sample Control.
Property Editor.
Licensing.
Toolbox Items.
Resources and Internationalization.
Resources and .NET.
Locales, Cultures, and Languages.
Creating Resources.
Managed C++ and Resources.
C# and Resources.
Forms and Localization.
Resource Classes.
Satellite Assemblies.
The Event Log, Again.
Win32 Resources.
9. Debugging.
IDE Tool Windows.
Setting Breakpoints.
Threads and Modules Windows.
Call Stack Window.
Watch Windows.
Memory Windows.
Using the Command Window.
Formatting Values.
Exceptions.
Edit and Continue.
Using the Debugger.
Starting Debugging.
Start-up Options.
Stepping.
Crashes.
Compile-Time Checks.
Compiler Runtime Checks.
Remote Debugging.
Disassembly Window.
Debug Symbols.
Debugging ATL Server Projects.
CRT and ATL Memory Debugging.
ATL Interface Debugging.
Index. 0201708523T01242002