Description This course will teach Microsoft Visual Basic programmers how to build n-tier client/server solutions for Windows 2000 by using Windows DNA 2000 and COM+ technologies.. Audi
Trang 1Course Number: 1907A
Delivery Guide
Building Distributed Applications
Part Number: X05-42128
Trang 2Information in this document is subject to change without notice The names of companies, products, people, characters, and/or data mentioned herein are fictitious and are in no way intended
to represent any real individual, company, product, or event, unless otherwise noted Complying with all applicable copyright laws is the responsibility of the user No part of this document may
be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Microsoft Corporation If, however, your only means of access is electronic, permission to print one copy is hereby granted
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this document Except as expressly provided in any written license agreement from Microsoft, the furnishing of this document does not give you any license to these patents, trademarks, copyrights, or other intellectual property
2000 Microsoft Corporation All rights reserved
Microsoft, BackOffice, MS-DOS, Windows, Windows NT, Windows 2000 Server, Microsoft Visual Basic, Active Directory, ActiveX, PowerPoint, Visual Basic, Visual Studio, and Windows Media are either registered trademarks or trademarks of Microsoft Corporation in the U.S.A and/or other countries
The names of companies, products, people, characters, and/or data mentioned herein are fictitious and are in no way intended to represent any real individual, company, product, or event, unless otherwise noted
Other product and company names mentioned herein may be the trademarks of their respective owners
Program Manager: Pete Harris
Content Lead: Kathy Narvaez
Instructional Design Contributors: Graeme Malcolm (Content Master Ltd.), Andy Longshaw
(Content Master Ltd.), Alex Mackman (Content Master Ltd.),
Instructional SDE: Kamran Iqbal
Technical Reviewer: Rod Wittmier (WNT, Inc.)
Media Production: Scott Serna (Creative Assets)
Media Management: David Mahlmann
Editing Manager: Jennifer Linn
Editor: Todd Duft (The Write Stuff), Reid Bannecker (S&T OnSite),
Susan Filkins (S&T Onsite)
Production Manager: Miracle Davis
Production Coordinator: Linda Lu Cannon (The Write Stuff)
Build Manager: Julie Challenger
Build Coordinator:Jenny Boe
Test Lead: Eric Meyers
Test Team: Brian Urakawa, Ross Mortimer
Manufacturing Manager: John Williams
Group Product Manager: Steve Elston
Course Number: 1907A
Part Number: X05-42128
Trang 3Contents
Introduction
Course Materials 2
Prerequisites 3
Course Outline 4
Microsoft Certified Professional Program 6
Facilities 8
Module 1: Developing Enterprise Solutions for Windows 2000 Overview 1
Introduction to Enterprise Development 2
Introduction to the Windows 2000 Platform 11
Tools and Technologies 21
Overview of Lab Solution 30
Lab 1: Reviewing the Lab Solution 35
Best Practices 39
Review 41
Module 2: Designing and Modeling Overview 1
Introduction to Analysis and Design 2
Creating a Conceptual Design 8
Lab 2.1: Reviewing the Requirements Document 17
Creating a Logical Design 19
Creating a Physical Design 38
Lab 2.2: Using the Visual Modeler 50
Best Practices 55
Review 57
Module 3: Introduction to COM+ Overview 1
From COM to COM+ 2
COM+ Architecture 16
Administering COM+ Applications 23
Lab 3.1 Building a COM+ Application 40
Debugging a COM+ Component 48
Deploying a COM+ Application 57
Lab 3.2: Debugging COM+ Components 72
Trang 4iv Building Distributed Applications for Microsoft® Windows® 2000 with Visual Basic®
Best Practices 75
Review 77
Module 4: Managing Transactions and State Overview 1
COM+ Context 2
The IObjectContext Interface 6
Lab 4.1 Using Context Object Services 15
Just In Time Activation 18
Managing Transactions 25
Programming COM+ Transactions 38
Lab 4.2 Managing Transactions 48
Managing State 51
Using the Shared Property Manager 59
Lab 4.3 Storing State in the Middle Tier 69
Best Practices 74
Review 76
Module 5: Queued Components and Events Overview 1
Introduction to Queued Components 2
Working with Queued Components 16
Lab 5.1 Creating and Using Queued Components 35
Handling Events 39
Publisher and Subscriber Architecture 45
Working with Events 53
Lab 5.2: Creating and Using Event Classes 71
Combining Queued Components and Events 77
Lab 5.3: (Optional) Combining Queued Components and Events 83
Best Practices 90
Review 93
Module 6: Integrating with Active Directory Overview 1
Overview of Directory Services 2
Using ADSI to Access Active Directory 19
Lab 6.1: Using ADSI 31
Using ADO to Query Active Directory Data 35
Lab 6.2: Using ADO 45
Best Practices 48
Review 49
Module 7: Universal Data Access with ADO 2.5 Overview 1
Using ADO 2.5 2
Retrieving Data from a Database 10
Lab 7.1: Using ADO Commands Efficiently 16
Accessing Web Data 31
Lab 7.2: Accessing Data From a Web Site 44
Best Practices 47
Review 49
Trang 5Module 8: Making Applications Secure
Overview 1
Overview of Windows 2000 Security 2
Declarative Security 24
Lab 8.1: Implementing Declarative Security 40
Programmatic Security 44
Lab 8.2: Implementing Programmatic Security 52
Setting the Identity of a Server Application 55
Lab 8.3: Assigning a COM+ Application Identity 65
Best Practices 68
Review 70
Module 9: Using XML to Exchange Data Overview 1
Introduction to XML 2
Validating XML Documents 20
Using the Document Object Model 31
Applying XML in N-Tier Applications 53
Lab 9: Exchanging Data Using XML 60
Best Practices 67
Review 69
Appendix A: Understanding COM Fundamentals Object Interaction 8
Threading Requirements 11
Distributed COM 14
Registering COM Components 16
Appendix B: Working with COM Interfaces Concepts and Terminology 2
Using Class Modules to Create Interfaces 14
Advantages of User-Defined Interfaces 21
Working with Multiple Interfaces 26
Interface Definition Language 30
Designing Interfaces for Distribution 40
Trang 6THIS PAGE INTENTIONALLY LEFT BLANK
Trang 7About This Course
This section provides you with a brief description of the course, audience, suggested prerequisites, and course objectives
Description
This course will teach Microsoft Visual Basic programmers how to build n-tier client/server solutions for Windows 2000 by using Windows DNA 2000 and COM+ technologies
Audience
This course is intended for Visual Basic developers who build distributed applications for Windows 2000
Student Prerequisites
This course requires that students meet the following prerequisites:
! Build and debug a simple Visual Basic application
! Invoke and control an Automation server, such as Microsoft Excel or Microsoft Word, from a Visual Basic application
! Create code components by using Visual Basic and invoke them from a client application
! Use ActiveX® Data Objects (ADO) to open a database, to work with recordsets, and to call stored procedures
Completing the following course satisfies the prerequisite skills previously listed:
! Mastering Visual Basic 6.0 Development Completing the following course is recommended before attending this course:
! Mastering Distributed Application Development Using Visual Studio® 6.0
Trang 8viii Building Distributed Applications for Microsoft® Windows® 2000 with Visual Basic®
Course Objectives
At the end of this course, the student will be able to:
! Describe Microsoft’s enterprise strategy and the Windows 2000 DNA platform
! Analyze and design solutions by using the Unified Modeling Language and design patterns
! Build COM+ DLLs and implement them in a multiuser environment
! Address application infrastructure issues associated with building server-side COM objects that are used by many clients that use COM+
! Participate in transactions, use shared state, and perform asynchronous operations by using COM+ services
! Perform universal data access from a middle-tier object by using ADO 2.5
! Integrate solutions with the Windows 2000 Active Directory™
! Secure an n-tier application
! Exchange data between applications by using Extensible Markup Language (XML) and Extensible Stylesheet Language (XSL)
Trang 9Course Timing
The following schedule is an estimate of the course timing Your timing may vary
Day 1 Start End Module
9:00 9:30 Introduction 9:30 10:45 Module 1: Developing Enterprise Solutions for Windows 2000 10:45 11:00 Break
11:00 11:30 Lab 1: Reviewing the Lab Solution 11:30 1:00 Module 2: Designing and Modeling 1:00 2:00 Lunch
2:00 2:30 Lab 2.1: Reviewing the Requirements Document 2:30 3:00 Module 2: Designing and Modeling (continued)
3:00 3:30 Lab 2.2: Using the Visual Modeler 3:30 3:45 Break
3:45 5:00 Module 3: Introduction to COM+
Day 2 Start End Module
9:00 9:10 Day 1 Review 9:10 10:20 Lab 3:1: Building a COM+ Application 10:20 10:35 Break
10:35 11:30 Module 3: Introduction to COM+ (continued)
11:30 11:45 Break 11:45 12:00 Module 3: Introduction to COM+ (continued)
12:00 12:30 Lab 3.2: Debugging COM+ Components 12:30 1:30 Lunch
1:30 2:45 Module 4: Managing Transactions and State 2:45 3:00 Break
3:00 3:30 Lab 4.1: Using Context Object Services 3:30 4:30 Module 4: Managing Transactions and State (continued)
4:30 5:00 Lab 4.2: Using Context to Manage Transactions
Trang 10x Building Distributed Applications for Microsoft® Windows® 2000 with Visual Basic®
Day 3 Start End Module
9:00 9:30 Lab 4.3: Storing State in the Middle Tier 9:30 10:25 Module 5: Queued Components and Events 10:25 10:40 Break
10:40 11:10 Module 5: Queued Components and Events (continued)
11:10 11:55 Lab 5.1: Creating and Using Queued Components 11:55 12:50 Module 5: Queued Components and Events (continued)
12:50 1:50 Lunch 1:50 2:30 Lab 5.2: Creating and Using Event Classes 2:30 3:00 Module 5: Queued Components and Events (continued)
3:00 3:30 Lab 5.3: (Optional) Combining Queued Components and Events 3:30 3:45 Break
3:45 4:45 Module 6: Integrating with Active Directory
Day 4 Start End Module
9:00 9:30 Lab 6.1: Using ADSI 9:30 10:00 Module 6: Integrating with Active Diretory (continued)
10:00 10:30 Lab 6.2: Using ADO 10:30 10:45 Break
10:45 12:15 Module 7: Universal Data Access with ADO 2.5 12:15 12:45 Lab 7.1: Using ADO Commands Efficiently 12:45 1:45 Lunch
1:45 2:30 Module 7: Universal Data Access with ADO 2.5 (continued)
2:30 2:45 Break 2:45 3:15 Lab 7.2: Accessing Data From a Web Site 3:15 4:30 Module 8: Making Applications Secure 4:30 5:00 Lab 8.1: Implementing Declarative Security
Day 5 Start End Module
9:00 9:30 Module 8: Making Application Secures (continued)
9:30 10:00 Lab 8.2: Implementing Programmatic Security 10:00 10:15 Break
10:15 10:30 Module 8: Making Applications Secure (continued)
10:30 10:45 Lab 8.3: Assigning a COM+ Application Identity 10:45 12:00 Module 9: Using XML to Exchange Data 12:00 1:00 Lunch
1:00 2:00 Lab 9: Exchanging Data Using XML 1:45 2:30 Course wrap up and review
Trang 11Trainer Materials Compact Disc Contents
The Trainer Materials compact disc contains the following files and folders:
! Default.htm This file opens the Trainer Materials Web page
! Readme.txt This file contains a description of the compact disc contents and
setup instructions in ASCII format (non-Microsoft Word document)
! 1907A_sg doc This file is the Classroom Setup Guide It contains a
description of classroom requirements, classroom configuration, and classroom setup instructions
! Errorlog This folder contains a template that is used to record any errors
and corrections that you find in the course
! Fonts This folder contains fonts that are required to view the Microsoft
PowerPoint® presentation and Web-based materials
! Mplayer This folder contains files that are required to install Microsoft
Windows Media™ Player
! Powerpnt This folder contains the PowerPoint slides that are used in this
course
! Pptview This folder contains the PowerPoint Viewer, which is used to
display the PowerPoint slides
! CD_Student This folder contains the Web page that provides students with
links to resources pertaining to this course, including additional reading, review and lab answers, lab files, multimedia presentations, and course-related Web sites
! Tprep This folder contains the Trainer Preparation Presentation, a narrated
slide show that explains the instructional strategy for the course and presentation tips and caveats To open the presentation, on the Trainer
Materials Web page, click Trainer Preparation Presentation
Trang 12xii Building Distributed Applications for Microsoft® Windows® 2000 with Visual Basic®
Student Materials Compact Disc Contents
The Student Materials compact disc contains the following files and folders:
! Default.htm This file opens the Student Materials Web page It provides
students with resources pertaining to this course, including additional reading, review and lab answers, lab files, multimedia presentations, and course-related Web sites
! Readme.txt This file contains a description of the compact disc contents and
setup instructions in ASCII format (non-Microsoft Word document)
! AddRead This folder contains additional reading pertaining to this course
If there are no additional reading files, this folder does not appear
! Answers This folder contains answers to the module review questions and
hands-on labs
! Appendix This folder contains appendix files for this course If there are no
appendix files, this folder does not appear
! Democode This folder contains demonstration code If there is no
demonstration code, the Democode folder does not appear
! Fonts This folder contains fonts that are required to view the PowerPoint
presentation and Web-based materials
! Ie5 This folder contains Microsoft Internet Explorer 5
! Labs This folder contains files that are used in the hands-on labs These
files may be used to prepare the student computers for the hands-on labs
! Media This folder contains files that are used in multimedia presentations
for this course If this course does not include any multimedia presentations, this folder does not appear
! Mplayer This folder contains files that are required to install Microsoft
Windows Media Player
! Pptview This folder contains the PowerPoint Viewer, which is used to
display the PowerPoint presentations that accompany the additional reading
If there are no PowerPoint presentations, this folder does not appear
! Practices This folder contains files that are used in the hands-on practices
If there are no practices, the Practices folder does not appear
! Webfiles This folder contains the files that are required to view the course
Web page To open the Web page, open Windows Explorer, and in the root directory of the compact disc, double-click Default.htm
! Wordview This folder contains the Word Viewer that is used to view any
Word document (.doc) files that are included on the compact disc If no Word documents are included, this folder does not appear