| |
| |
Preface | |
| |
| |
| |
Writing ASP Components | |
| |
| |
The Role ASP Components Play | |
| |
| |
Why Use ASP Components? | |
| |
| |
COM+ Services and ASP Components | |
| |
| |
Accessing Data with ASP Components | |
| |
| |
Windows 2000 Technologies Accessible from ASP Components | |
| |
| |
A Rose by Any Other Name: Programming Language Choice | |
| |
| |
What About ASP.NET? | |
| |
| |
| |
Setting Up the ASP Development Environment | |
| |
| |
Configuring the IIS Environment | |
| |
| |
Remote Administration of IIS | |
| |
| |
Using ADSI to Administer IIS Programmatically | |
| |
| |
IIS Admin Object Overview | |
| |
| |
The IIS Base Admin Objects | |
| |
| |
| |
ASP Components and COM | |
| |
| |
Overview of COM for ASP Component Developers | |
| |
| |
How COM Is Implemented | |
| |
| |
Notable COM Interfaces | |
| |
| |
COM Datatypes | |
| |
| |
| |
ASP Components, Threads, and Contexts | |
| |
| |
What Are Threads? | |
| |
| |
Threads and Apartments | |
| |
| |
The Threading Models | |
| |
| |
What Are COM+ Contexts? | |
| |
| |
| |
COM+ Services and ASP Components and Applications | |
| |
| |
Developing Component-Based Systems | |
| |
| |
The COM+ Interfaces | |
| |
| |
Porting MTS Packages to COM+ Applications | |
| |
| |
Activating COM+ Applications | |
| |
| |
COM+ Services | |
| |
| |
| |
ASP Interaction: Scripting and ASP Components | |
| |
| |
Scripting Language Support Within ASP | |
| |
| |
Instantiating Components | |
| |
| |
COM+ Datatypes and Script/Component Interaction | |
| |
| |
Passing Arrays as Parameters | |
| |
| |
Error Handling Between Component and Script | |
| |
| |
| |
Creating a Simple Visual Basic ASP Component | |
| |
| |
Creating an In-Process or Out-Of-Process Component | |
| |
| |
Component Instancing | |
| |
| |
Component Execution and Threads | |
| |
| |
Creating an ASP Project | |
| |
| |
Creating Component Methods | |
| |
| |
Generating, Registering, Installing, and Testing the Component | |
| |
| |
Adding Support for COM+ Services | |
| |
| |
Converting MTS Components for Use with COM+ | |
| |
| |
Accessing the ASP Built-in Objects | |
| |
| |
Error Handling | |
| |
| |
Debugging | |
| |
| |
Performance Issues | |
| |
| |
| |
Creating ASP/ADO Components | |
| |
| |
Accessing ADO from a VB Component | |
| |
| |
Creating a Simple ADO Component | |
| |
| |
The ADO Model | |
| |
| |
File and Directory Access with ADO Streams and the Record Object | |
| |
| |
Persisting Data | |
| |
| |
| |
Creating an ASP Middle Tier with ADO | |
| |
| |
How Separate Should the Layers Be? | |
| |
| |
Creating ADO Data Wrappers | |
| |
| |
Defining Business Objects | |
| |
| |
Other Data Integrity Issues | |
| |
| |
| |
Server-Side XML Through VB ASP Components | |
| |
| |
XML Basics | |
| |
| |
Formatting XML | |
| |
| |
Working with XML in ASP Applications | |
| |
| |
XML and ADO: Saving Recordsets as XML | |
| |
| |
| |
Take a Message: Accessing CDO from ASP Components | |
| |
| |
A Brief Overview of CDO | |
| |
| |
The CDO Object Model | |
| |
| |
Send This URL to a Friend | |
| |
| |
Working with the Message Body | |
| |
| |
Retrieving and Reading Messages | |
| |
| |
| |
Working with Active Directory from ASP Applications | |
| |
| |
A Brief Overview of Active Directory in Windows 2000 | |
| |
| |
Setting Up an Isolated Active Directory Environment | |
| |
| |
A Refresher on ADSI | |
| |
| |
Binding to Active Directory Objects | |
| |
| |
Using the Active Directory Services Viewer | |
| |
| |
Manipulating Containers | |
| |
| |
Searching Active Directory with ADO | |
| |
| |
ASP Example: Add and Manage Users Through the Web | |
| |
| |
| |
Working with MSMQ Components | |
| |
| |
MSMQ/ASP Basics | |
| |
| |
Working with Queues | |
| |
| |
Working with MSMQ Messages | |
| |
| |
Using Transactions | |
| |
| |
Journaling | |
| |
| |
A Brief Word on Message Security | |
| |
| |
| |
Creating C++ ASP Components | |
| |
| |
ATL or MFC | |
| |
| |
Using ATL AppWizard to Generate the Basic ASP Component Project | |
| |
| |
Adding an ATL Object | |
| |
| |
Code Changes Based on Adding a New Object | |
| |
| |
Adding Methods to the Interface | |
| |
| |
Adding Support for COM+ Services | |
| |
| |
Converting MTS Components for Use with COM+ | |
| |
| |
Accessing the ASP Built-in Objects | |
| |
| |
Error Handling | |
| |
| |
| |
Adding Data Access to C++ Components with ADO | |
| |
| |
ADO Access in Visual C++ | |
| |
| |
The ADO Object Model | |
| |
| |
The Connection Object | |
| |
| |
The Recordset Object | |
| |
| |
The IADORecordBinding Interface | |
| |
| |
The Command Object | |
| |
| |
Stream and Record Objects | |
| |
| |
| |
The CDO Interfaces from C++ Components | |
| |
| |
Accessing CDO Interfaces in C++ | |
| |
| |
Creating and Sending a Message | |
| |
| |
Retrieving and Reading Messages | |
| |
| |
| |
Accessing Active Directory from C++ Components | |
| |
| |
Binding to Active Directory Objects | |
| |
| |
ADSI Helper Functions | |
| |
| |
Filtering Collections | |
| |
| |
Creating and Removing Active Directory Objects Using ADSI | |
| |
| |
Searching Active Directory with IDirectorySearch | |
| |
| |
| |
Accessing MSMQ from C++ ASP Components | |
| |
| |
Adding Support for MSMQ to the C++ Project | |
| |
| |
Working with Queues | |
| |
| |
Searching for a Specific Queue | |
| |
| |
Working with MSMQ Messages | |
| |
| |
Using Transactions | |
| |
| |
| |
Persistence with ASP Components Using ATL and MFC | |
| |
| |
Combining MFC and ATL | |
| |
| |
File Access from ASP Components | |
| |
| |
Creating a Serializable Class | |
| |
| |
Persistence Through Object Serialization | |
| |
| |
| |
ASP Components Created with Java | |
| |
| |
Creating Java Components | |
| |
| |
Invoking a COM Object in a Java Component | |
| |
| |
Working with COM+ Services | |
| |
| |
The ASP Built-in Object and Helper Interfaces | |
| |
| |
Accessing ADO from Java Components | |
| |
| |
| |
Creating ASP Components with Delphi | |
| |
| |
Using the COM Wizards to Create ASP Components | |
| |
| |
Manually Adding Support for COM+/ASP | |
| |
| |
Working with the ASP Objects | |
| |
| |
Working with ADO | |
| |
| |
Working with Windows 2000 Functionality: CDO | |
| |
| |
| |
Perl-Based Components Using ActiveState's PDK | |
| |
| |
Setting Up PDK | |
| |
| |
Building a Basic Perl Component | |
| |
| |
Accessing the ASP Built-in Objects | |
| |
| |
Working with Data | |
| |
| |
Working with the Win2K Environment | |
| |
| |
| |
Creating Scripting Language Components | |
| |
| |
The Windows Script Components Architecture | |
| |
| |
Elements of a WSC File | |
| |
| |
Script Components and ADO | |
| |
| |
The WSC Wizard | |
| |
| |
Creating Script Components with JScript | |
| |
| |
Accessing Windows 2000 Functionality | |
| |
| |
| |
ASP Built-in Object Quick Reference | |
| |
| |
| |
The Weaver Database | |
| |
| |
Index | |