search for books and compare prices
Tables of Contents for Beginning Visual Basic 6 Application Development
Chapter/Section Title
Page #
Page Count
Introduction
1
1
Who Should Read this Book
2
1
How to Get the Most from this Book
2
1
What's Covered in this Book
2
1
Conventions Used
3
1
Customer Support
4
1
Source Code
4
1
Errata
4
1
P2P.WROX.COM
5
2
Visual Basic Application Development
7
18
Application Development
8
2
Enterprise Applications
8
1
Basic concepts
8
1
Scalability, Reliability, and Availability
9
1
Distributed Applications
10
3
Client/Server Architecture
10
1
The Fat and Thin Client Models
11
1
3-Tier and n-Tie Architecture
11
1
Benefits of n-Tier Development
12
1
The Software Development Process
13
2
Business Requirements and Analysis
14
1
Modeling the Software
14
1
Distributed Application Development using Microsoft Products
15
3
Windows DNA
16
1
Microsoft Transaction Server (MTS)
17
1
Internet Information Server (IIS)
17
1
Active Server Pages (ASP)
17
1
Component Object Model (COM)
17
1
Microsoft Message Queue Server (MSMQ)
17
1
Universal Data Access (UDA)
18
1
SQL Server
18
1
COM+
18
1
The WROBA Case Study
18
3
Software Requirements
21
2
Operating System Requirements
21
1
Visual Basic Versions
21
1
ActiveX Data Objects Code Libraries
21
1
MTS and COM+
22
1
SQL Server
22
1
Summary
23
2
The Software Development Process
25
14
The Waterfall Method
26
3
Iterative Development Methodologies
29
7
The Microsoft Solutions Framework
30
2
Applying the MSF to Application Development
32
1
The Rational Unified Process
33
1
RUP Workflows
34
1
Applying the RUP to Application Development
35
1
RUP and the WROBA Case Study
36
1
Summary
36
3
Introduction to Visual Basic Objects
39
52
What are Objects?
40
5
Objects have Properties
40
1
Objects have Methods
40
1
Objects have Events
41
1
Objects are Encapsulated
41
1
Objects have State
41
1
Objects have Scope
42
2
Objects are Instantiated
44
1
Objects have a Lifetime
44
1
Creating Classes in Visual Basic
45
12
Class Properties
47
2
Passing Parameters ByVal versus ByRef
49
1
Property Set
50
1
Add Properties Dialogue
51
2
User-Defined Methods
53
1
Using Properties and Methods
54
1
Initialize and Terminate Events
54
2
Recap
56
1
Creating and Using Objects in an Application
57
11
Declaring an Object Variable
57
1
Creating an Instance of an Object
58
1
Early Binding versus Late Binding
59
1
Properties and Methods
59
1
Release Memory
60
3
Enumerated Properties
63
3
User-Defined Events
66
2
The Class Builder Utility
68
7
Object Browser
75
3
Optimization
78
4
Object References
78
1
Object Binding
79
1
Variants
79
1
Accessing Object Properties
80
1
Using With
80
1
Using Loops
81
1
Testing
82
6
Breakpoints
83
3
Watches
86
1
Immediate Window
87
1
Using Message Boxes
88
1
Summary
88
3
Component Development
91
48
COM Components
92
8
Specifications
92
1
Services
92
1
Advantages of COM
93
1
COM Interfaces
94
1
Implementing COM Interfaces in Visual Basic
95
5
ActiveX Controls
100
1
In-process Servers
101
1
Out-of-process Servers
101
1
Creating an ActiveX DLL
101
13
Project Properties
106
1
Threading
106
3
Unattended Execution
109
1
Version Compatibility
109
4
Instancing
113
1
Creating Instances of ActiveX DLLs
114
6
Calling our ActiveX DLL from a Client Application
114
2
The Use of ActiveX Servers in WROBA
116
1
Calling an ActiveX Server from Another ActiveX Server
116
1
Error Handling in an ActiveX Server
117
2
Creating Different Objects from Within the Same ActiveX DLL
119
1
Summary
120
1
Registering COM Components
120
12
Run the Component
121
1
Regsvr32.exe
121
1
The Package and Deployment Wizard
122
6
The Visual Component Manager
128
3
Retrieving Components
131
1
DCOM -- Distributed Component Object Model
132
4
DCOM Application Design
133
3
Summary
136
3
Microsoft Transaction Server
139
56
What is a Transaction?
140
1
The ACID Test
140
1
Atomicity
140
1
Consistency
140
1
Isolation
141
1
Durability
141
1
MTS: An Overview
141
3
Transactional Components
142
1
Object Management
142
1
Configurable Run-Time
143
1
Interception
143
1
Exploring MTS
144
6
MTS Packages
145
3
Roles
148
1
Monitoring Transactions
149
1
COM+
150
4
One Minor Annoyance in COM+
153
1
Creating Transactional Components in VB
154
6
The Logger Component
154
1
Properties and Methods of the Logger Component
155
1
Creating the VB Project
155
2
Transaction Modes
157
1
Requires a Transaction (Requires Transaction)
157
1
Requires a New Transaction (RequiresNewTransaction)
157
1
Supports Transactions (Uses Transactions)
157
1
Does not Support Transactions (No Transactions)
157
1
How Transaction Modes Work
157
1
Creating Instances of MTS Components
158
1
Tying Transaction Objects Together
158
2
MTS Objects
160
7
The Context Object
161
1
Transaction Voting
162
1
New to COM+: ContextInfo
163
1
The SecurityProperty Object
163
1
The ObjectControl Interface
164
1
Activate
164
1
Deactivate
164
1
CanBePooled
164
1
The AppServer Object
164
1
GetObjectContext
165
1
SafeRef
165
1
New to COM+: IContextState
166
1
Implementing CLogger
167
12
Transactional Objects and State
179
10
Checking the Object's State
179
2
SetComplete, SetAbort, and Object Lifetimes
181
1
Why Does MTS Do This?
182
1
Maintaining State
182
1
Separating Transactional and Non-Transactional Aspects
182
7
Deploying MTS and COM+ Components
189
4
Exporting MTS Packages and COM+ Applications
189
4
Summary
193
2
Beginning WROBA
195
40
The Requirements for the WROBA Case Study
196
1
Business Requirements
196
5
Determining Business Goals
196
2
The Importance of Good Communication
198
1
Identifying Tasks
198
1
Information Sources
198
1
Existing System
198
1
Business Community
199
2
WROBA Application Deliverables
201
23
Milestone 1 -- Vision Statement Draft
202
1
Milestone 2 -- Design Goals Draft
202
1
Milestone 3 -- Use Case Diagrams
203
1
The Customer
204
1
The Administrator
204
1
Milestone 4 -- Use Case Scenarios
205
1
Creating Scenarios
205
2
WROBA Scenarios
207
17
Technology Requirements
224
8
Performance
224
5
Maintainability
229
1
Extensibility
230
1
Scalability
230
1
Availability
231
1
Security
232
1
Summary
232
3
Unified Modeling Language
235
38
What is UML
236
1
Introducing the UML Diagrams
237
17
Use Case Diagrams
237
1
Creating a Use Case Diagram
238
1
Use Case Relationships
238
1
Use Case Diagram Examples
239
2
Class Diagrams
241
1
Creating Class Diagrams
241
3
Class Diagram Example
244
1
Interaction Diagrams
245
1
Sequence Diagrams
245
1
Creating Sequence Diagrams
245
2
Sequence Diagram Example
247
1
Collaboration Diagrams
247
1
Collaboration Diagram Example
248
1
Object Diagrams
248
1
Component Diagrams
249
1
Deployment Diagrams
249
1
Statechart Diagrams
250
1
Activity Diagrams
251
1
Package Diagrams
252
1
UML Summary
252
2
Visual Modeler
254
17
Creating Deployment Diagrams with Visual Modeler
266
2
Creating Component Diagrams with Visual Modeler
268
3
Summary
271
2
Designing a Solution
273
36
Component Design
273
16
Component Performance in Distributed Applications
275
2
Component Relationships
277
1
Ownership
277
2
Containment
279
1
Generalization
280
4
Usage
284
1
Component Interaction Rules
285
1
Own/Contain Rules
285
1
Generalize Rule
286
2
Component Design Summary
288
1
Modeling Software Solutions
289
2
Logical Design
289
1
The UML Model Phases
290
1
Designing the UML Diagrams
291
13
The Domain Model Diagrams
291
1
The Transfer Funds Scenario
292
1
Looking for Nouns and Verbs -- the Class Diagram
293
4
Assessing the Class Diagram
297
2
Further Work
299
1
The Sequence Diagram -- An Event Timeline
299
3
The Design Model Diagrams
302
1
The Collaboration Diagram -- Objects Working Together
302
1
The Statechart Diagram -- External Events in Action
303
1
The Activity Diagram -- Internal Events in Action
303
1
What Next -- The Implementation Model Phase
304
1
Summary
305
4
Database I -- Design and Creation
309
34
Logical Data Model
310
13
Entities
311
1
Entity Attributes
312
2
Entity Identifiers
314
1
Entity Relationships
314
2
Normalization
316
1
Normalization in the WROBA Logical Design
317
2
Second Normal Form
319
1
Third Normal Form
319
1
Denormalization
320
1
The Logical Design for the WROBA Application
321
2
Physical Data Design
323
5
Defining the Database Schema
323
1
Data Types
324
2
Unique ID Creation Issues
326
1
NULLS and Default Values
326
1
Column Constraints
327
1
Referential Integrity (RI)
327
1
Indexes
328
1
Implementing the Database for WROBA
328
12
Adding Tables to the Database
330
3
Creating Relationships between Tables
333
3
Completing the Physical Design
336
4
Summary
340
3
Database II -- SQL and Stored Procedures
343
42
Using SQL
344
1
Data Definition Language -- DDL
344
10
Creating Tables
345
4
SQL Scripts
349
2
Altering Tables
351
2
Deleting Tables
353
1
Data Manipulation Language -- DML
354
16
Adding Data
354
5
Modifying Existing Data
359
1
Deleting Data
360
1
Retrieving Data
361
3
Composing Queries
364
3
Joins
367
2
Aliases
369
1
Stored Procedures
370
12
Why Use Stored Procedures?
371
7
Adding the Remaining Stored Procedures to WROBA
378
1
Type 1 -- Procedures for Deleting Rows
379
1
Type 2 -- Procedures for Inserting Rows
379
1
Type 3 -- Procedures for Selecting Rows
380
1
Type 4 -- Procedures for Verifying Rows
381
1
Summary
382
3
Data Access and ADO
385
28
Data Access
386
10
The ADO Object Model
387
1
The Connection Object
388
1
The Command Object
389
3
The Recordset Object
392
1
Cursors
392
3
Events
395
1
Using ADO in Visual Basic
396
14
Summary
410
3
Data Services Tier
413
60
The Stucture of WROBA
414
3
Data Services Tier -- The Bank_DB component
417
53
Coding the Data Tier
421
1
The MHelpers Module
421
1
The MContext Code Module
422
6
The DBHelper Class Module
428
5
The Account Class Module
433
4
The Admin Class Module
437
11
The Bank Class Module
448
9
BankLocator Class Module
457
2
The Payees Class Module
459
5
Creating the ActiveX DLL
464
1
An Aside -- Logging Errors
465
5
Summary
470
3
Business Services Tier
473
32
Business Services Tier Code Categories
474
1
Business Services Tier Implementation
475
3
Coding the Business Tier
478
25
The Bank Class Module
478
9
The BankLocator Class Module
487
1
The Payees Class Module
488
4
The Transfer Class Module
492
4
The Admin Class Module
496
6
Creating the ActiveX DLL
502
1
Summary
503
2
User Tier I -- Customer Services
505
78
GUI Design and Implementation
506
8
GUI Design Principles
509
1
GUI Implementation Principles
510
1
Form Validation
511
3
WROBA GUI and Customer Services
514
66
WROBA GUI Implementation
515
2
Shared Modules in the WROBA User Tier
517
1
The MMain Code Module
517
1
The CPayeeInformation Class Module
518
3
The SharedProperties Class Module
521
2
Logging into the WROBA Application
523
6
Status Forms
529
2
WROBA Customer Main Menu
531
11
WROBA Customer Information Menu
542
1
Displaying Account Details
543
8
Adding a Payee
551
6
Editing Payee Information
557
7
Changing Passwords
564
2
WROBA Customer Transaction Menu
566
1
Paying Bills
567
8
Transferring Funds
575
5
Summary
580
3
User Tier II -- Administration Services
583
44
WROBA Administration
584
3
WROBA Administration Code in Other Tiers
585
1
Administration Logic Implementation
585
2
WROBA Administrator Main Menu
587
6
File Menu
588
1
Help Menu
588
5
WROBA Administrator Cards Menu
593
17
Adding a New WROBA Card
594
6
Deleting a WROBA Card
600
4
Unlocking a WROBA Card
604
3
Locking a WROBA Card
607
3
WROBA Administrator Banks Menu
610
11
Adding a New Bank
611
3
Edit Bank
614
7
Security
621
2
WROBA Security
622
1
Distributed Application Security
622
1
Additional Security
623
1
Reviewing the WROBA Implementation Process
623
2
Summary
625
2
Testing, Deployment, and Maintenance
627
38
Testing
628
5
Stabilizing Interim Milestones
628
1
Integration Testing
629
1
System Testing
629
1
Creating Test Cases
629
3
Severity and Priority Level Classifications
632
1
Severity Level Definitions
632
1
Priority Level Definitions
632
1
Reaching the Release Candidate Milestone
632
1
Post-Mortem Review
633
1
Deployment
633
12
What is Deployment?
633
1
Using the Package and Deployment Wizard
634
1
Creating a Project Package
634
8
Deploying an Existing Package
642
3
Deploying MTS and COM+ Components
645
7
Automating the Import of MTS/COM+ Packages
647
1
Importing MTS Components
647
3
Importing COM+ Applications
650
1
The Windows Installer
651
1
Maintenance
652
10
Deployed Application Maintenance
652
1
Changing Component Interfaces
653
7
Version Numbering
660
1
Visual SourceSafe
661
1
Summary
662
3
Web-Enabling the WROBA Application
665
40
Web Development
666
10
The Web Server
667
1
Web Server Software
667
1
Getting Connected
667
1
``Hello, world!'' in HTML
668
2
A Basic HTML Page
670
2
Some Other HTML Tags
672
4
Dynamic Web Sites
676
7
Active Server Pages
677
2
The Internals of ASP
679
2
The Built-in Objects
681
2
Web-Enabling WROBA
683
22
Authentication
684
6
Presenting Accounts and Creating a Menu
690
4
Viewing the Account History
694
1
Transferring Funds
695
7
Other Functionality
702
1
Summary
702
3
Inter-Application Communication Using XML
705
34
What is XML?
706
3
Applying XML
707
2
XML Structure
709
5
Elements and Attributes
710
2
DTD and Schemas
712
2
XML Structure -- Summary
714
1
Using XML in Visual Basic Applications
714
8
XML and 3-Tier Architectures
715
2
The Document Object Model
717
1
The MSXML Component
718
1
Objects, Methods, and Properties in the MSXML Component
719
3
Using XML with the WROBA Application
722
13
The Network Application
722
13
Further Considerations
735
1
Transferring XML to Other Applications
735
1
Other XML Standards
735
1
BizTalk
735
1
Summary
736
3
Appendix A: The WROBA Application
739
36
Creating the BigBank Database -- SQL Scripts
739
16
Running the SQL Scripts
740
1
Building the Database -- Schema.sql
740
5
Resetting the Database to its Initial State
745
6
Populating the Tables -- FillTables.sql
751
3
Error Logging -- Logger.sql
754
1
Stored Procedures
755
12
Stored Procedures to Delete Rows
756
1
Stored Procedures to Insert Rows into Tables
757
2
Stored Procedures to Select Rows
759
3
Stored Procedures to Update Tables
762
4
Stored Procedures to Verify Information
766
1
The Visual Basic Project
767
8
Bank_DB
768
1
Bank_Bus
769
1
Bank_UI
770
5
Appendix B: Installing and Configuring MTS
775
8
Appendix C: ADO 2.1 and 2.5 Object Model
783
20
Objects
783
20
Command Object
784
1
Methods
784
1
Properties
784
1
Connection Object
785
1
Methods
785
1
Properties
786
1
Events
787
1
Error Object
787
1
Properties
787
1
Errors Collection
788
1
Methods
788
1
Properties
788
1
Field Object
788
1
Methods
788
1
Properties
789
1
Field Collection
789
1
Methods
789
1
Properties
790
1
Property Object
790
1
Properties
790
1
Properties Collection
790
1
Methods
790
1
Properties
791
1
Parameter
791
1
Methods
791
1
Properties
791
1
Parameters Collection
792
1
Methods
792
1
Properties
792
1
Record
792
1
Methods
792
1
Properties
793
1
Recordset
793
1
Methods
793
2
Properties
795
2
Events
797
1
Stream
798
1
Methods
798
1
Properties
798
1
Method Calls -- Syntax
799
1
Command
799
1
Connection
799
1
Errors
799
1
Field
800
1
Fields
800
1
Parameter
800
1
Parameters
800
1
Properties
800
1
Record
800
1
Recordset
801
1
Stream
801
2
Appendix D: ASP 2.0 and ASP 3.0 Object Model
803
8
Objects
803
8
The Application Object
804
1
Collections
804
1
Methods
804
1
Events
804
1
The ASPError Object
804
1
Properties
805
1
The Request Object
805
1
Collections
805
1
Properties
806
1
Methods
806
1
The Response Object
806
1
Collections
806
1
Properties
806
1
Methods
807
1
The Server Object
808
1
Properties
808
1
Methods
808
1
The Session Object
809
1
Collections
809
1
Properties
809
1
Methods
809
1
Events
809
1
The ObjectContext Object
810
1
Methods
810
1
Events
810
1
Index
811