home *** CD-ROM | disk | FTP | other *** search
- Welcome to Delphi
- -----------------
-
- This README file contains important, last minute information
- about Delphi.
-
- Before you install Delphi, carefully read INSTALL.TXT.
-
-
-
- TABLE OF CONTENTS
- -----------------
- Minimum system requirements
- How to get help
- Installation
- Product overview
- Demonstration programs
- Release notes
-
-
- MINIMUM SYSTEM REQUIREMENTS
- ------------------------------
- Delphi requires Windows 3.1 or a 100% compatible operating
- system, an 80386 or newer processor (486 recommended), and 6Mb of
- system memory.
-
- A minimum installation requires approximately 30Mb of disk space.
-
- DCC.EXE, the DOS command-line compiler, requires at least 1Mb of
- extended memory.
-
- Delphi has been tested under Windows 3.1, Windows for Workgroups
- 3.11, Windows NT 3.5, OS/2 Warp, and Windows 95.
-
-
- HOW TO GET HELP
- ------------------
- If you have any problems with this product, please read this
- file, and the online help files, and first.
-
- If you still have a question and need assistance, help is
- available from the following sources:
-
- 1. You can use your modem or Internet connection to easily obtain
- assistance online. Borland maintains support forums on
- CompuServe. These forums put you in contact with thousands of
- other programmers using Borland products. You'll be able get
- your questions answered and share information and ideas with
- others.
-
- You can also download the latest technical information, sample
- code, utilities, patches, etc., from these online services as
- well as from Borland's Download Bulletin Board Service
- (DLBBS).
-
- Access Borland's online services in the following manner:
-
- CompuServe
- GO DELPHI
-
- World Wide Web
- The Delphi page (http://www.borland.com/TechInfo/Delphi)
- contains tips and techniques, the latest Delphi book list,
- links to other Delphi pages, newsgroups, and other
- references.
-
- Borland DLBBS in the USA
- You can reach the Borland DLBBS by dialing (408) 431-5096
- (up to 14,400 Baud, 8 data bits, No Parity, 1 Stop bit). No
- special setup is required.
-
-
-
- INSTALLATION
- ---------------
- Please refer to the file INSTALL.TXT on your CD in the
- \INSTALL\DISK1 directory or on DISK1 of your floppy disk set
- for complete installation instructions.
-
- To start the installation, run the SETUP.EXE program on your CD
- in the \INSTALL\DISK1 directory or on the floppy disk labeled
- DISK1.
-
-
- PRODUCT OVERVIEW
- -------------------
- Delphi's visual design environment lets you create sophisticated
- Windows applications faster than any other development tool.
- Because Delphi is built around an optimizing native-code
- compiler, Delphi applications are up to 10-20 times faster than
- interpreted code.
-
- Delphi integrates the Borland Database Engine, so you have
- instant support for dBase, Paradox, and ODBC local databases.
-
- Delphi includes the Local InterBase Server so you can create
- standalone client/server applications with a high-performance
- ANSI SQL-92 compatible database server.
-
- Delphi includes Borland's award-winning ReportSmith report
- writing tool, which allows programmers to prepare innovative
- reports using live data in all popular database formats.
-
- Delphi Client/Server includes all of Delphi plus high performance
- native drivers for Oracle, Sybase, Microsoft SQL Server, Informix
- and InterBase remote servers with unlimited application
- deployment. You also get team development support, ReportSmith
- SQL, a Visual Query Builder, source code to the Visual Component
- Library (VCL), and the Local InterBase Server Deployment Kit.
-
- Delphi includes an Open Tools API capability that allows
- you to extend the Delphi environment to include your own tools,
- experts, and so on. By using this API, you can seamlessly
- integrate these extensions into the Delphi environment. For
- details, refer to the file TOOLINTF.PAS located in the
- \DELPHI\DOC for Delphi or in the \DELPHI\SOURCE\VCL directory for
- Delphi Client/Server. Source code for an example expert is also
- located in \DELPHI\DEMOS\EXPERTS directory.
-
-
- DEMONSTRATION PROGRAMS
- -------------------------
-
- Here's an overview of the example programs, libraries and
- components located in the \DELPHI\DEMOS directory:
-
- \DELPHI\DEMOS
- \DB - Contains all database sample projects. Data used by these
- examples is in the \DELPHI\DEMOS\DATA directory. The
- SETUP program creates a BDE alias called DBDEMOS which
- can be used to access this data. Refer to INSTALL.TXT for
- additional information. (DBG=Database Application
- Developer's Guide)
-
- \ANIMALS - Uses TBlobField type to access dBASE data.
- \BDEDLL - DLL that uses database components and a
- companion application.
- \CALCFLDS - Simple use of calculated fields with linked
- master/detail tables.
- \DATALIST - Dynamically retrieves lists of aliases, tables,
- fields and indexes.
- \DBAWARE1 - Simple use of TDBEdit, TDBListBox, TDBComboBox
- and TDBGrid.
- \DBAWARE2 - Simple use of TDBLookupCombo and TDBLookupList.
- \FISHFACT - Uses TBlobField and TMemoField to access
- Paradox data.
- \FORMAT - Simple use of FormatDateTime and FormatFloat.
- \INSQUERY - Simple use TQuery to perform SQL insert.
- \LINKQRY - Master/detail form using TQuery components.
- \MASTAPP - Extensive example featured in Chapter 2, 4, and
- Appendix D of the Database Application
- Developer's Guide. Consists of 12 forms and comes
- with sample data for Paradox and Local InterBase
- Server. Uses ReportSmith to print invoice,
- inventory and customer data; includes online help
- that explains how the application is implemented;
- contains a sophisticated invoice form, and is
- fully scalable between desktop and Client/Server
- data. Refer to the comments at the beginning of
- MAIN.PAS for more complete information.
- \QJOIN - Simple SQL join.
- \RANGE - Simple use of TTable range support.
- \SEARCH - Simple use of TTable.SetKey.
- \STOCKS - Stock portfolio example that uses complex SQL
- joins, ReportSmith reports and the TChartFX
- sample VBX control.
- \TOOLS - Two applications: an MDI database browser and a
- SQL Activity Monitor.
- \TWOFORMS - Simple example that shows how multiple forms
- can share a single dataset (DBG, Ch. 3).
-
- \DOC - Contains examples from the printed documentation
- (UG=User's Guide, CWG=Component Writer's Guide).
-
- \ABOUTBOX - AboutBox dialog (UG Ch. 2).
- \CALENDAR - TSampleCalendar component (CWG Ch. 11).
- \CBROWSE - Uses TSampleCalendar (CWG Ch. 11).
- \DATAEDIT - Read/write data aware TCalendar (CWG Ch. 12).
- \DBCAL - Read-only data aware TCalendar (CWG Ch. 12).
- \FILMANEX - File manager (UG, Ch. 13).
- \FORMCOMP - Encapsulates a form as a component (CWG, Ch. 13).
- \FORMDLL - Encapsulates a form as a DLL (CWG, Ch. 13).
- \GRAPHEX - Simple paint program (UG, Ch. 12).
- \OLE2 - MDI OLE2 container (UG, Ch. 15).
- \SHAPE - TSampleShape component (CWG, Ch. 10).
- \TEXTEDIT - Simple MDI text editor (UG, Ch. 10).
- \WRAPMEMO - TWrapMemo component (CWG, Ch. 9).
-
- \CALLDLL - A simple password form in a DLL and a test
- program that calls it.
- \DATA - Contains all data used by sample programs. Note
- that the MASTAPP example defines referential
- integrity rules on the CUSTOMER, ORDERS, ITEMS
- and PARTS tables. These rules, which require that
- the master record be posted before a detail
- record may be posted, are defined in both the
- Paradox tables (.DB) the Local InterBase Server
- database (MASTSQL.GDB) versions of this data. If
- you write database applications that insert data
- into these tables and your insertions violate the
- referential integrity rules that are defined, a
- "Master Record Missing" exception will be raised.
- \DDEDEMO - Uses DDE to create a group in Program Manager.
- \DRAGDROP - Two projects that demonstrate drag and drop.
- \DYNAINST - Dynamically creates components at run-time.
- \EXPERTS - Source for the application and dialog experts
- (access via the Project and Form expert gallery
- pages).
- \FILECTRL - Uses the file and directory controls.
- \GENERIC - Object Pascal version of the "generic" SDK app.
- \IMAGVIEW - Views and browses images (BMPs, WMFs, etc.).
- \OLE2 - Links and embeds OLE2 objects.
- \OWNERLST - Uses an owner-draw listbox.
- \PAGECTRL - Integrates the TNotebook and TTabSet components.
- \PROPEDIT - Component with accompanying property editor.
- \SCRIBBLE - A simple drawing program in only 3 lines of code.
- \TEXTDEMO - Uses TFindDialog and TReplaceDialog components.
- \USERHELP - Shows how to implement and register online help
- for a custom component.
-
-
-
-
- DATABASE NOTES
- --------------
- Closing ReportSmith Run-time from a Delphi application - When
- ReportSmith run-time is loaded by a TReport component,
- TReport.AutoUnload is False and your application is terminating,
- you'll need to call TReport.CloseReport explicitly to unload
- ReportSmith:
-
- procedure TForm1.FormClose(Sender: TObject;
- var Action: TCloseAction);
- begin
- Report1.CloseReport(False);
- end;
-
- TTable.CreateTable - The TTable.CreateTable function does not
- support the Paradox formatted memo field type.
-
- Queries with BCD Parameters - (Paradox tables only) Substitution
- parameters that are of type BCD should be bound using floating
- point data types (not BCD).
-
- Using Database components in a DLL - Certain restrictions apply
- when a DLL uses database components. In particular, such a DLL
- can only be used by one client at a time. It is the
- responsibility of the DLL to prevent simultaneous access by
- multiple applications. In addition, a DLL that uses database
- components should provide startup and cleanup routines to ensure
- safe initialization and shutdown. Refer to the
- \DELPHI\DEMOS\DB\BDEDLL directory for an example of a DLL that
- uses database components and a companion application.
-
- SQL Database floating point precision - Servers that support a
- single-precision floating point type typically offer only seven
- significant digits. If no TField.DisplayFormat is specified and
- the precision of the underlying field is less than 15 digits, you
- should set the TField.Precision property accordingly.
-
- Additional information about updateable SQL queries:
- o The online help on Syntax Requirements for a Live Result Set
- should state that ORDER BY clauses are allowed in updateable
- queries.
- o The online help on Syntax Requirements for a Live Result Set
- incorrectly states that a unique index must exist on Sybase
- servers. Only the original column values implied by the
- setting of TQuery.UpdateMode must be unique.
- o All Oracle column names are case sensitive (as if they were
- quoted explicitly). Oracle table names are never quoted (and
- thus must be uppercase).
- o Quoted columns must be prefixed with a table alias.
- o Tables owned by another user must be qualified by owner name.
- Use quotes around the entire qualified name, for example
- "OWNER.TABLE".
-
- Dataset synchronization on SQL Databases - Whenever supported by
- the server, Delphi supports inserts against updateable queries,
- views, non-indexed Sybase and InterBase tables. However, a newly
- inserted record is not present in the current cache (dataset)
- when it is no longer the current record. The table must be
- reopened or the query executed again to refresh the cache and
- retrieve the inserted record.
-
- Informix SQL Link - Due to Informix 4.x restrictions, only one
- application instance can be connected to one server at a time. To
- help circumvent this problem, we recommend that you set the
- TDatabase.KeepConnections property to False when accessing
- Informix databases. Close all active connections at design time
- before running the application. Informix 5.X does not have this
- limitation.
-
- The Borland Database Engine (BDE) looks for the IDAPI.CFG
- configuration file which contains driver and alias information
- used by all BDE client applications. The SETUP program creates
- and places a copy of IDAPI.CFG in the \IDAPI directory. We
- recommending backing up your IDAPI.CFG file periodically. You can
- also create a new one by copying from the IDAPI.CNF file in the
- \RUNIMAGE\IDAPI directory on your CD-ROM (or, if you're
- installing from floppy disks, from the indicated .PAK file listed
- in FILELIST.DOC ), for example:
-
- copy D:\RUNIMAGE\IDAPI\IDAPI.CNF C:\IDAPI\IDAPI.CFG
-
- Note that other .CNF files are provided as well and may be merged
- using the BDECFG.EXE utility's merge facility. Once you've
- created a new IDAPI.CFG file, you can use BDECFG.EXE to create
- aliases and drivers. For example, assuming you've installed
- Delphi on your C: drive, here's how to create the DBDEMOS alias
- that is normally created by the SETUP program:
-
- 1. Click on the Database Engine Configuration icon in the
- Delphi Program Manager group.
- 2. Select the Alias page and click the New Alias button.
- 3. Enter DBDEMOS and press the OK button.
- 4. Click on the path in the Parameters entry box and specify
- C:\DELPHI\DEMOS\DATA
- 5. Select File|Save
-
- Now this alias is available to Delphi's data access components
- (TTable, TQuery, etc.).
-
- Systems Notes
- -------------
- Video Drivers - Some older versions of the Dell/Tseng ET4000
- video driver, when operated in high-color modes, fail to properly
- paint the multiselect rectangle while dragging. In addition, some
- older ATI video drivers contain spurious INT 3 breakpoint
- instructions which interfere with Windows debugging. If you
- experience either of these problems, contact your vendor for an
- updated driver.
-
- Embedding or linking an Excel object - When embedding Excel in a
- TOleContainer component, a known problem in Excel reduces its
- scaling factor each time the object is activated.
-
- DPMI utilities and other operating systems - DCC.EXE, the DOS
- command-line compiler, and DLIB.EXE, the library utility for
- DELPHI.DSL, both use DPMI services provided by RTM.EXE. RTM.EXE
- requires at least 1Mb of extended memory. When running under
- Windows NT 3.5, add the following line to your
- \WINNT\SYSTEM32\CONFIG.NT file:
-
- ntcmdprompt
-
- When running DCC or DLIB in an OS/2 DOS session, set DPMI_DOS_API
- to Enabled.
-
- Cannot Optimize EXE errors - When the Optimize EXE for size and
- speed option is enabled on the Options|Project|Linker page, you
- may encounter a "disk full" error during compilation. If this
- error occurs and you have sufficient disk space, disable the
- Linker page option and use the command-line utility instead:
-
- \delphi\bin\w8loss project1.exe
-
- Program Reset - Windows support for debugging does not always
- make it possible for Delphi to shutdown a running application and
- recover all system resources that were allocated. When possible,
- terminate your running application normally instead of using
- Debug | Program Reset. This is especially important when an
- exception has occurred in your application. If you do use Program
- Reset, you may be bypassing some of your application's shutdown
- code. You may need to periodically exit and then restart Windows
- to recover resources which were allocated but not released.
-
- CANNOT CREATE PROCESS Error - There are two possible causes for
- this error.
-
- o Your application requires a DLL which cannot be located
-
- o Insufficient low DOS memory - Windows requires a minimum
- amount of conventional DOS memory in order to launch an
- application. If available conventional memory is insufficient
- when you try to run or debug an application, a CANNOT CREATE
- PROCESS error message will appear.
-
- Here's how you can increase the available DOS memory:
-
- o Exit all BDE client applications (e.g. Delphi), run the
- BDE Configuration utility (BDECFG.EXE), select the SYSTEM
- page and reduce or zero the "LOW MEMORY USAGE LIMIT"
- setting.
-
- o Modify your CONFIG.SYS and AUTOEXEC.BAT files to
- eliminate DOS TSRs or load them into "high memory".
-
- o Many Windows applications inadvertently use low memory.
- Closing other Windows applications will often free up a
- significant amount of low memory.
-
- o Some Windows video drivers use low memory. Make sure you
- have the latest drivers for best performance.
-
- IMPORTANT: This error should occur on very few systems and is
- generally due to problems with system configuration or other
- Windows software.
-
-
- BP 7.0 Compatibility Notes
- --------------------------
- o Passing Borland Pascal 7.0 style object variables as arguments
- in an open array constructor is not supported.
-
- o Don't use the Borland Pascal 7.0 Fail procedure with Delphi
- classes.
-
- o Though we do not recommend using ObjectWindows and VCL units
- in the same application, by following these instructions, you
- can easily work on your Borland Pascal 7.0 Windows projects in
- the Delphi development environment:
-
- 1. Open your program or library file as a project. Make sure
- there's a correct module header declaration (i.e. program,
- library or unit) at the beginning of the .PAS file.
-
- 2. Change the Search Path on the Options|Project|Directories
- page to include \DELPHI\SOURCE\RTL70.
-
- 3. Update the uses clause of each unit as follows:
-
- o For each unit that uses WinTypes, replace "WinTypes" with
- "Messages, WinTypes"
- o Remove all references to the Win31 unit
-
-
-
-
-
-