home *** CD-ROM | disk | FTP | other *** search
/ PC Format Collection 48 / SENT14D.ISO / tech / delphi / disk1 / readme.txt < prev    next >
Encoding:
Text File  |  1997-02-03  |  17.8 KB  |  430 lines

  1. Welcome to Delphi
  2. -----------------
  3.  
  4. This README file contains important, last minute information
  5. about Delphi. 
  6.  
  7. Before you install Delphi, carefully read INSTALL.TXT. 
  8.  
  9.  
  10.  
  11. TABLE OF CONTENTS
  12. -----------------
  13.   Minimum system requirements
  14.   How to get help
  15.   Installation
  16.   Product overview
  17.   Demonstration programs
  18.   Release notes
  19.  
  20.  
  21. MINIMUM SYSTEM REQUIREMENTS
  22. ------------------------------
  23. Delphi requires Windows 3.1 or a 100% compatible operating
  24. system, an 80386 or newer processor (486 recommended), and 6Mb of
  25. system memory.
  26.  
  27. A minimum installation requires approximately 30Mb of disk space.
  28.  
  29. DCC.EXE, the DOS command-line compiler, requires at least 1Mb of
  30. extended memory.
  31.  
  32. Delphi has been tested under Windows 3.1, Windows for Workgroups
  33. 3.11, Windows NT 3.5, OS/2 Warp, and Windows 95.
  34.  
  35.  
  36. HOW TO GET HELP
  37. ------------------
  38. If you have any problems with this product, please read this
  39. file, and the online help files, and  first. 
  40.  
  41. If you still have a question and need assistance, help is
  42. available from the following sources:
  43.  
  44. 1. You can use your modem or Internet connection to easily obtain
  45.    assistance online.  Borland maintains support forums on
  46.    CompuServe.  These forums put you in contact with thousands of
  47.    other programmers using Borland products. You'll be able get
  48.    your questions answered and share information and ideas with
  49.    others.
  50.  
  51.    You can also download the latest technical information, sample
  52.    code, utilities, patches, etc., from these online services as
  53.    well as from Borland's Download Bulletin Board Service
  54.    (DLBBS).
  55.  
  56.    Access Borland's online services in the following manner:
  57.  
  58.    CompuServe
  59.      GO DELPHI
  60.  
  61.    World Wide Web
  62.      The Delphi page (http://www.borland.com/TechInfo/Delphi)
  63.      contains tips and techniques, the latest Delphi book list,
  64.      links to other Delphi pages, newsgroups, and other
  65.      references.
  66.  
  67.    Borland DLBBS in the USA
  68.      You can reach the Borland DLBBS by dialing (408) 431-5096
  69.      (up to 14,400 Baud, 8 data bits, No Parity, 1 Stop bit). No
  70.      special setup is required.
  71.  
  72.  
  73.  
  74. INSTALLATION
  75. ---------------
  76. Please refer to the file INSTALL.TXT on your CD in the
  77. \INSTALL\DISK1 directory or on DISK1 of your floppy disk set
  78. for complete installation instructions.
  79.  
  80. To start the installation, run the SETUP.EXE program on your CD
  81. in the \INSTALL\DISK1 directory or on the floppy disk labeled
  82. DISK1.
  83.  
  84.  
  85.  PRODUCT OVERVIEW
  86. -------------------
  87. Delphi's visual design environment lets you create sophisticated
  88. Windows applications faster than any other development tool.
  89. Because Delphi is built around an optimizing native-code
  90. compiler, Delphi applications are up to 10-20 times faster than
  91. interpreted code.
  92.  
  93. Delphi integrates the Borland Database Engine, so you have
  94. instant support for dBase, Paradox, and ODBC local databases.
  95.  
  96. Delphi includes the Local InterBase Server so you can create
  97. standalone client/server applications with a high-performance
  98. ANSI SQL-92 compatible database server.
  99.  
  100. Delphi includes Borland's award-winning ReportSmith report
  101. writing tool, which allows programmers to prepare innovative
  102. reports using live data in all popular database formats.
  103.  
  104. Delphi Client/Server includes all of Delphi plus high performance
  105. native drivers for Oracle, Sybase, Microsoft SQL Server, Informix
  106. and InterBase remote servers with unlimited application
  107. deployment. You also get team development support, ReportSmith
  108. SQL, a Visual Query Builder, source code to the Visual Component
  109. Library (VCL), and the Local InterBase Server Deployment Kit.
  110.  
  111. Delphi includes an Open Tools API capability that allows 
  112. you to extend the Delphi environment to include your own tools, 
  113. experts, and so on. By using this API, you can seamlessly
  114. integrate these extensions into the Delphi environment.  For
  115. details, refer to the file TOOLINTF.PAS located in the
  116. \DELPHI\DOC for Delphi or in the \DELPHI\SOURCE\VCL directory for
  117. Delphi Client/Server.  Source code for an example expert is also
  118. located in \DELPHI\DEMOS\EXPERTS directory.
  119.  
  120.  
  121. DEMONSTRATION PROGRAMS
  122. -------------------------
  123.  
  124. Here's an overview of the example programs, libraries and
  125. components located in the \DELPHI\DEMOS directory:
  126.  
  127. \DELPHI\DEMOS
  128.   \DB - Contains all database sample projects. Data used by these
  129.         examples is in the \DELPHI\DEMOS\DATA directory. The
  130.         SETUP program creates a BDE alias called DBDEMOS which
  131.         can be used to access this data. Refer to INSTALL.TXT for
  132.         additional information. (DBG=Database Application
  133.         Developer's Guide)
  134.  
  135.     \ANIMALS  - Uses TBlobField type to access dBASE data.
  136.     \BDEDLL   - DLL that uses database components and a
  137.                 companion application.
  138.     \CALCFLDS - Simple use of calculated fields with linked
  139.                 master/detail tables.
  140.     \DATALIST - Dynamically retrieves lists of aliases, tables,
  141.                 fields and indexes.
  142.     \DBAWARE1 - Simple use of TDBEdit, TDBListBox, TDBComboBox
  143.                 and TDBGrid.
  144.     \DBAWARE2 - Simple use of TDBLookupCombo and TDBLookupList.
  145.     \FISHFACT - Uses TBlobField and TMemoField to access
  146.                 Paradox data.
  147.     \FORMAT   - Simple use of FormatDateTime and FormatFloat.
  148.     \INSQUERY - Simple use TQuery to perform SQL insert.
  149.     \LINKQRY  - Master/detail form using TQuery components.
  150.     \MASTAPP  - Extensive example featured in Chapter 2, 4, and
  151.                 Appendix D of the Database Application
  152.                 Developer's Guide. Consists of 12 forms and comes
  153.                 with sample data for Paradox and Local InterBase
  154.                 Server. Uses ReportSmith to print invoice,
  155.                 inventory and customer data; includes online help
  156.                 that explains how the application is implemented;
  157.                 contains a sophisticated invoice form, and is
  158.                 fully scalable between desktop and Client/Server
  159.                 data. Refer to the comments at the beginning of
  160.                 MAIN.PAS for more complete information.
  161.     \QJOIN    - Simple SQL join.
  162.     \RANGE    - Simple use of TTable range support.
  163.     \SEARCH   - Simple use of TTable.SetKey.
  164.     \STOCKS   - Stock portfolio example that uses complex SQL
  165.                 joins, ReportSmith reports and the TChartFX
  166.                 sample VBX control.
  167.     \TOOLS    - Two applications: an MDI database browser and a
  168.                 SQL Activity Monitor.
  169.     \TWOFORMS - Simple example that shows how multiple forms
  170.                 can share a single dataset (DBG, Ch. 3).
  171.  
  172.   \DOC - Contains examples from the printed documentation
  173.          (UG=User's Guide, CWG=Component Writer's Guide).
  174.  
  175.     \ABOUTBOX - AboutBox dialog (UG Ch. 2).
  176.     \CALENDAR - TSampleCalendar component (CWG Ch. 11).
  177.     \CBROWSE  - Uses TSampleCalendar (CWG Ch. 11).
  178.     \DATAEDIT - Read/write data aware TCalendar (CWG Ch. 12).
  179.     \DBCAL    - Read-only data aware TCalendar (CWG Ch. 12).
  180.     \FILMANEX - File manager (UG, Ch. 13).
  181.     \FORMCOMP - Encapsulates a form as a component (CWG, Ch. 13).
  182.     \FORMDLL  - Encapsulates a form as a DLL (CWG, Ch. 13).
  183.     \GRAPHEX  - Simple paint program (UG, Ch. 12).
  184.     \OLE2     - MDI OLE2 container (UG, Ch. 15).
  185.     \SHAPE    - TSampleShape component (CWG, Ch. 10).
  186.     \TEXTEDIT - Simple MDI text editor (UG, Ch. 10).
  187.     \WRAPMEMO - TWrapMemo component (CWG, Ch. 9).
  188.  
  189.   \CALLDLL    - A simple password form in a DLL and a test
  190.                 program that calls it.
  191.   \DATA       - Contains all data used by sample programs. Note
  192.                 that the MASTAPP example defines referential
  193.                 integrity rules on the CUSTOMER, ORDERS, ITEMS
  194.                 and PARTS tables. These rules, which require that
  195.                 the master record be posted before a detail
  196.                 record may be posted, are defined in both the
  197.                 Paradox tables (.DB) the Local InterBase Server
  198.                 database (MASTSQL.GDB) versions of this data. If
  199.                 you write database applications that insert data
  200.                 into these tables and your insertions violate the
  201.                 referential integrity rules that are defined, a
  202.                 "Master Record Missing" exception will be raised.
  203.   \DDEDEMO    - Uses DDE to create a group in Program Manager.
  204.   \DRAGDROP   - Two projects that demonstrate drag and drop.
  205.   \DYNAINST   - Dynamically creates components at run-time.
  206.   \EXPERTS    - Source for the application and dialog experts
  207.                 (access via the Project and Form expert gallery
  208.                 pages).
  209.   \FILECTRL   - Uses the file and directory controls.
  210.   \GENERIC    - Object Pascal version of the "generic" SDK app.
  211.   \IMAGVIEW   - Views and browses images (BMPs, WMFs, etc.).
  212.   \OLE2       - Links and embeds OLE2 objects.
  213.   \OWNERLST   - Uses an owner-draw listbox.
  214.   \PAGECTRL   - Integrates the TNotebook and TTabSet components.
  215.   \PROPEDIT   - Component with accompanying property editor.
  216.   \SCRIBBLE   - A simple drawing program in only 3 lines of code.
  217.   \TEXTDEMO   - Uses TFindDialog and TReplaceDialog components.
  218.   \USERHELP   - Shows how to implement and register online help
  219.                 for a custom component.
  220.  
  221.  
  222.  
  223.  
  224. DATABASE NOTES
  225. --------------
  226. Closing ReportSmith Run-time from a Delphi application - When
  227. ReportSmith run-time is loaded by a TReport component,
  228. TReport.AutoUnload is False and your application is terminating,
  229. you'll need to call TReport.CloseReport explicitly to unload
  230. ReportSmith:
  231.  
  232.   procedure TForm1.FormClose(Sender: TObject;
  233.     var Action: TCloseAction);
  234.   begin
  235.     Report1.CloseReport(False);
  236.   end;
  237.  
  238. TTable.CreateTable - The TTable.CreateTable function does not
  239. support the Paradox formatted memo field type.
  240.  
  241. Queries with BCD Parameters - (Paradox tables only) Substitution
  242. parameters that are of type BCD should be bound using floating
  243. point data types (not BCD).
  244.  
  245. Using Database components in a DLL - Certain restrictions apply
  246. when a DLL uses database components. In particular, such a DLL
  247. can only be used by one client at a time. It is the
  248. responsibility of the DLL to prevent simultaneous access by
  249. multiple applications. In addition, a DLL that uses database
  250. components should provide startup and cleanup routines to ensure
  251. safe initialization and shutdown. Refer to the
  252. \DELPHI\DEMOS\DB\BDEDLL directory for an example of a DLL that
  253. uses database components and a companion application.
  254.  
  255. SQL Database floating point precision - Servers that support a
  256. single-precision floating point type typically offer only seven
  257. significant digits. If no TField.DisplayFormat is specified and
  258. the precision of the underlying field is less than 15 digits, you
  259. should set the TField.Precision property accordingly.
  260.  
  261. Additional information about updateable SQL queries:
  262.   o The online help on Syntax Requirements for a Live Result Set
  263.     should state that ORDER BY clauses are allowed in updateable
  264.     queries.
  265.   o The online help on Syntax Requirements for a Live Result Set
  266.     incorrectly states that a unique index must exist on Sybase
  267.     servers. Only the original column values implied by the
  268.     setting of TQuery.UpdateMode must be unique.
  269.   o All Oracle column names are case sensitive (as if they were
  270.     quoted explicitly). Oracle table names are never quoted (and
  271.     thus must be uppercase).
  272.   o Quoted columns must be prefixed with a table alias.
  273.   o Tables owned by another user must be qualified by owner name.
  274.     Use quotes around the entire qualified name, for example
  275.     "OWNER.TABLE".
  276.  
  277. Dataset synchronization on SQL Databases - Whenever supported by
  278. the server, Delphi supports inserts against updateable queries,
  279. views, non-indexed Sybase and InterBase tables. However, a newly
  280. inserted record is not present in the current cache (dataset)
  281. when it is no longer the current record. The table must be
  282. reopened or the query executed again to refresh the cache and
  283. retrieve the inserted record.
  284.  
  285. Informix SQL Link - Due to Informix 4.x restrictions, only one
  286. application instance can be connected to one server at a time. To
  287. help circumvent this problem, we recommend that you set the
  288. TDatabase.KeepConnections property to False when accessing
  289. Informix databases. Close all active connections at design time
  290. before running the application. Informix 5.X does not have this
  291. limitation.
  292.  
  293. The Borland Database Engine (BDE) looks for the IDAPI.CFG
  294. configuration file which contains driver and alias information
  295. used by all BDE client applications. The SETUP program creates
  296. and places a copy of IDAPI.CFG in the \IDAPI directory. We
  297. recommending backing up your IDAPI.CFG file periodically. You can
  298. also create a new one by copying from the IDAPI.CNF file in the
  299. \RUNIMAGE\IDAPI directory on your CD-ROM (or, if you're
  300. installing from floppy disks, from the indicated .PAK file listed
  301. in FILELIST.DOC ), for example:
  302.  
  303.   copy D:\RUNIMAGE\IDAPI\IDAPI.CNF C:\IDAPI\IDAPI.CFG
  304.  
  305. Note that other .CNF files are provided as well and may be merged
  306. using the BDECFG.EXE utility's merge facility. Once you've
  307. created a new IDAPI.CFG file, you can use BDECFG.EXE to create
  308. aliases and drivers. For example, assuming you've installed
  309. Delphi on your C: drive, here's how to create the DBDEMOS alias
  310. that is normally created by the SETUP program:
  311.  
  312.   1. Click on the Database Engine Configuration icon in the
  313.      Delphi Program Manager group.
  314.   2. Select the Alias page and click the New Alias button.
  315.   3. Enter DBDEMOS and press the OK button.
  316.   4. Click on the path in the Parameters entry box and specify
  317.      C:\DELPHI\DEMOS\DATA
  318.   5. Select File|Save
  319.  
  320. Now this alias is available to Delphi's data access components
  321. (TTable, TQuery, etc.).
  322.  
  323. Systems Notes
  324. -------------
  325. Video Drivers - Some older versions of the Dell/Tseng ET4000
  326. video driver, when operated in high-color modes, fail to properly
  327. paint the multiselect rectangle while dragging. In addition, some
  328. older ATI video drivers contain spurious INT 3 breakpoint
  329. instructions which interfere with Windows debugging. If you
  330. experience either of these problems, contact your vendor for an
  331. updated driver.
  332.  
  333. Embedding or linking an Excel object - When embedding Excel in a
  334. TOleContainer component, a known problem in Excel reduces its
  335. scaling factor each time the object is activated.
  336.  
  337. DPMI utilities and other operating systems - DCC.EXE, the DOS
  338. command-line compiler, and DLIB.EXE, the library utility for
  339. DELPHI.DSL, both use DPMI services provided by RTM.EXE. RTM.EXE
  340. requires at least 1Mb of extended memory. When running under
  341. Windows NT 3.5, add the following line to your
  342. \WINNT\SYSTEM32\CONFIG.NT file:
  343.  
  344.   ntcmdprompt
  345.  
  346. When running DCC or DLIB in an OS/2 DOS session, set DPMI_DOS_API
  347. to Enabled.
  348.  
  349. Cannot Optimize EXE errors - When the Optimize EXE for size and
  350. speed option is enabled on the Options|Project|Linker page, you
  351. may encounter a "disk full" error during compilation. If this
  352. error occurs and you have sufficient disk space, disable the
  353. Linker page option and use the command-line utility instead:
  354.  
  355.   \delphi\bin\w8loss project1.exe
  356.  
  357. Program Reset - Windows support for debugging does not always
  358. make it possible for Delphi to shutdown a running application and
  359. recover all system resources that were allocated. When possible,
  360. terminate your running application normally instead of using
  361. Debug | Program Reset. This is especially important when an
  362. exception has occurred in your application. If you do use Program
  363. Reset, you may be bypassing some of your application's shutdown
  364. code. You may need to periodically exit and then restart Windows
  365. to recover resources which were allocated but not released.
  366.  
  367. CANNOT CREATE PROCESS Error - There are two possible causes for
  368. this error.
  369.  
  370.   o Your application requires a DLL which cannot be located
  371.  
  372.   o Insufficient low DOS memory - Windows requires a minimum
  373.     amount of conventional DOS memory in order to launch an
  374.     application. If available conventional memory is insufficient
  375.     when you try to run or debug an application, a CANNOT CREATE
  376.     PROCESS error message will appear.
  377.  
  378.     Here's how you can increase the available DOS memory:
  379.  
  380.       o Exit all BDE client applications (e.g. Delphi), run the
  381.         BDE Configuration utility (BDECFG.EXE), select the SYSTEM
  382.         page and reduce or zero the "LOW MEMORY USAGE LIMIT"
  383.         setting.
  384.  
  385.       o Modify your CONFIG.SYS and AUTOEXEC.BAT files to
  386.         eliminate DOS TSRs or load them into "high memory".
  387.  
  388.       o Many Windows applications inadvertently use low memory.
  389.         Closing other Windows applications will often free up a
  390.         significant amount of low memory.
  391.  
  392.       o Some Windows video drivers use low memory. Make sure you
  393.         have the latest drivers for best performance.
  394.  
  395.     IMPORTANT: This error should occur on very few systems and is
  396.     generally due to problems with system configuration or other
  397.     Windows software.
  398.  
  399.  
  400. BP 7.0 Compatibility Notes
  401. --------------------------
  402. o Passing Borland Pascal 7.0 style object variables as arguments
  403.   in an open array constructor is not supported.
  404.  
  405. o Don't use the Borland Pascal 7.0 Fail procedure with Delphi
  406.   classes.
  407.  
  408. o Though we do not recommend using ObjectWindows and VCL units
  409.   in the same application, by following these instructions, you
  410.   can easily work on your Borland Pascal 7.0 Windows projects in
  411.   the Delphi development environment:
  412.  
  413.   1. Open your program or library file as a project. Make sure
  414.      there's a correct module header declaration (i.e. program,
  415.      library or unit) at the beginning of the .PAS file.
  416.  
  417.   2. Change the Search Path on the Options|Project|Directories
  418.      page to include \DELPHI\SOURCE\RTL70.
  419.  
  420.   3. Update the uses clause of each unit as follows:
  421.  
  422.      o For each unit that uses WinTypes, replace "WinTypes" with
  423.        "Messages, WinTypes"
  424.      o Remove all references to the Win31 unit
  425.  
  426.  
  427.  
  428.  
  429.  
  430.