DELPHI6 developer Guide
DelphiTutorial Series of books(003)《DELPHI6Developer Guide Organize netizens (state)Email:Shuaihj@163.com
:
Part1
Part2
Part3
Part4
Original Title: Delphi 6 developer's Guide
Original Publishing House: SAMs
Press: Machinery Industry Press
Author: (US) Steve Teixeira, Xavier Pacheco
Book Series name: Borland/Inprise Core Technology series
Translator: Long Jinsong Wang Yu Xie Shangshu
Mounting Date:
Publication date: 2003-1-1
Page number: Version: 1-3 ISBN: 7111109686
Frame mounting: with a CD drive: 16
Introduction
As a new version of Delphi, Delphi 6 not only helps programmers efficiently develop Windows applications, but also simplifies the synthesis of Web Services, intermediate software, and background database systems, it is the only tool that fully supports all mainstream industry-standard development tools and enhances e-commerce capabilities. This book is rich and clear, and describes the essence of Delphi 6 in a simple language. It has great reference value for Delphi or programmers who are about to transplant it to Delphi. At the end of this book, I also introduced the application of Delphi in the Internet. Today, mobile commerce network programming is becoming increasingly popular and will undoubtedly become the focus of attention of programmers.
Directory
Part 1 Basic Knowledge
Chapter 2 Introduction to Delphi programming
1.1 Introduction to the Delphi Product Family
1.2 introduction to Delphi
L.2.1 features of the Visual Development Environment
1.2.2 compiler speed and code execution efficiency after compilation
1.2.3 confrontation between functions and complexity of programming languages
1.2.4 database structure flexibility and scalability
1.2.5 enhancement of the implementation mechanism to the design and use mode
1.3 Historical Review
1.3.1 Delphi 1
1.3.2 Delphi 2
1.3.3 Delphi 3
1.3.4 Delphi 4
1.3.5 Delphi 5
1.3.6 Delphi 6
1.4 Delphi IDE environment
1.4.1 Main Window
1. 4. 2 Main Menu
1.4.3 Delphi Toolbar
. 4 component option Board
1.4.5 Form Designer
1.4.6 object observer
1.4.7 code editor
. 8 code browser
Object hierarchy chart
1.5 overview of project source files
1.6 Application Introduction
1.7 advantages of Event Processing Mechanism
1.8 Rapid Prototyping
1.9 scalable components and environments
1.10 10 ide functions that must be mastered
Conclusion 1.11
Chapter 2 Object Pascal Language
2.1 annotations
2.2 expansion process and function features
2.2.1 parentheses in function calls
2.2.2 heavy load
2.2.3 default parameter value
2.3 Variables
2.4 Constants
2.5 Operator
2.5.1 value assignment operator
2.5.2 comparison Operators
2.5.3 logical operators
2.5.4 mathematical operators
2.5.5 bitwise operators
2.5.6 increment/decrement operations
2.5.7 "calculation-value assignment" Operator
2.6 Object Pascal type
2.6.1 type comparison
2.6.2 character type
2.6.3 string
2.6.4 Variant Type
2.6.5 currency type
2.7 user-defined type
2.7.1 Array
2.7.2 Dynamic Array
2.7.3 records
2.7.4 set
2.7.5 objects
2.7.6 pointer
2.7.7 type alias
2.8 type conversion and forced type conversion
2.9 string Resources
2.10 condition judgment statement
2.10.1 if statement
2.10.2 case statement
2.11 cycles
2.11.1 For Loop
2.11.2 WHILE LOOP
2.11.3 repeat... Until Loop
2.11.4 break () Process
2.11.5 continue () Process
2.12 process and Function
2.13 Scope
Unit 2.14
2.14.1 uses clause
2.14.2 unit circular reference
2.15 packages
2.15.1 use the Delphi package
2.15.2 package syntax format
2.16 Object-Oriented Programming
2.17 use Delphi objects
2.17.1 declaration and instantiation
2.17.2 Structure
2.17.3 Method
2.17.4 Method Type
2.17.5 attributes
2.17.6 visible area specifier
2.17.7 youyuan class
2.17.8 object secret
2.17.9 tobject: ancestor of all objects
2.17.10 Interface
2.18 structured exception handling
2.18.1 exceptions
2.18.2 abnormal Execution Process
2.18.3 reactivate an exception
2.19 runtime information
Conclusion 2.20
Chapter 4 understanding Windows messages
3.1 What is a message
3.2 Message Type
3.3 how Windows messaging system works
3.4 Delphi message system
3.5 Message Processing
3.5.1 Message Processing: Not without conventions
3.5.2 assign values to the result Message Value
3.5.3 tapplication-type onmessage event
3.6 send your own message.
3.6.1 perform () method
3.6.2 sendmessage () and postmessage () API functions
3.7 non-standard messages
3.7.1 notification message
3.7.2 internal VCL messages
3.7.3 user-defined message
3.8 analyze the message system of VCL
3.9 relationship between messages and events
Conclusion 3.10
Part 2 Advanced Technology
Chapter 2 code portability
4.1 compatibility
4.1.1 version Determination
4.1.2 units, components and packages
4.1.3 about ide
4.2 compatibility between Delphi and kylix
4.2.1 features not available in Linux
4.2.2 compiler and Language Features
4.2.3 platform features
4.3 New Features of Delphi 6
4.3.1 variant Variables
4.3.2 Enumeration type
4.3.3 $ if indicator
4.3.4 potential binary DFM incompatibility
4.4 upgrade from Delphi 5
4.4.1 writable type Constants
4.4.2 Cardinal unary round operation
4.5 upgrade from Delphi 4
4.5.1 RTL Problems
4.5.2 VCL Problems
4.5.3 Internet development topic
4.5.4 database Problems
4.6 upgrade from Delphi 3
4.6.1 unsigned 32-bit integer
4.6.2 64-bit integer
4.6.3 real type
4.7 upgrade from Delphi 2
4.7.1 Boolean Type Change
4.7.2 resourcestring
4.7.3 BTL change
4.7.4 tcustomform
4.7.5 getchildren ()
4.7.6 automated Server
4.8 upgrade from delphil
Conclusion 4.9
Chapter 1 multithreading technology
5.1 elaborate thread
5.1.1 multitasking type
5.1.2 Use multithreading in Delphi applications
5.1.3 abuse of threads
5.2 tthread object
5.2.1 tthread Basics
5.2.2 thread instance
5.2.3 thread termination
5.2.4 synchronization with VCL
5.2.5 application demo
5.2.6 priority and Scheduling
5.2.7 suspension and restoration of threads
5.2.8 timing in the thread
5.3 multi-thread management
5.3.1 Local thread storage
5.3.2 Thread Synchronization
5.4 multi-threaded application example
5.4.1 user interface
. 2 search thread
. 3. Adjust the priority
5.5 multi-threaded access to BDE
5.6 multi-threaded graphic operations
5.7 Optical Fiber
Conclusion 5.8
Chapter 4 Dynamic Link Library
6.1 what is DLL
6.2 Static and Dynamic Links
6.3 why use DLL
6.3.1 multiple applications share code, resources, and data
6.3.2 hide Implementation Details
6.4 create and use DLL
6.4.1 beautiful score (simple DLL)
. 2 use the DLL display mode form
6.5 display modeless forms through DLL
6.6 use DLL in Delphi applications
6.7 explicitly Call DLL
6.8 entry/exit functions of the Dynamic Link Library
6.8.1 standard functions for process and thread initialization and Termination
6.8.2 DLL entry/exit example
6.9 exceptions in DLL
6.9.1 capture exceptions in 16-bit delphi
6.9.2 exception and safecall indicator
6.10 callback function
6.10.1 use the callback function
6.10.2 draw owner-draw list box
6.11 call the callback function through DLL
6.12 share DLL data in different processes
6.12.1 create a DLL for shared memory
6.12.2 DLL with shared memory
6.13 output objects from DLL
Conclusion 6.14
Part 3 Database Development
Chapter 2 Delphi database architecture
7.1 Database Type
7.2 database architecture
7.3 connect to the Database Server
7.3.1 database connection Overview
7.3.2 create a database connection
7.4 operation Dataset
7.4.1 enable and disable a dataset
7.4.2 navigation Dataset
7.4. 3 manage Datasets
7.4.4 dataset status
7.5 operation field
7.5.1 Field Value
7.5.2 Field Data Type
7.5.3 field name and number
7.5.4 manage field data
7.5.5 operate BLOB fields
7.5.6 filter data
7.5.7 search a dataset
7.5.8 keyword search
7.5.9 use the data module
7.5.10 search, range, and filter demonstration
7.5.11 bookmarks
Conclusion 7.6
Chapter 4 Use dbexpress for database development
8.1 use dbexpess
8.1.1 unidirectional and read-only Datasets
8.1.2 comparison between dbexpress and BDE
8.1.3 dbexpress supports cross-platform development
8.2 dbexpress Components
8.2.1 tsqlconnection
8.2.2 tsqldataset
8.2.3 display query results
8.2.4 backward compatible Components
8.2.5 tsqlmonitor
8.3 design editable dbexpress applications
8.4 deploy the dbexpress Application
Conclusion 8.5
Chapter 4 Use dbgo for ADO for database development
9.1 dbgo Introduction
9.2 overview of mcrosoft's Unified Data Access Policy
9.3 overview of ole db, ADO, and ODBC
9.4 use dbgo for ado
9.4.1 create an ole db provider for ODBC
9.4.2 Access Database
9.5 dbgo for ADO Components
9.5.1 tadoconnection
9.5.2 establish a database connection
9.5.3 logon avoidance/substitution prompt
9.5.4 tadocommand
9.5.5 TADODataSet
9.5.6 Data Set components similar to BDE
9.6 Transaction Processing
Conclusion 9.7
Part 4 Component-Based Development
Chapter 4 Component System: VCL and clx
10.1 about the new clx
10.2 what is a component
10.3 Component Hierarchy
10.3.1 non-visual components
10.3.2 visual components
10.4 Component Structure
10.4.1 attributes
10.4.2 attribute type
10.4.3 Method
10. Event 4.4
10.4.5 stream attributes
10.4.6 ownership
10.4.7 parent-child relationship
10.5 inheritance relationship of visual components
10.5.1 tpersistent class
10.5.2 tpersistent Method
10.5.3 tcomponent class
10.5.4 tcontrol class
10.5.5 twincontrol and twidgetcontrol
10.5.6 tgraphiccontrol class
10.5.7 tcustomcontrol class
10.5.8 other classes
10.6 runtime type information
10.6.1 typinfo. Pas unit: the operator that defines the running type information.
10.6.2 obtain type information
10.6.3 obtain the type information of the method pointer
10.6.4 obtain the type information of the ordered type
10.6.5 assign values to attributes through rtti
Conclusion 10.7
Chapter 4 VCL Components
11.1 Component Design Basics
11.1.1 determine whether components should be written
11.1.2 steps for compiling Components
11.1.3 determine the ancestor class
11.1.4 create a component unit
11.1.5 create attributes
11.1.6 create an event
11.1.7 create a custom Method
11.1.8 constructor and destructor
11.1.9 register Components
11.1.10 test component
11.1.11 component icons
11.2 component example
11.2.1 extended Win32 component Package Performance
11.2.2 tddgrunbutton: Create attributes
11.3 tddgbuttonedit: A container component
11.3.1 design decisions
11.3. 2 display attributes
11.3.3 event exposure
11.3.4 tddgdigitalclock: component creation event
11.3.5 Add the form to the component panel
Conclusion 11.4
Chapter 2 advanced VCL Component Construction Technology
12.1 pseudo-visual components
12.1.1 extended prompt Function
12.1.2 create a thintwindow derived class
12.1.3 elliptical window
12.1.4 activate the thintwindow derived window
12. 1.5 Use tddghintwindow
12.2 dynamic components
12.2.1 rolling subtitle component
12.2.2 compile Components
12.2.3 draw on Bitmap outside the screen
12.2.4 plotting component
12.2.5 make the component "dynamic"
12.2.6 test the tddgmarquee component
12.3 compile the Attribute Editor
12.3.1 create an inherited property editor object
12.3.2 edit attributes as text
12.3.3 register a new property Editor
12.3.4 use the dialog box to edit attributes as a whole
12.4 component Editor
12.4.1 tcomponenteditor
12.4.2 a simple component
12. 4. 3. A simple component Editor
12.4.4 register the component Editor
12.5 perform stream operations on non-public component data
12.5.1 define attributes
12.5.2 defineproperty () Example
12.5.3 tddgwavefile: definebinaryproperty () usage example
12.6 attribute category
12.6.1 category
12.6.2 custom category
12.7 component list: tcollection and tcollectionitem
12.7.1 define the tcollectionitem class: trunbtnitem
12.7.2 define the tcollection class: trunbuttons
12.7.3 implement tddglaunchpad, trun-btnitem, and trunbuttons
12.7.4 use the dialog box property editor to edit the tcollectionitem component list
Conclusion 12.8
Chapter 2 clx component development
13.1 what is clx
13.2 clx Architecture
13.3 transplantation Problems
13.4 component example
13.4.1 tddgspinner component
13.4.2 enhancement tools during design
13.4.3 component reference and image list
13.4.4 clx data Awareness Component
13.5 clx design editor
13.6 packages
13.6.1 naming conventions
13.6.2 runtime package
13.6.3 design period package
13.6.4 Unit Registration
13.6.5 component bitmap
Conclusion 13.7
Chapter 4 give full play to the role of Package
14.1 why use the package
14.1.1 simplified code
14.1.2 release a smaller application-application Segmentation
14.1.3 component container
14.2 why not use a package
14.3 package type
14.4 package files
14.5 use the runtime package
14.6 install the package in Delphi ide
14.7 create a package
14.7.1 package Editor
14.7.2 package design plan
Version 14.8
14.9 package compiler indicator
14.10 package naming conventions
14.11 use a runtime (plug-in) package for scalable applications
14.12 export functions from the package
14.13 obtain package information
Conclusion 14.14
Chapter 2 com Development
15.1 com Basics
15.1.1 com2 Component Object Model
15.1.2 comparison between COM, ActiveX, and Ole
15.1.3 terms
15.1.4 advantages of ActiveX
15.1.5 comparison between Ole and Ole 2
15.1.6 Structured Storage
15.1.7 Unified Data Transmission
15.1.8 thread mode
15.1.9 com 10
15.2 COM and Object Pascal
15.2.1 Interface
15.2.2 Interface
15.2.3 type of hresult returned
15.3 COM Object and class factory
15.3.1 tcomobject and tcomobject-factory
15.3.2 in-process COM Server
15.3.3 create an in-Proc COM server instance
15.3.4 out-of-process COM Server
15.4 Aggregation
15.5 Distributed COM
15.6 Automation
15.6.1 idispatch
15.6.2 type information
15.6.3 comparison between later binding and earlier binding
15.6.4 Registration
15.6.5 create an Automation server
15.6.6 create an automation controller
15.7 Advanced Automation Technology
15.7.1 automation event
15.7.2 automation set
15.7.3 Type Library New Interface Type
15.7.4 binary data exchange
15.7.5 Background: Support for com Language
15.8 tolecontainer
15.8.1 a simple example Program
15.8.2 a complex example Program
15.9. 4 Summary
Chapter 2 Windows shell programming
16.1 Tray Icon Components
16.1.1 API
16.1.2 process messages
16.1.3 icons and prompts
16.1.4 click
16.1.5 hide an application
16.1.6 Tray Icon application example
16.2 application desktop Toolbar
16.2.1 API
16.2.2 tappbar: the form of AppBar
16.2.3 use tappbar
16.3 shell Link
16.3.1 get an ishelllink instance
16.3.2 use ishelllink
16.3.3 create a shell Link
16.3.4 obtain and set link information
16.3.5 sample program
16.4 shell Extension
16.4.1 COM object wizard
16.4.2 copy hook Processor
16.4.3 environment menu Processor
16.4.4 icon Processor
16.4.5 message prompting Processor
Conclusion 16.5
Chapter 4 use open tools api
17.1 open tools Interface
17.2 use open tools api
17.2.1 simple wizard
17.2.2 wizard
17.2.3 DDG search
17.3 Form Wizard
Conclusion 17.4
Part 5 Enterprise Development
Chapter 4 Use COM +/MTS to develop transaction programs
18.1 what is com 10
18.2 reasons for using COM
18.3 Service
18.3.1 transactions
18.3.2 Security
18.3.3 timely Activation
18.3.4 Queue Component
18.3.5 Object Buffer Pool
18.3.6 events
18.4 Runtime
18.4.1 register a database (regdb)
18.4.2 Configuration component
18. 4. 3. Running Environment (contexts)
18.4. 4 neutral thread
18.5 create ten com applications
18.5.1 target: Scale
18.5.2 execution environment
18.5.3 stateful and stateless)
18.5.4 lifecycle management
18.5.5 organization of ten com applications
Thoughts on transactions
18.5.7 Resources
18.6 com 10 in Delphi
18.6.1 com 10 wizard
18.6.2 com 10 framework
18.6.3 tic-tac-toe: a simple application
18.6.4 debug ten com applications
Conclusion 18.7
Chapter 4 Development of CORBA
19.1 features
19.2 CORBA architecture
19.2.1 osagent
19.2.2 Interface
19.3 Interface Definition Language
19.3.1 Basic Types
19.3.2 user-defined type
19.3.3 alias
19.3.4 Enumeration
19.3.5 Structure
19.3.6 Array
19.3.7 Sequence
19.3.8 method parameters
19.3.9 Module
19.4 bank Cases
19.5 complex data types
19.6 Delphi, CORBA, and Enterprise Java Beans (EJB)
19.6.1 speed-up of EJB for Delphi programmers
19.6.2 EJB is a special component
19.6.3 run EJB in the container
19. 6. 4 EJB has predefined APIs
19.6.5 home (local) interface and remote (remote) Interface
19.6.6 EJB type
19. 6.7 configure JBuilder 5 to develop EJB
19.6.8 create a simple "Hello 'World" EJB
19.7 CORBA and Web Services
19.7.1 create a Web Service
19.7.2 create a soap client application
Add the CORBA client code to the Web Service
Conclusion 19.8
Chapter 2 bizsnap development: Soap-based Web Services
20.1 Web Services
20.2 http: // service.ap-southeast-1.maxcompute.aliyun-inc.com
20.3 compile a Web Service
4.1.3.1 twebmodule
Lifecycle 3.2 defines a callable Interface
Ipv3.3 implements a callable Interface
Ipv3.4 test Web Service
20.4 call Web Service from the client
4.1.4.1 generate an input unit for a remote callable object
Using thttprio Components
Conclusion 20.5
Chapter 2 datasnap Development
21.1 mechanism for creating multi-tier applications
21.2 advantages of multi-layer architecture
21.2.1 centralized business logic
21.2.2 thin customer structure
21.2.3 Automatic Error mediation
21.2.4 briefcase Model
21.2.5 Fault Tolerance
21.2.6 Load Balancing
21.3 typical datasnap Structure
21.3.1 Server
21.3.2 Client
21.4 use datasnap to create an application
21.4.1 create a server
21.4.2 create a client
21.5 more measures to enhance Application robustness
21.5.1 client Optimization Technology
21.5.2 Application Server Technology
21.6 instance
21.7 more features of the client dataset component
21.8 typical errors
21.9 configure the datasnap Application
21.9.1 issuing licenses
21.9.2 DCOM Configuration
21.9.3 file configuration
21.9.4 Internet Configuration considerations (firewall)
Conclusion 21.10
Part 6 Internet Development
Chapter 2 ASP development
22.1 understand activity server objects
22.2 activity server object wizard
22.2.1 Type Library Editor
22.2.2 New Method
22.2.3 ASP response object
22.2.4 first run
22.2.5 ASP request object
22.2.6 re-compile the Active Server Object
22.2.7 run the Active Server Object again
22.3 ASP session, server, and application objects
22.4 activity server objects and databases
22.5 support for active server objects and netclx
22.6 debugging activity server objects
22.6.1 use MTS to debug Active Server objects
22.6.2 use Windows NT 4 for debugging
22.6.3 use Windows 2000 for debugging
Conclusion 22.7
Chapter 2 WebSnap Development
23.1 features of WebSnap
23.1.1 multiple webmodules
23.1.2 the server executes the script
23.1.3 tadapter component
23.1.4 multiple Scheduling Methods
23.1.5 page producer (page builder) Component
23.1.6 session management
23.1.7 LOGON SERVICE
23.1.8 User tracking
23.1.9 HTML Management
23.1.10 file upload service
23.2 WebSnap Development
23.2.1 Application Design
23.2.2 add functions for Applications
23.2.3 navigation menu bar
23.2.4 Logon
23.2.5 manage user preference data
23.2.6 store preference data between sessions
23.2.7 Image Processing
23.2.8 display data
23.2.9 convert an application to ISAPI DLL
23.3 advanced topics
23.3.1 locabfileservices (file location service)
23.3.2 File Upload
23.3.3 includes custom templates
23.3.4 customize components in tadapterpageproducer
Conclusion 23.4
Chapter 2 Wireless Development
24.1 Development Technology Development: review
24.1.1 before 1980s: the age of giants
24.1.2 late 1980s: desktop database applications
24.1.3 early 1990s: Client/Server
24.1.4 late 1990s: multi-layer structure and transaction processing based on Intemet
24.1.5 early 21st century: application infrastructure extended to the wireless mobile field
24.2 mobile wireless devices
24.1.3 early 1990s: Client/Server
24.1.4 late 1990s: multi-layer structure and transaction processing based on Intemet
24.1.5 early 21st century: application infrastructure extended to the wireless mobile field
24.2 mobile wireless devices
24.2.1 mobile phone
24.2.2 palmos Device
24.2.3 Pocket PC
24.2.4 rim blackberrv
24.3 radio technology
24.3.1 GSM, CDMA, and TDMA
24.3.2 cdpd
24.3.3 3G
24.3.4 GPRS
24.3.5 Bluetooth
24.3.6 802.11
24.4 server-based wireless data technology
24.4.1 SMS
24.4.2 WAP
24.4.3 1-Mode
24.4.4 PQA
24.5 Wireless User Experience
24.5.1 loop select Network and packet select Network
24.5.2 wireless is not web
24.5.3 importance of form factors
24.5.4 data input and navigation technologies
24.5.5 m-commerce
Conclusion 24.6