home *** CD-ROM | disk | FTP | other *** search
- ***********************************************************
- DELPHI 4 RELEASE NOTES
- ***********************************************************
-
- This file contains last-minute information about Delphi
- 4 and additional information that enhances the
- usability of Delphi. We recommend you read this entire
- file before using Delphi 4.
-
- Certain portions of this file pertain only to some editions
- (Standard, Professional, Client/server, Enterprise) of
- Delphi 4. Wherever possible, when a topic concerns only
- specific editions this is also noted within the topic.
-
- Unless otherwise noted, all materials provided in this
- version of Delphi are copyright (C) 1983-1998 by INPRISE
- Corporation.
-
- TABLE OF CONTENTS
- =======================================================
-
- 1. WHERE TO FIND INFORMATION
- 1.1 Information Files
- 1.2 Online Resources
- 2. CONTACTING INPRISE
- 2.1 Installation Assistance and Developer Support
- 3. CD-ROM AND INSTALLATION DIRECTORY OVERVIEW
- 3.1 CD-ROM directories
- 3.2 Installation Directories
- 4. DEMO APPLICATIONS
- 5. UTILITY PROGRAMS
- 6. DOCUMENTATION
- 6.1 Delphi 4 Help Files
- 6.2 Online Version of Printed Documentation
- 6.3 Help Updates
- 7. BDE AND SQL LINKS
- 8. INTERNATIONAL
- 9. MICROSOFT TRANSACTION SERVER (MTS)
- 10. KNOWN PROBLEMS
-
-
- 1. WHERE TO FIND INFORMATION
- =======================================================
- 1.1 Information Files
- ---------------------
- This file, README.TXT, contains release notes for
- Delphi 4. See the file INSTALL.TXT (on the Delphi CD)
- for information regarding installing Delphi,
- uninstalling Delphi, and system requirements. See the
- file DEPLOY.TXT for information on redistributing
- Delphi applications. See LICENSE.TXT for information
- on licensing allowances and limitations for Delphi 4
- and other INPRISE software bundled with it. See the
- online Help file DEL4NEW.HLP for new features in and
- compatibility issues with Delphi 4.
-
- For the Borland Database Engine (BDE) and SQL Links
- (the latter only in the Client/server and Enterprise
- editions of Delphi), the file BDEREADME.TXT contains
- release notes. The file BDEDEPLOY.TXT contains infor-
- mation on deploying BDE and SQL Links with appli-
- cations. Both files are installed in the main BDE
- directory.
-
- 1.2 Online Resources
- --------------------
- You can get information from any of these online
- sources:
-
- 1.2.1 World Wide Web
- --------------------
- Check INPRISE's Web site regularly. The Delphi
- Product Team will post white papers, competitive
- analyses, answers to frequently asked questions, sample
- applications, updated software, and information about new
- and existing products. You may want to check these URLs
- in particular:
-
- http://www.inprise.com/
- (Main INPRISE Web site)
- http://www.inprise.com/delphi/
- (Delphi product information)
- http://www.inprise.com/devsupport/delphi/
- (Delphi Developer Support)
- http://www.inprise.com/devsupport/delphi/downloads/
- (Updated Help, software, and other files)
- http://www.inprise.com/delphi/cpp/
- (information for C++ programmers)
- http://www.inprise.com/delphi/vb/
- (information for Visual Basic programmers)
- http://www.inprise.com/newsgroups/
- (INPRISE-sponsored newsgroups, see below)
-
- 1.2.2 Newsgroups
- ----------------
- INPRISE sponsors a variety of newsgroups where users
- can exchange information about INPRISE development
- tools and their use. For a complete list and
- information on connecting to the INPRISE news server,
- see the page at the URL:
-
- http://www.inprise.com/newsgroups/
-
- In addition to the groups hosted by INPRISE, the
- following Usenet newsgroups are devoted to Delphi and
- related programming issues. (These newsgroups are
- maintained by users and are not official INPRISE
- newsgroups.)
-
- news:comp.lang.pascal.delphi.misc
- news:comp.lang.pascal.delphi.components
- news:comp.lang.pascal.delphi.components.misc
- news:comp.lang.pascal.delphi.components.usage
- news:comp.lang.pascal.delphi.components.writing
- news:comp.lang.pascal.delphi.databases
- news:comp.lang.pascal.delphi.advocacy
- news:comp.lang.pascal.delphi.announce
- news:alt.comp.lang.borland-delphi
-
- 1.2.2 FTP
- ---------
- ftp.inprise.com
- (Technical documents available by anonymous ftp.)
-
- 1.2.3 Listserv
- --------------
- To subscribe to electronic newsletters, use the
- online form at:
- http://www.inprise.com/feedback/listserv.html
- or, for INPRISE's international listserver,
- http://www.inprise.com/feedback/intlist.html.
-
- 1.2.4 TECHFAX
- -------------
- 1-800-822-4269 (North America)
- (Technical documents available by fax.)
-
-
- 2. CONTACTING INPRISE
- =======================================================
- 2.1 Installation Assistance and Developer Support
- -------------------------------------------------
- INPRISE offers a range of support services for Delphi 4
- (and other tools). For information, see the World Wide
- Web site for Delphi Developer Support at the URL:
-
- http://www.inprise.com/devsupport/delphi/
-
- For assistance outside of North America, contact your
- local INPRISE representative. For a list of offices and
- distributors world-wide, see the page at the URL:
-
- http://www.inprise.com/bww/
-
-
- 3. CD-ROM AND INSTALLATION DIRECTORY OVERVIEW
- =======================================================
- 3.1 CD-ROM directories
- ----------------------
- The Delphi 4 CD-ROM includes the following files and
- directories.
-
- [root]
- Contains files used for installation and registration
- as well as these important documents:
-
- INSTALL.TXT Installation instructions.
- README.TXT Release notes, last-minute
- documentation, and a list of known
- problems.
- LICENSE.TXT The Delphi license agreement.
- DEPLOY.TXT Information about deploying Delphi
- applications.
-
- \DELPHI16 Delphi 1.0 (16-bit).
-
- \SQL16 Latest 16-bit SQL Links.
-
- \DOCUMENTATION Contains PDF format copies of the
- printed Delphi documentation.
-
- \INFO\EXTRAS Contains extra bundled software.
-
- \INFO\CBUILDER DEMO Demo copy of C++ Builder 3.
-
- \IB5 Contains the InterBase 5.1.1 Server.
- (Professional edition and higher.)
-
- \INSTALL Contains the Delphi 4 setup program
- and related files.
-
- \ISEXPRESS Contains InstallShield Express, a
- customized application deployment tool
- for Delphi 4, the BDE, and related
- software.
-
- \OLENT Contains OLEnterprise files.
-
- \RDEBUG Contains the files to install the
- Remote Debugger.
-
- \RUNIMAGE Contains a complete Delphi
- installation. All files are unpacked
- and in the default directory
- structure.
-
- \NETSCAPE Netscape.
-
- \IE40 Microsoft Internet Explorer 4.0.
-
- 3.2 Installation Directories
- ----------------------------
- These are the directories (and their contents) assoc-
- iated with a full Delphi 4 installation. Some modules
- do not come with all editions of Delphi and these are
- noted where applicable. This file, DEPLOY.TXT, and the
- Delphi documentation refer to files in their locations
- relative to this default installation. Actual locations
- may vary as the Delphi installation allows you to con-
- trol where certain modules are installed.
-
- \Program Files\Borland\Delphi4\Bin
- (Delphi system files)
-
- \Program Files\Borland\Delphi4\Demos
- (Delphi demo programs, see "4. DEMO APPLICATIONS"
- below)
-
- \Program Files\Borland\Delphi4\Doc
- (.INT files with object declarations for objects
- without source .PAS files and the BDE API)
-
- \Program Files\Borland\Delphi 4\Help
- (Delphi online Help files)
-
- \Program Files\Borland\Delphi4\Imports
- (.DCU files for third-party products)
-
- \Program Files\Borland\Delphi4\Lib
- (Delphi library files)
-
- \Program Files\Borland\Delphi4\Objrepos
- (Object Repository)
-
- \Program Files\Borland\Delphi4\Ocx
- (Third-party OCX files)
-
- \Program Files\Borland\Delphi4\Slib
- (Debug versions of compiled source for use with
- debugging)
-
- \Program Files\Borland\Delphi4\Source
- (VCL source .PAS files, in Professional edition and
- above)
-
- \Program Files\Borland\Common Files\BDE
- (The Borland Database Engine system files; SQL
- Links system files, Client/server and Enterprise
- editions only)
-
- \Program Files\Common Files\Borland Shared\Data
- (Sample dBASE and Paradox tables)
-
- \Program Files\Common Files\Borland Shared\Debugger
- (The shared DLL for integrated debugger)
-
- \Program Files\Common Files\Borland Shared\Images
- (Sample image files, button glyphs, splash screen
- images, more)
-
- \Program Files\Common Files\Borland Shared\MSHelp
- (Microsoft SDK files)
-
- \Program Files\Common Files\Borland Shared\SampleDictionary
- (Sample data dictionary)
-
- \Program Files\Borland\Database Desktop
- (Database Desktop utility)
-
- \Program Files\Borland\vbroker
- (CORBA support)
-
- \Windows\System32
- (Windows NT system files)
-
-
- 4. DEMO APPLICATIONS
- =======================================================
- Sample programs, including the ones listed below, are
- installed with Delphi in the ..\Delphi 4\Demos\ direc-
- tory. To build these demos, compile the appropriate
- .DPR file. With client/server applications, be sure to
- build and run the server program before building the
- client.
-
- * CORBA demos only with Client/server and above
- \CORBA\ACCOUNT
- (Console CORBA client & server projects; how to use
- DII; same as VisiBroker's demo.)
- \CORBA\DATAMODULE
- (Using CORBA's datamodules; master-detail on CORBA
- server.)
-
- \CUSTOMDRAW
- (Using Windows custom draw support for TTreeView.)
-
- * Available only with Professional and above
- \DB\CSDEMOS
- * Available only with Client/server and above
- \DB\MTSPOOL
- (Using MTS pooling.)
-
- \DOCKING
- (Application template showing toolbar docking, tab
- docking, conjoinment docking, & hidden docksites.)
-
- * Internet demos only with Professional and above
- (The following are demo projects from NetMasters.)
- \INTERNET\DAYTIME
- \INTERNET\ECHO
- \INTERNET\FINGER
- \INTERNET\MSG
- \INTERNET\POP3
- \INTERNET\SMTP
- \INTERNET\TIME
- \INTERNET\UDP
- \INTERNET\URL
- \INTERNET\UUE
-
- * MIDAS demos only with Client/server and above
- \MIDAS\AGGREGATE
- \MIDAS\ALCHTEST
- (TClientDataSet test application.)
- \MIDAS\BRFCASE
- (How to do briefcase with MIDAS.)
- \MIDAS\CUSTTREE
- (Server: master-detail with customer and orders
- tables. Client: displays data from server.)
- \MIDAS\INTRCPT
- (How to write interception DLL for the socket
- server.)
- \MIDAS\LOGIN
- (How to do login with MIDAS.)
- \MIDAS\POOLER
- (How to pool remote datamodules.)
-
- (Oracle 8 demos only with Client/server and above)
- \ORACLE8\ORTYPES
- (Oracle object relational types; can be used as a
- utility.)
-
- (The following demonstrate using rich-edit components
- in international situations.)
- \RICHEDIT\DEU
- \RICHEDIT\ENU
- \RICHEDIT\FRA
- \RICHEDIT\SVE
-
- \VIRTUAL LISTVIEW
- (Taking advantage of OwnerData property of
- TListView; creating a mini-explorer window.)
-
-
- 5. UTILITY PROGRAMS
- =======================================================
- Delphi 4 comes with a number of helper, utility appli-
- cations. These application programs serve a variety of
- purposes, from debugging applications to working with
- data tables. These utility programs include:
-
- Resource compiler
- BRCC32.EXE, in ..\Delphi4\Bin
-
- Database Explorer
-
- SQL Explorer (Client/server & Enterprise editions)
- DBEXPLOR.EXE, in ..\Delphi4\Bin
-
- Database Desktop
- DBD.EXE, in \Program Files\Borland\Database Desktop
-
- GREP
- GREP.EXE, in ..\Delphi4\Bin
-
- Make utility
- MAKE.EXE, in ..\Delphi4\Bin
-
- MTS installation (Client/server & Enterprise editions)
- MTSINST.EXE, in ..\Delphi4\Bin
-
- Open Help
- OH.EXE, in ..\Delphi4\Bin
-
- Package Component Editor
- PCE.EXE, in ..\Delphi4\Bin
-
- SQL Monitor (Client/server & Enterprise editions)
- SQLMON.EXE, in ..\Delphi4\Bin
-
- TDump
- TDUMP.EXE, ..\Delphi4\Bin
-
- TRegSrvr
- TREGSRVR.EXE, ..\Delphi4\Bin
-
-
- 6. DOCUMENTATION
- =======================================================
- 6.1 Delphi 4 Help Files
- -----------------------
- The Delphi 4 on-line documentation consists primarily
- of the following Windows Help files:
-
- File Purpose
- ------------ -----------------------------------
- DELPHI4.HLP Main Delphi Help
- DEL4COM.HLP Developing COM-based Applications
- DEL4CW.HLP Component Writer's Guide
- DEL4DAP.HLP Developing Distributed Applications
- DEL4DBD.HLP Developing Database Applications
- DEL4OP.HLP Object Pascal Guide
- DEL4PROG.HLP Programmer's Guide
- DEL4VCL.HLP VCL Reference
- DEL4NEW.HLP What's New and compatibility issues
- OPENHELP.HLP Customizing Help
-
- 6.2 Online Version of Printed Documentation
- -------------------------------------------
- For your convenience, Acrobat versions of the document
- ation (except the VCL Reference) are provided. Use the
- provided Acrobat Reader to view the files. In addition
- to the reader, the following files are provided:
-
- DG.PDF
- Acrobat version of the Developer's Guide.
-
- OPLG.PDF
- Object Pascal Guide and Object Pascal Help.
-
- QS.PDF
- Quick Start manual.
-
- READRTIP.PDF
- Tips for using the Acrobat Reader.
-
- STARTUP_DELPHI4.PDF
- The main menu and start-up files. Use this file to
- access all other PDF files.
-
- These Acrobat files are located on the Delphi 4 CD in
- the \Documentation directory.
-
- 6.3 Help Updates
- ----------------
- TCustomListView
- ---------------
- TCustomListView.OwnerDataFetch has an undocumented
- parameter: Request. The Request parameter specifies
- which properties of the Item object the list view is
- expecting to be filled-in. irText corresponds to
- TListItem's Caption property, irImage to its Image
- property, irParam to its Data property, irState to its
- Cut, DropTarget, Focused and Selected properties, and
- irIndent to its Indent property. The syntax prototype
- should be:
-
- TItemRequests = (irText, irImage, irParam, irState,
- irIndent);
- TItemRequest = set of TItemRequests;
-
- function TCustomListView.OwnerDataFetch(Item:
- TListItem; Request: TItemRequest): Boolean; virtual;
-
- Windows API Help
- ----------------
- For the latest information on the Windows 32-bit API,
- refer to the Microsoft Developer Network (MSDN) Web
- site.
-
- The Run ToolBar Button Drop Down List
- -------------------------------------
- The Debugger Run toolbar button now has a drop down
- list that will allow you to change what the active
- project/process is. If you are debugging more than one
- project and you want to switch to a process that is not
- currently active, click on the little down arrow in the
- Run button and select the EXE you want to become
- active. This will not run the EXE just activate it. If
- the EXE is not currently stopped in the debugger
- selecting it will make its project the active project
- in the Project Manager.
-
- Quick Start Manual Errata
- -------------------------
- On page 3-6, step 4 says to set TDBGrid properties to
- anchor the grid to the form and set the Constraints
- subproperties AnchorHorz and AnchorVert to akStretch.
- Correction: Anchors is a separate property and step 4
- should direct you to set all Anchors subproperties
- (akLeft, akTop, akRight, and akBottom) to True.
-
- Page 5-7 states incorrectly refers to package files
- using the extension .DPL; should be .BPL. Also, on the
- same page, there is a reference to the file VCL30.DPL;
- this should be VCL40.BPL instead.
-
- Developer's Guide Errata
- ------------------------
- On page 49-20, in the example at the top:
-
- TransactionContextEx.Abort
- should be...
- TransactionContextEx.SetAbort
-
- TransactionContextEx.Commit
- should be...
- TransactionContextEx.SetComplete
-
- What's New Help File Errata
- ---------------------------
- New UseSystemFont property for TStatusBar. Specifies
- whether the status bar uses the system font. As the
- default for this property is True, it can impact legacy
- applications by causing the TStatusBar to use the
- system font.
-
- BDE: New Oracle 8 REF Field Property, curGETREF
- -----------------------------------------------
- After inserting a record, the object ID for the newly
- inserted record can be obtained by allocating space
- (the iLen of the parent's REF field), and passing this
- into DbiGetProp().
-
- DbiGetProp( hCur, curGETREF, pOBJECTID, refSize,
- &iObjectLen );
-
- BDE: New REF Field Property, curREFINSERTTABLENAME
- --------------------------------------------------
- When inserting records with a cursor opened with
- DbiOpenRef(), BDE needs to know the name of the stand-
- alone table into which you wish to insert the record.
- If this property has not been set, an error will occur.
-
- DbiSetProp( hCur, curREFINSERTTABLENAME, (UINT32)
- <pszStandAloneTableName> );
-
-
- 7. BDE AND SQL LINKS
- =======================================================
- See BDEREADME.TXT (in the BDE directory) for release
- notes for the Borland Database Engine (BDE) and SQL
- Links (the latter only available with the Client/server
- and Enterprise editions of Delphi).
-
- See BDEDEPLOY.TXT (in the BDE directory) for specific
- information regarding redistributing the BDE and SQL
- Links with Delphi applications.
-
- 8. INTERNATIONAL
- =======================================================
- 8.1 Upgrading Arabic and Hebrew Support
- ---------------------------------------
- Middle East language support has been added to Delphi.
- Users of Delphi 3 Arabic or Delphi 3 Hebrew Enablement
- products should note that the old Arabic and Hebrew
- properties have been combined to a single property
- called BiDiMode, and there is a new property called
- ParentBiDiMode. See the online help for details.
-
- If you open an old project in Delphi 4, Delphi displays
- an error message stating "Class T... not found". Either
- select "Ignore" or "Ignore All". Once the Form is
- displayed, the old Arabic/Hebrew components are not
- displayed. Add the Delphi components in the appropriate
- places, update the BiDiMode fields, relink the event
- handlers and save the project.
-
- 8.2 Changing keyboards for BiDi support
- ---------------------------------------
- Switching bidi mode does not change the keyboard. You
- can do this for any control that has an OnEnter event.
- Set the OnEnter event to use this method:
-
- procedure TForm1.Edit1Enter(Sender: TObject);
- begin
- if Sender is TWinControl then
- with Sender as TWinControl do
- if UseRightToLeftReading then
- ActivateKeyboardLayout(...) //bidi keyboard
- else
- ActivateKeyboardLayout(...) //other keyboard
- end;
-
-
- 9. MICROSOFT TRANSACTION SERVER (MTS)
- =======================================================
- If Microsoft Transaction Server (MTS) is installed
- before Delphi 4 is installed, the only preparation
- needed is setting MTS POOLING to TRUE in the Borland
- Database Engine (BDE) configuration file. Use the BDE
- Administator to do this. The MTS POOLING setting is in
- the System/Init area of the configuration. This setting
- enables the BDE to use MTS pooling, improving the
- initial connection time when opening a database and
- allowing BDE database connections to participate in MTS
- transactions.
-
- If MTS is installed after Delphi 4 has already been
- installed, additional steps must be taken.
-
- 1. Copy DISP.DLL from the RUNIMAGE directory on the
- Delphi 4 CD into the BDE directory on the host
- computer.
-
- 2. Issue the following command:
- REGSVR32 <BDE directory>\DISP.DLL
-
- 3. In Transaction Server Explorer, install BDE-MTS
- package:
- a. Right Click on Packages Installed.
- b. Choose New | Package.
- c. Choose Install pre-built packages.
- d. Add file DISP.PAK from the BDE directory.
-
- 4. Set the value of MTS POOLING to True in the
- System/Init section of the BDE configuration.
-
-
- 10. KNOWN PROBLEMS
- =======================================================
- Packages and ISAPI DLLs
- -----------------------
- The ISAPI/NSAPI WebModule-based DLL's cannot be used
- when compiled with packages. Workaround: remove INET40
- and INETDB40 BPLs from the project.
-
- InterBase Installation
- ----------------------
- Because the InterBase install does not remove registry
- entries and services completely, an error will be seen
- at the next reboot after uninstall: "Unable to start
- one or more services". Suggested workaround: run
- Control Panel | Services and turn off automatic start
- for InterBase Server.
-
- MTS
- ---
- After CoInitialization/CoUninitialization have been
- called, CoInitialization cannot be called again. Once
- CoUninitialization has been called, your application no
- longer executes in the MTS runtime environment.
-
- There is a known problem with using the client
- CreateTransaction/CreateTransactionEx mechanism for
- controlling MTS transactions. The BDE is not reenlisted
- once a transaction is committed or rolled back.
- Workaround: you must:
-
- 1. On the client side, call CreateTransaction and
- ITransaction.CreateInstance after each commit or
- rollback.
- 2. On the server side, close and reopen the database
- for each commit or rollback.
-
- Oracle 8
- --------
- If using a TTable as TProvider.DataSet, the ADT member
- fields in the TClientDataSet will by default be required.
- To modify this, use the Fields Editor to make persistent
- TFields for all fields in the TTable and then set the
- bRequired property for each ADT member to False.
-
- When working with MTS, OBJECT MODE (Oracle 8 driver in
- BDE configuration) should be set to FALSE.
-
- Partition tables are not supported.
-
- REF IN OBJECT VIEWS: REF data type which has a size
- greater than 200 bytes is not supported in this
- release. This will happen when you have an ORACLE 8
- object view created from a table with the key field
- greater than 25 bytes.
-
- TDBGrid may have difficulty displaying data when the
- associated dataset consists of tables nested too deeply
- (generally, 5 or more levels of nesting).
-
- Oracle 8 client does not work correctly on Win98.
- Attempts to use client utilities raises a dialog box:
- "Some features of Oracle Version 8 may not run
- correctly in Windows 98. For possible updates please
- check the Oracle web site". Delphi will raise BDE error
- "Cannot load driver".
-
- The following tools do not fully support Oracle 8
- object field types:
-
- Database Desktop
- Data Pump
- QuickReport components
- TeeChart component
- DataSetTableProducer and QueryTableProducer
- SQL Builder
- Decision Cube components
- Data dictionary
- Database Explorer
- Database Form Wizard
-
- COMCTL32.DLL Versions
- ---------------------
- Using an older version of COMCTL32.DLL than is
- installed with Delphi 4 will cause problems with
- components like Cool Menus and TToolButton. Installing
- some programs (like Microsoft Internet Explorer 3.02)
- will cause COMCTL32.DLL to be overwritten with an older
- version. Use the update program 40COMPUPD to replace it
- with the later version and prevent these problems.
-
- Code Explorer/Class Completion
- ------------------------------
- Some default key combinations may conflict with key
- combinations defined in alternate Editor SpeedKey
- settings. For example, Shift+Ctrl+UpArrow conflicts
- with SpeedKey a key combination for Brief and Epsilon.
-
- CORBA/OSAGENT.EXE
- -----------------
- A CORBA server will crash if OSAGENT is not already
- running. Start OSAGENT as a service under NT or with a
- -C flag when run as a console. Without the flag the
- application will terminate in 10 seconds.
-
- CORBA/IDL Generation
- --------------------
- When clicking on the Export button to generate IDLs,
- the names of interfaces in the generated IDL are not
- fully qualified. You need to manually update the IDL
- file. For example:
-
- IDataBroker should be updated to StdVCL::IDataBroker
- IProvider should be updated to StdVCL::IProvider
-
- DisableControls Method
- ----------------------
- Normal behavior note. The DisableControls method will
- also disable active Master-Detail links. Also, if you
- set BlockReadCount instead of calling DisableControls,
- then only the detail datasets get updated as you scroll
- through the dataset, not data-aware controls. Affects
- all components that can effect Master-Detail links and
- can use DisableControls.
-
- TChart/DbChart
- --------------
- Changing a primary index field to a duplicate value
- (key violation) and then hitting the Escape key moves
- the active record off of the record that was just being
- modified if a TDBChart is hooked to the same table. A
- workaround is to use two events of the dataset:
-
- Var bb:TBookMark;
-
- procedure TForm1.Table1AfterPost(DataSet: TDataset);
- begin { go to current record... }
- Table1.GotoBookMark(bb);
- Table1.FreeBookMark(bb);
- end;
-
- procedure TForm1.Table1BeforeEdit(DataSet: TDataset);
- begin { get current record... }
- bb:=Table1.GetBookMark;
- end;
-
- Packages
- --------
- If you have created your own design-time packages in an
- earlier version of Delphi or C++Builder, they
- must be rebuilt under Delphi 4 before they can be
- installed into Delphi 4.
-
- The package format has been changed in order to
- identify the producer of a package (C++Builder 3,
- Delphi 3, Delphi 4, etc.). Any user packages built with
- earlier versions will not be installable (until
- rebuilt) because they do not contain this information.
-
- Constraints/Persistent Fields/TClientDataSet
- --------------------------------------------
- Constraints on persistent fields for a TClientDataSet
- are ignored. To use constraints with a TClientDataSet,
- place them on a TTable or TQuery that the TProvider
- uses to populate the TClientDataSet.
-
- MTS Pooling Demo
- ----------------
- Closing the DB\MTSPool demo gives an Runtime error 216.
- Workaround is to do the following in the MTS explorer:
- 1. Go to Computers
- 2. Right-click on "My Computer"
- 3. Select Stop MS DTC
- 4. Right-click on "My Computer"
- 5. Select Properties
- 6. In the "Advanced" tab, press the "Reset Log"
- 7. Right-click on "My Computer"
- 8. Select "Shut Down Server Processes"
- 9. Right-click on "My Computer"
- 10. Select "Start MS DTC"
-
- Variants and 64-bit Integers
- ----------------------------
- Round & Trunc return an Int64 type. However, Variant
- is not compatable with Int64. In order to convert to a
- Variant you must go to a comp then to a Variant. You
- cannot typecast the Variant to a Int64. This can
- cause problems and backward compatability issues since
- push and pop require a variant value.
-
- Menu Short-cut Conflicts
- ------------------------
- Menu short-cuts in the IDE may conflict with system
- short-cuts and international character key
- combinations. If you want to disable the Ctrl+Alt hot
- keys in the IDE, set this string registry key:
-
- HKEY_CURRENT_USER\Software\Borland\Editor\Options\
- NoCtrlAltKeys to "1"
-
- COM/ActiveX initialization
- --------------------------
- The placement of COM/ActiveX initialization in Delphi
- has changed in this version. Prior versions initialized
- COM (through CoInitialize) in the initialization
- section of the ComObj unit. COM initialization is now
- accomplished during the call to Application.Initialize.
- Therefore, COM applications that do not call
- Application.Initialize must be changed so that it is
- called prior to any calls to COM runtime or interface
- methods. Likewise, calls to COM functions or interface
- methods in unit initialization sections must be changed
- to hook into Application.Initialize. This is only
- necessary in .exe projects, not .DLL (library)
- projects.
-
- Threading Model support
- -----------------------
- Out of process (.EXE) servers that are to support the
- Free or Both threading models on the primary thread
- require that the global variable CoInitFlags be set to
- COINIT_MULTITHREADED. This must be done in the
- initialization section of any unit in your project or
- in the project file prior to the call to
- Application.Initialize.
-
- Cached Updates and Master-Detail Relationships
- ----------------------------------------------
- Cached Updates cannot be used effectively with TQuery
- components when doing master-detail links (DataSource
- property). This is because the detail query is re-
- executed each time the master record pointer moves.
-
- BDEINST.TXT File
- ----------------
- The text file BDEINST.TXT contains the wrong
- FileVersion number for the BDEINST.DLL, showing 4.1.5.4
- instead of 5.0.0.38.
-
- Client Dataset/Aggregate Fields
- -------------------------------
- There are known problems with adding and activating
- aggregate fields after the client dataset has been
- activated. It is best to add all needed aggregate
- fields before activating the client dataset.
-
-
- =======================================================
- Unless otherwise noted, all materials provided in this
- release are Copyright 1983 - 1998 by INPRISE
- Corporation.
- ======================= END ===========================
-
-