You are previewing Borland® Delphi™ 6 Developer's Guide.
O'Reilly logo
Borland® Delphi™ 6 Developer's Guide

Book Description

Borland(r) Delphi 6 Developer's Guide is a new edition of the #1 best-selling Delphi book by authors Steve Teixeira and Xavier Pacheco. Steve and Xavier are of the winners of the Delphi Informant Reader's Choice Award for both Delphi 4 Developer's Guide and Delphi 5 Developer's Guide.

Borland(r) Delphi 6 Developer's Guide is completely updated for Delphi 6 and includes in-depth coverage on Borland's new CLX architecture, DBExpress Applications, SOAP, CORBA, WebSnap and BizSnap features. It continues as a complete reference and authoritative guide to the newest version of Delphi.

Table of Contents

  1. Copyright
  2. Foreword
  3. About the Lead Authors
  4. About the Contributing Authors
  5. Acknowledgments
  6. Tell Us What You Think!
  7. Introduction
  8. Development Essentials
    1. Programming in Delphi
      1. The Delphi Product Family
      2. Delphi: What and Why
      3. A Little History
      4. The Delphi IDE
      5. A Tour of Your Project's Source
      6. Tour of a Small Application
      7. What's So Great About Events, Anyway?
      8. Turbo Prototyping
      9. Extensible Components and Environment
      10. The Top 10 IDE Features You Must Know and Love
      11. Summary
    2. The Object Pascal Language
      1. Comments
      2. Extended Procedure and Function Features
      3. Variables
      4. Constants
      5. Operators
      6. Object Pascal Types
      7. User-Defined Types
      8. Typecasting and Type Conversion
      9. String Resources
      10. Testing Conditions
      11. Loops
      12. Procedures and Functions
      13. Scope
      14. Units
      15. Packages
      16. Object-Oriented Programming
      17. Using Delphi Objects
      18. Structured Exception Handling
      19. Runtime Type Information
      20. Summary
    3. Adventures in Messaging
      1. What Is a Message?
      2. Types of Messages
      3. How the Windows Message System Works
      4. Delphi's Message System
      5. Handling Messages
      6. Sending Your Own Messages
      7. Nonstandard Messages
      8. Anatomy of a Message System: VCL
      9. The Relationship Between Messages and Events
      10. Summary
  9. Advanced Techniques
    1. Writing Portable Code
      1. General Compatibility
      2. Delphi-Kylix Compatibility
      3. New Delphi 6 Features
      4. Migrating from Delphi 5
      5. Migrating from Delphi 4
      6. Migrating from Delphi 3
      7. Migrating from Delphi 2
      8. Migrating from Delphi 1
      9. Summary
    2. Multithreaded Techniques
      1. Threads Explained
      2. The TThread Object
      3. Managing Multiple Threads
      4. A Sample Multithreaded Application
      5. Multithreading BDE Access
      6. Multithreaded Graphics
      7. Fibers
      8. Summary
    3. Dynamic Link Libraries
      1. What Exactly Is a DLL?
      2. Static Linking Versus Dynamic Linking
      3. Why Use DLLs?
      4. Creating and Using DLLs
      5. Displaying Modeless Forms from DLLs
      6. Using DLLs in Your Delphi Applications
      7. Loading DLLs Explicitly
      8. The Dynamically Linked Library Entry/Exit Function
      9. Exceptions in DLLs
      10. Callback Functions
      11. Calling Callback Functions from Your DLLs
      12. Sharing DLL Data Across Different Processes
      13. Exporting Objects from DLLs
      14. Summary
  10. Database Development
    1. Delphi Database Architecture
      1. Types of Databases
      2. Database Architecture
      3. Connecting to Database Servers
      4. Working with Datasets
      5. Working with Fields
      6. Summary
    2. Database Development with dbExpress
      1. Using dbExpress
      2. dbExpress Components
      3. Designing Editable dbExpress Applications
      4. Deploying dbExpress Applications
      5. Summary
    3. Database Development with dbGo for ADO
      1. Introduction to dbGo
      2. Overview of Microsoft's Universal Data Access Strategy
      3. Overview of OLE DB, ADO, and ODBC
      4. Using dbGo for ADO
      5. dbGo for ADO Components
      6. Transaction Processing
      7. Summary
  11. Component-Based Development
    1. Component Architecture: VCL and CLX
      1. More on the New CLX
      2. What Is a Component?
      3. Component Hierarchy
      4. The Component Structure
      5. The Visual Component Hierarchy
      6. Runtime Type Information
      7. Summary
    2. VCL Component Building
      1. Component Building Basics
      2. Sample Components
      3. TddgButtonEdit—Container Components
      4. Summary
    3. Advanced VCL Component Building
      1. Pseudo-Visual Components
      2. Animated Components
      3. Writing Property Editors
      4. Component Editors
      5. Streaming Nonpublished Component Data
      6. Property Categories
      7. Lists of Components: TCollection and TCollectionItem
      8. Summary
    4. CLX Component Development
      1. What Is CLX?
      2. The CLX Architecture
      3. Porting Issues
      4. Sample Components
      5. CLX Design Editors
      6. Packages
      7. Summary
    5. Packages to the Max
      1. Why Use Packages?
      2. Why Not Use Packages?
      3. Types of Packages
      4. Package Files
      5. Using Runtime Packages
      6. Installing Packages into the Delphi IDE
      7. Creating Packages
      8. Package Versioning
      9. Package Compiler Directives
      10. Package Naming Conventions
      11. Extensible Applications Using Runtime (Add-In) Packages
      12. Exporting Functions from Packages
      13. Obtaining Information About a Package
      14. Summary
    6. COM Development
      1. COM Basics
      2. COM Meets Object Pascal
      3. COM Objects and Class Factories
      4. Distributed COM
      5. Automation
      6. Advanced Automation Techniques
      7. TOleContainer
      8. Summary
    7. Windows Shell Programming
      1. A Tray-Notification Icon Component
      2. Application Desktop Toolbars
      3. Shell Links
      4. Shell Extensions
      5. Summary
    8. Using the Open Tools API
      1. Open Tools Interfaces
      2. Using the Open Tools API
      3. Form Wizards
      4. Summary
  12. Enterprise Development
    1. Transactional Development with COM+/MTS
      1. What Is COM+?
      2. Why COM?
      3. Services
      4. Runtime
      5. Creating COM+ Applications
      6. COM+ in Delphi
      7. Summary
    2. CORBA Development
      1. CORBA Features
      2. CORBA Architecture
      3. Interface Definition Language (IDL)
      4. The Bank Example
      5. Complex Data Types
      6. Delphi, CORBA, and Enterprise Java Beans (EJBs)
      7. CORBA and Web Services
      8. Summary
    3. BizSnap Development: Writing SOAP-Based Web Services
      1. What Are Web Services?
      2. What Is SOAP?
      3. Writing a Web Service
      4. Invoking a Web Service from a Client
      5. Summary
    4. DataSnap Development
      1. Mechanics of Creating a Multitier Application
      2. Benefits of the Multitier Architecture
      3. Typical DataSnap Architecture
      4. Using DataSnap to Create an Application
      5. More Options to Make Your Application Robust
      6. Real-World Examples
      7. More Client Dataset Features
      8. Classic Mistakes
      9. Deploying DataSnap Applications
      10. Summary
  13. Internet Development
    1. ASP Development
      1. Understanding Active Server Objects
      2. The Active Server Object Wizard
      3. ASP Session, Server, and Application Objects
      4. Active Server Objects and Databases
      5. Active Server Objects and NetCLX Support
      6. Debugging Active Server Objects
      7. Summary
    2. Building WebSnap Applications
      1. WebSnap Features
      2. Building a WebSnap Application
      3. Advanced Topics
      4. Summary
    3. Wireless Development
      1. Evolution of Development—How Did We Get Here?
      2. Mobile Wireless Devices
      3. Radio Technologies
      4. Server-Based Wireless Data Technologies
      5. Wireless User Experience
      6. Summary
  14. Index