C++/C# Programmer's Guide for Windows 2000

by ;
Edition: CD
Format: Paperback
Pub. Date: 2001-08-01
Publisher(s): Pearson P T R
  • Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $49.99

Rent Book

Select for Price
There was a problem. Please try again later.

New Book

We're Sorry
Sold Out

Used Book

We're Sorry
Sold Out

eBook

We're Sorry
Not Available

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

Using Windows 2000, developers can build breakthrough distributed systems -- with breakthrough productivity. For experienced C++ developers, this book represents the first complete guide to Windows 2000 programming with Microsoft's latest generation of Visual.Studio.NET tools -- including both Visual C++ and C#. Ronald Reeves introduces the key Windows 2000 improvements that impact developers, then compares C++ and C#, helping developers identify the best language for their applications. Discover how C# enables more rapid Web development, making extensive use of XML data to simplify complex programming tasks. Understand Windows 2000's new options for GUI programming; improved concurrency and threading models; Windows 2000 processes; techniques for programming the Windows 2000 Registry, and more. The book includes comprehensive coverage of both COM and COM+, including coverage COM+ transitions, distributed programming techniques, queuing, Web application development, and more. The book also includes a detailed chapter on Windows 2000 application performance measurement and modeling. For all experienced C++ programmers who want to create applications that leverage the full power of Windows 2000.

Table of Contents

Foreword xi
Preface xiii
Introduction
1(8)
Windows 2000 Operating System Architecture
3(6)
Executive
3(2)
Protected Subsystems
5(1)
Local Procedure Call Facility
5(4)
Processes, Threads, and Jobs in Windows 2000
9(38)
Object Categories
11(5)
Processes
11(1)
Creating and Terminating Processes
11(5)
Terminating a Process
16(31)
Process Use of Mutexes, Semaphores, and Events
17(1)
Process Security and Access Rights
18(1)
Threads
19(1)
Creating and Terminating Threads
19(3)
Terminating a Thread
22(1)
Suspending Thread Execution
23(1)
Thread Stack Size and Thread Local Storage
23(4)
Thread Synchonization
27(1)
Mutex and Semaphore Creation
28(1)
Acquiring Mutexes, Semaphores, and Releasing
29(1)
Events
30(1)
Critical Section Objects
31(1)
Thread Priorities
32(3)
Thread Multitasking
35(1)
Thread Pooling
36(1)
Thread Security and Access Rights
37(1)
Jobs
38(1)
Creating, Opening, and Terminating Jobs
39(2)
Acquiring Job Status Information
41(2)
Managing Job's Processes
43(1)
I/O Completion Port and Job Notification
44(1)
I/O Completion Ports
45(2)
NET Framework
47(46)
Introduction
47(5)
.NET Framework Base Classes
52(9)
Common Type System
55(1)
Classes
56(1)
Interfaces
56(2)
Value Types
58(1)
Enumerations
59(1)
Delegates
60(1)
Common Language Runtime
61(28)
Managed Execution
63(1)
Microsoft Intermediate Language (MSIL)
64(1)
JIT Compilation
64(1)
Assemblies
65(1)
Assembly Concepts
66(1)
Versioning and DLL Conflicts
66(1)
An End to DLL Conflicts
67(1)
Assemblies and Deploying
67(1)
The Minimum You Need to Know About Assemblies
67(1)
Assembly Manifest
68(2)
Assembly Custom Attributes
70(1)
Creating Assemblies
71(1)
Naming an Assembly
72(1)
Assembly Location
72(1)
Loader Optimization
73(1)
Shared Name
74(1)
How to Assign and Reference a Shared Name
74(1)
Assemblies and Security Consideration
75(1)
Assemblies and Versioning
76(1)
How the Runtime Locates Assemblies
77(1)
Step 1: Initiating the Bind
77(1)
Step 2: Version Policy in the Application Configuration
77(2)
Step 3: Locating the Assembly Through Codebases or Probing
79(1)
Locating the Assembly Through Codebases
79(1)
Locating the Assembly Through Probing
79(2)
Explicit Codebases
81(1)
Probing URLs
81(1)
Step 4: The Global Assembly Cache and Auto-QFE Policy
81(1)
Step 5: Administrator Policy
82(1)
Partially Specified References
82(1)
How the Runtime Determines Type Identity
83(1)
Namespaces
83(1)
How the Runtime Uses Assembly Version Information
83(1)
An Assembly's Informational Version
84(1)
Specifying Version Policies in Configuration Files
85(1)
Default Version Policy
85(1)
Bind to a Specific Version
86(1)
Don't Accept Implicit QFEs
86(1)
Safe Mode
87(1)
Application Domains
87(2)
Unloading and Threads
89(1)
Metadata and Self-Describing Components
89(4)
What is Metadata?
89(1)
Description of PE or Assembly
90(1)
Description of Types
90(1)
Attributes
90(1)
The Benefits of Metadata
90(3)
Visual C++7.0
93(34)
Introduction
93(3)
C++ Programming Language
94(1)
Managed Code and Targeting the .NET Framework
94(1)
Programming in Native Code
95(1)
Attributed Programming
95(1)
ATL Server
95(1)
New Intergrated Debugger
96(1)
Event Handling in Visual C++
96(1)
Visual C++ Editions
96(3)
What's Included in the Visual C++ Standard Edtion
97(1)
What's Included in the Visual C++ Professional Edition
98(1)
Programming Features
98(1)
Internet
98(1)
ActiveX Controls
98(1)
Project Features
98(1)
Optimizations
98(1)
Database Support
99(1)
What's Included in the Visual C++ Enterprise Edition
99(1)
Programming with Managed Extensions for C++
99(28)
When to Use Managed Extensions for C++
100(1)
Introduction to Managed Extension for C++
101(1)
Managed Types
101(2)
Garbage-Collected Classes
103(1)
Destroying a Garbage-Collected Class
103(1)
Value Classes
104(1)
Value Classes and Boxing
105(2)
Managed Interfaces
107(1)
Implementation of Ambiguous Base Interface Methods
108(1)
Default Implementation of a Method
108(1)
Managed Arrays
109(1)
Automatic Array Initialization
110(1)
Multidimensional Arrays
110(1)
Array Covariance
111(1)
Delegates in Managed Extensions for C++
112(1)
Single-Cast Delegates
112(1)
Multicast Delegates
112(2)
Properties of Managed Objects
114(1)
Property Types in Managed Extensions
115(1)
Scalar Properties
115(1)
Indexed Properties
115(2)
Adding Support for Managed Extensions for C++ to an Existing Application
117(1)
Modifying the Existing Project Settings
117(1)
Employing New Managed Extensions Functionality in Existing Applications
117(1)
Handling Exceptions Using Managed Extensions for C++
118(1)
Basic Concepts in Using Managed Extentions
119(1)
Throwing Exception Using Managed Extentions
119(1)
Try/Catch Blocks Using Managed Extensions
119(2)
Order of Unwinding for C++ Objects
121(1)
Catching Unmanaged C++ Types
121(1)
Managed Extensions and the_Finally Keyword
121(1)
C++ Exceptions Examples
122(5)
C#
127(12)
Introduction
127(1)
Comparison Between C++ and C#
128(1)
General Structure of a C# Program
128(4)
C# Version of Hello World
132(2)
Developing a Simple Windows Forms Control
134(5)
Class versus Component versus Control
134(5)
Appendix A APIs 139(4)
Appendix B Base Priority 143(4)
Appendix C Object Categories 147(2)
Appendix D Functions in Alphabetic Order (1939 APIs) 149(24)
Appendix E Win32 API Functions by Category (95) 173(86)
Appendix F Win32 Data Types 259(6)
Appendix G .NET Framework Namespaces 265(12)
Appendix H Attributes 277(32)
Appendix I Debugging Visual C++ 309(12)
Appendix J Event Handling in Visual C++ 321(12)
Appendix K Managed Extensions for C++ Reference 333(2)
Appendix L /CLR (Common Language Runtime Compilation) 335(4)
Appendix M C# Compiler Options 339(6)
Appendix N C# Keywords 345(4)
Appendix O C# Libraries Tutorial 349(8)
About the Author 357(2)
About UCI 359(2)
Index 361

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.