home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / README.TXT < prev    next >
Encoding:
Text File  |  1999-01-26  |  22.7 KB  |  724 lines

  1. ***********************************************************
  2.            C++BUILDER 4 RELEASE NOTES
  3. ***********************************************************
  4.  
  5. This file contains last minute information about C++Builder
  6. and additional helpful information about the product.
  7.  
  8. TABLE OF CONTENTS
  9. =======================================================
  10.  
  11.   1. WHERE TO FIND INFORMATION
  12.      1.1 Information Files
  13.      1.2 Online Resources
  14.   2. CONTACTING INPRISE
  15.   3. CD-ROM AND INSTALLATION DIRECTORY OVERVIEW
  16.      3.1 CD-ROM Directories
  17.      3.2 Installation Directories
  18.   4. UTILITY PROGRAMS
  19.   5. DOCUMENTATION
  20.   6. ISSUES
  21.   7. INTERNATIONAL ISSUES
  22.  
  23.  
  24. 1. WHERE TO FIND INFORMATION
  25. =======================================================
  26.  
  27. 1.1 Information files
  28. ---------------------
  29. The following information files are included with
  30. C++Builder:
  31.  
  32. File            Information contained
  33. ------------------------------------------------------
  34. README.TXT      Release notes, late-breaking issues 
  35. INSTALL.TXT     Installation requirements, support 
  36.                 numbers
  37. DEPLOY.TXT      Information about deploying C++Builder
  38.                 applications
  39. LICENSE.TXT     C++Builder license agreement
  40.  
  41. For the Borland Database Engine (BDE) and SQL Links, 
  42. the following files are installed in the main BDE 
  43. directory located by default in 
  44. Program Files\Common Files\Borland Shared\BDE.
  45.  
  46. File            Information contained
  47. ------------------------------------------------------
  48. BDEREADME.TXT   Release notes for the Borland Database
  49.                 Engine (BDE) and SQL Links
  50. BDEDEPLOY.TXT   Information about deploying BDE and SQL 
  51.                 Links with applications
  52.  
  53. See the online Help file BCB4NEW.HLP for details on new 
  54. features of C++Builder 4.
  55.  
  56. 1.2 Online Resources
  57. --------------------
  58. You can get more information from any of these online
  59. sources:
  60.  
  61. 1.2.1 World Wide Web
  62. --------------------
  63.   Check Inprise's Web site regularly. The C++Builder
  64.   Product Team will post white papers, competitive
  65.   analyses, answers to frequently asked questions, sample
  66.   applications, updated software, and information about new
  67.   and existing products. You may want to check these URLs
  68.   in particular:
  69.  
  70.   http://www.inprise.com/
  71.     (Main Inprise Web site)      
  72.   http://www.inprise.com/bcppbuilder/
  73.     (C++Builder product information)
  74.   http://www.inprise.com/devsupport/bcppbuilder/
  75.     (C++Builder Developer Support)
  76.   http://www.inprise.com/newsgroups/
  77.     (Inprise-sponsored newsgroups)
  78.  
  79. 1.2.2 Newsgroups
  80. ----------------
  81.   Inprise sponsors a variety of newsgroups where users
  82.   can exchange information about Inprise development
  83.   tools and their use. For a complete list and
  84.   information on connecting to the Inprise news server,
  85.   see the page at the URL:
  86.   
  87.     http://www.inprise.com/newsgroups/
  88.  
  89. 1.2.3 FTP
  90. ---------
  91.   ftp.inprise.com
  92.   (Technical documents available by anonymous ftp.)
  93.  
  94. 1.2.4 Listserv
  95. --------------
  96.   To subscribe to electronic newsletters, use the
  97.   online form at:
  98.     http://www.inprise.com/feedback/listserv.html
  99.   or, for Inprise's international listserver,
  100.     http://www.inprise.com/feedback/intlist.html.
  101.  
  102. 1.2.5 TECHFAX
  103. -------------
  104.   1-800-822-4269 (North America)
  105.   (Technical documents available by fax.)
  106.  
  107. 2. CONTACTING INPRISE
  108. =======================================================
  109. Inprise offers a range of support services for C++Builder
  110. (and other tools). For information, see the URL:
  111.  
  112.   http://www.inprise.com/programs/assist/
  113.  
  114. For assistance outside of North America, contact your
  115. local Inprise representative. For a list of offices and
  116. distributors world-wide, see the page at the URL:
  117.  
  118.   http://www.inprise.com/bww/
  119.  
  120. 3. CD-ROM AND INSTALLATION DIRECTORY OVERVIEW
  121. =======================================================
  122.  
  123. 3.1 CD-ROM Directories
  124. ----------------------
  125. The C++Builder 4 CD-ROM includes the following files and
  126. directories.
  127.  
  128.   [root]
  129.   Contains files used for installation, registration
  130.   and text files such as the README.TXT and INSTALL.TXT:
  131.  
  132.  
  133.   \IB5           Contains the InterBase 5.5 Server.
  134.                  (Professional edition and higher)
  135.  
  136.   \INSTALL       Contains the C++Builder 4 setup program
  137.                  and related files.
  138.  
  139.   \ISXPRESS      Contains InstallShield Express, a
  140.                  customized application deployment tool
  141.                  for C++Builder 4.
  142.                  (Professional edition and higher)
  143.  
  144.   \OLENT         Contains OLEnterprise files.
  145.  
  146.   \RDEBUG        Contains the files to install the
  147.                  Remote Debugger. (Enterprise edition)
  148.  
  149.   \RUNIMAGE      Contains a complete C++Builder
  150.                  installation. All files are unpacked
  151.                  and in the default directory
  152.                  structure.
  153.  
  154.   \VBROKER       Contains VisiBroker for C++ version 3.3.
  155.                  (Enterprise edition)
  156.  
  157.   \NETSCAPE      Netscape Navigator 4.5.
  158.  
  159.   \IE40          Microsoft Internet Explorer 4.0.
  160.  
  161.   \WORKSHOP      Contains Resource Workshop version 4.5,
  162.                  a 16-bit resource editor.
  163.  
  164. 3.2 Installation Directories 
  165. ---------------------------- 
  166. These are the default directories (and their contents) 
  167. associated with a full C++Builder 4 installation. Some modules 
  168. do not come with all editions of C++Builder and these are 
  169. noted where applicable. 
  170.  
  171.   \Program Files\Borland\CBuilder4\Bin 
  172.     (C++Builder system files) 
  173.  
  174.   \Program Files\Borland\CBuilder4\Doc 
  175.     (.INT files with object declarations for objects 
  176.     without source files and the BDE API) 
  177.  
  178.   \Program Files\Borland\CBuilder4\Examples 
  179.     (C++Builder demo programs) 
  180.  
  181.   \Program Files\Borland\CBuilder4\Help 
  182.     (C++Builder online Help files) 
  183.  
  184.   \Program Files\Borland\CBuilder4\Imports 
  185.     (user-created files the compiler needs to find) 
  186.  
  187.   \Program Files\Borland\CBuilder4\Include 
  188.     (C++Builder header and source files) 
  189.  
  190.   \Program Files\Borland\CBuilder4\Lib 
  191.     (C++Builder library files) 
  192.  
  193.   \Program Files\Borland\CBuilder4\Objrepos 
  194.     (Object Repository) 
  195.  
  196.   \Program Files\Borland\CBuilder4\Ocx 
  197.     (Third-party OCX files) 
  198.  
  199.   \Program Files\Borland\CBuilder4\Projects 
  200.     (Location for storing projects) 
  201.  
  202.   \Program Files\Borland\CBuilder4\Source 
  203.     (VCL source .PAS files in Professional edition and 
  204.     higher) 
  205.  
  206.   \Program Files\Borland\Database Desktop 
  207.     (Database Desktop utility in Professional edition 
  208.     and higher) 
  209.  
  210.   \Program Files\Common Files\Borland Shared\BDE 
  211.     (Borland Database Engine system files; SQL 
  212.     Links system files in Professional edition and 
  213.     higher) 
  214.  
  215.   \Program Files\Common Files\Borland Shared\Data 
  216.     (Sample dBASE and Paradox tables in Professional 
  217.     edition and higher) 
  218.  
  219.   \Program Files\Common Files\Borland Shared\Debugger 
  220.     (Debugger files) 
  221.  
  222.   \Program Files\Common Files\Borland Shared\Images 
  223.     (Sample image files, button glyphs, splash screen 
  224.     images, more) 
  225.  
  226.   \Program Files\Common Files\Borland Shared\SampleDictionary 
  227.     (Sample data dictionary in Professional edition and 
  228.     higher) 
  229.  
  230.   \Program Files\Common Files\Borland Shared\MSHelp 
  231.     (Microsoft SDK Help files) 
  232.  
  233.   \Program Files\Borland\vbroker 
  234.     (VisiBroker for CORBA support in Enterprise edition) 
  235.  
  236.   \Runimage\CBuilder4\Windows 
  237.     (Windows system files) 
  238.   
  239. 4. UTILITY PROGRAMS
  240. =======================================================
  241. C++Builder 4 comes with a number of helper, utility 
  242. applications including:
  243.  
  244.   Resource compiler
  245.     BRCC32.EXE, in ..\CBuilder4\Bin
  246.  
  247.   Database Explorer (Pro Edition) or
  248.   SQL Explorer (Enterprise edition)
  249.     DBEXPLOR.EXE, in ..\CBuilder4\Bin
  250.  
  251.   Database Desktop (Pro edition or higher)
  252.     DBD32.EXE, in \Program Files\Borland\Database Desktop
  253.  
  254.   GREP
  255.     GREP.EXE, in ..\CBuilder4\Bin
  256.  
  257.   Image Editor
  258.     IMAGEDIT.EXE, in ..\CBuilder4\Bin
  259.  
  260.   Make utility
  261.     MAKE.EXE, in ..\CBuilder4\Bin
  262.  
  263.   MTS installation (Enterprise edition)
  264.     MTSINST.EXE, in ..\CBuilder4\Bin
  265.  
  266.   OpenHelp Help customization tool
  267.     (Pro edition or higher)
  268.     OH.EXE, in ..\CBuilder4\Bin
  269.  
  270.   Package Component Editor
  271.     (Pro edition or higher)
  272.     PCE.EXE, in ..\CBuilder4\Bin
  273.  
  274.   Project Conversion utility
  275.     IDETOBPR.EXE, in ..\CBuilder4\Bin
  276.  
  277.   SQL Monitor (Enterprise edition)
  278.     SQLMON.EXE, in ..\CBuilder4\Bin
  279.  
  280.   Type Library Wrapper File Generator
  281.     TLIBIMP.EXE, in ..\CBuilder4\Bin
  282.  
  283.   TDump
  284.     TDUMP.EXE,  in ..\CBuilder4\Bin
  285.  
  286.   TRegSrvr
  287.     TREGSRVR.EXE, in ..\CBuilder4\Bin
  288.  
  289.   Visual C++ Conversion Wizard
  290.     VCTOBPRU.EXE, in ..\CBuilder4\Bin
  291.  
  292. For information on more tools, see BCB4TOOL.HLP.
  293.   
  294. 5. DOCUMENTATION
  295. =======================================================
  296. The C++Builder 4 on-line documentation consists primarily
  297. of the following Windows Help files:
  298.  
  299.   File          Purpose
  300.   ------------  -----------------------------------
  301.   BCB4.HLP      Main C++Builder Help
  302.   BCB4COM.HLP   Developing COM-based Applications
  303.   BCB4CW.HLP    Creating Custom Components
  304.   BCB4DAP.HLP   Writing Distributed Applications
  305.   BCB4DBD.HLP   Developing Database Applications
  306.   BCB4ERRS.HLP  Error Messages and Warnings
  307.   BCB4LANG.HLP  C++Builder Language Guide
  308.   BCB4NEW.HLP   What's New and Upgrading to C++Builder 4
  309.   BCB4PROG.HLP  Programming with C++Builder
  310.   BCB4RTL.HLP   C Runtime Library Reference
  311.   BCB4SCL.HLP   Standard C++ Library
  312.   BCB4VCL.HLP   VCL Reference
  313.   BCB4TOOL.HLP  Command-line Tools
  314.   DEL4OP.HLP    Object Pascal Reference
  315.   OPENHELP.HLP  Customizing Help
  316.  
  317. Refer to BCB4NEW.HLP for a list of new features.
  318. Read "Upgrading to C++Builder 4" in BCB4NEW.HLP for 
  319. information about compatibility with previous releases.
  320. Look in the Help directory for other related Help files.
  321.  
  322. 6. ISSUES
  323. =======================================================
  324. Following are issues of interest to C++Builder 
  325. developers. 
  326.  
  327. Installing on Windows 98
  328. ------------------------
  329. You may have problems installing on Windows 98 when 
  330. using the Browse button to change directories with some 
  331. Client for NetWare Drivers. For information, refer to the
  332. knowledgebase document Q102400 at www.installshield.com.
  333.  
  334. Using COM
  335. ---------
  336. Console-mode clients must include VCL support in order
  337. to talk to DCOM servers built in C++Builder.
  338.  
  339. BORDBK41.DLL Missing or Not Registered
  340. --------------------------------------
  341. If you do not reboot your computer after installation, 
  342. you may see a message stating that BORDBK41.DLL is 
  343. missing or not registered when you build a blank form.
  344. Reboot the computer. If you still receive the message, 
  345. manually register the DLL using TRegSvr.exe in the
  346. Bin directory:
  347.  
  348. TREGSVR <path to BORDBK41.DLL>
  349.  
  350. The default path is
  351.  
  352. C:\Program Files\Common Files\Borland Shared\Debugger\BORDBK41.DLL
  353.  
  354. Using ClassExplorer
  355. -------------------
  356. ClassExplorer, by design, shows information on classes found
  357. in header files that you include in your project within
  358. double quotes. To see information in classes in headers 
  359. included within angle brackets, change the angle brackets 
  360. to double quotes.
  361.  
  362. Uninstalling Delphi
  363. -------------------
  364. You can run Delphi and C++Builder on the same computer. 
  365. If you uninstall Delphi after installing C++Builder, 
  366. however, all .BPL files residing in the Windows system 
  367. directory will be deleted including those you need 
  368. for C++Builder. 
  369.  
  370. After uninstalling Delphi, you'll need to recopy the .BPL 
  371. files from the C++Builder CD. Copy all BPL files (*.BPL) 
  372. from Runimage\CBuilder4\Windows\System32 and put them in 
  373. your \Windows\System (Windows 95 and 98) or \Winnt\System32 
  374. (Windows NT) directory.
  375.  
  376. Templates 
  377. ---------
  378. Member template constructors cannot be made "explicit". 
  379.  
  380. Calling Member Functions using Object References
  381. ------------------------------------------------
  382. For properties that return an object by reference using a 
  383. getter function, you cannot then call a member function 
  384. using that object reference directly.  This happens if 
  385. member functions are out of line, and if the property's 
  386. type size is greater than 4 bytes.
  387.  
  388. Example:
  389.  
  390.     class foo {
  391.     public:
  392.         foo() {}
  393.         void __fastcall method();
  394.     };
  395.     
  396.     void __fastcall foo::method() { }
  397.     
  398.     class bar {
  399.     public:
  400.         bar() { }
  401.         foo FProp;
  402.         foo& __fastcall GetProp();
  403.         __property foo& Prop = {read = GetProp};
  404.     };
  405.     
  406.     foo& __fastcall bar::GetProp() { return FProp; }
  407.     
  408.     int main()  //this does not work
  409.     {
  410.         bar x;
  411.         x.Prop.method();
  412.     }
  413.  
  414. You need to assign the result of the property to a local
  415. variable, and then call the method on that local variable.
  416. To fix this, rewrite main as follows:
  417.  
  418.     int main()  //this works now
  419.     {
  420.         bar x;
  421.         foo &temp = x.Prop;
  422.         temp.method();
  423.     }
  424.  
  425. Passing Standard C Functions
  426. ----------------------------
  427. When calling algorithm functions in the standard C++ 
  428. library, standard C functions passed as function 
  429. pointers must use the qualifier std::.
  430.  
  431. Example:
  432.  
  433.     vector<double> vd;
  434.     vector<string> vs;
  435.  
  436.     // will NOT work:
  437.     transform(vs.begin(), vs.end(), vd.begin(), atof); 
  438.     // will work:      
  439.     transform(vs.begin(), vs.end(), vd.begin(), std::atof); 
  440.  
  441. Upgrading C++Builder 3 COM Server Projects
  442. ------------------------------------------
  443. When upgrading COM server projects to C++Builder 4,
  444. you must regenerate the server's Type Library and 
  445. auto-generated C++ files, and refresh the server's 
  446. implementation files, as follows:
  447.  
  448. 1. Open the COM server project in C++Builder 4.0.
  449. 2. Choose View|Type Library.
  450. 3. Select the primary coclass node in the tree view.
  451. 4. Select the Implements page.
  452. 5. Set focus to the primary interface in the table view
  453. 6. Right-click and change any flag (such as 'default').
  454.    IMPORTANT: 
  455.    Now right-click and change it back to the way it was!
  456. 7. Choose File|Save All (this forces the refresh).
  457. 8. Choose Project|Build All.
  458.  
  459. Changes to Import ActiveX Control
  460. ---------------------------------
  461. A separate C++ file (and header) is now generated for 
  462. use as the primary import file when adding ActiveX
  463. controls to the C++Builder component palette.
  464. This is named libname_OCX.CPP (libname_OCX.H).
  465.  
  466. In C++Builder 3.0, the word 'Proxy' was always added
  467. to the internal coclass names of the control. This is
  468. no longer done. Before opening C++Builder 3 projects
  469. that use imported controls, you must import the controls 
  470. into C++Builder 4. If you have existing projects that 
  471. use imported controls whose VCL classname includes the 
  472. appended 'Proxy', add the word 'Proxy' to the 
  473. classnames when importing the controls so references 
  474. in code will still be valid.
  475.  
  476. Be sure that all references to the control's wrapper
  477. files (*_TLB) reference the newly generated files and
  478. not out-of-date ones. The new source files are stored
  479. in the Imports directory by default.
  480.  
  481. The unit.cpp associated with the form on which the
  482. control component is used will have a statement like:
  483.  
  484. #pragma link "libname_TLB"
  485.  
  486. You can remove that line because the file will be
  487. updated automatically with
  488.  
  489. #pragma link "libname_OCX"
  490.  
  491. after saving all, then rebuilding the project.
  492.  
  493. Multiple Versions of VisiBroker (Enterprise edition)
  494. ----------------------------------------------------
  495. As a general rule, you should only install one version 
  496. of the ORB runtime at a time (see the VisiBroker release 
  497. notes for details).
  498.  
  499. You can install multiple versions of VisiBroker on 
  500. the same computer (for example, if you install both 
  501. C++Builder and JBuilder) only if you follow these rules:
  502.   
  503. 1. An application selects the ORB runtime libraries 
  504.    when started based on the PATH environment 
  505.    property. Be sure that each application uses the 
  506.    appropriate PATH so that it loads the correct ORB. 
  507.  
  508. 2. Certain properties are based on registry settings
  509.    set during installation. If distinct applications 
  510.    need to run simultaneously with different registry 
  511.    settings for OSAGENT_PORT or VBROKER_ADM: either 
  512.    (a) reset the registry values using vregedit.exe 
  513.    before starting each application, or (b) override 
  514.    these settings using an environment variable or 
  515.    command-line option when starting each application.
  516.  
  517. If these rules are not followed, you may encounter a memory
  518. exception when compiling IDL files in C++Builder (idl2cpp). 
  519.  
  520. Microsoft Transaction Server (MTS) Issues
  521. -----------------------------------------
  522. If Microsoft Transaction Server (MTS) is installed
  523. before C++Builder 4, you must set MTS POOLING to 
  524. true in the Borland Database Engine (BDE) configuration 
  525. file. Use the BDE Administator to do this. The MTS POOLING 
  526. setting is in the System/Init area of the configuration. 
  527. This setting enables the BDE to use MTS pooling, improving 
  528. the initial connection time when opening a database and
  529. allowing BDE database connections to participate in MTS
  530. transactions.
  531.  
  532. If MTS is installed after C++Builder 4, you must perform
  533. the following steps:
  534.  
  535. 1. Copy DISP.DLL from the RUNIMAGE directory on the
  536.    C++Builder CD into the BDE directory on the host
  537.    computer.
  538.  
  539. 2. Issue the following command:
  540.    REGSVR32 <BDE directory>\DISP.DLL
  541.  
  542. 3. In Transaction Server Explorer, install BDE-MTS
  543.    package:
  544.      a. Right-click on Packages Installed.
  545.      b. Choose New|Package.
  546.      c. Choose Install pre-built packages.
  547.      d. Add the file DISP.PAK from the BDE directory.
  548.  
  549. 4. Set the value of MTS POOLING to true in the
  550.    System/Init section of the BDE configuration.
  551.  
  552. Oracle8
  553. -------
  554. When working with MTS, OBJECT MODE (Oracle8 driver in
  555. BDE configuration) should be set to false.
  556.  
  557. Partition tables are not supported.
  558.  
  559. TDBGrid may have difficulty displaying data when the
  560. associated dataset consists of tables nested too deeply
  561. (generally, five or more levels of nesting).
  562.  
  563. Oracle8 client does not work correctly on Windows 98.
  564. Attempts to use client utilities raises a dialog box:
  565. "Some features of Oracle Version 8 may not run
  566. correctly in Windows 98. For possible updates please
  567. check the Oracle web site". C++Builder displays the BDE 
  568. error "Cannot load driver".
  569.  
  570. The following tools do not fully support Oracle8
  571. object field types:
  572.  
  573.   Database Desktop
  574.   Data Pump
  575.   QuickReport components
  576.   TeeChart component
  577.   DataSetTableProducer and QueryTableProducer
  578.   SQL Builder
  579.   Decision Cube components
  580.   Data dictionary
  581.   Database Explorer
  582.   Database Form Wizard
  583.  
  584. Connection Components and WinSock 2
  585. -----------------------------------
  586. TSocketConnection, TMidasConnection, ScktSrvr, and
  587. ScktSrvc all require WinSock 2. WinSock 2 is installed
  588. with Windows 98 and NT. For Windows 95, download
  589. WinSock 2 from the Microsoft Web site.
  590.  
  591. References to VCL.LIB
  592. ---------------------
  593. Standard Version Only: Developers who are upgrading 
  594. C++Builder 1 projects or those who write their own 
  595. makefiles may encounter linker errors if the makefile 
  596. uses VCL.LIB.
  597.  
  598. If you are using the Standard edition of C++Builder 4, 
  599. do not use the library called VCL.LIB. Replace all 
  600. references to VCL.LIB with vcl40.lib, vclx40.lib, 
  601. dclocx40.lib, and bcbsmp40.lib.  
  602.  
  603. For example, change the following line in C++Builder 1
  604. makefiles:
  605.  
  606. ALLLIB = $(LIBFILES) vcl.lib import32.lib cp32mt.lib
  607.  
  608. to
  609.  
  610. ALLLIB = $(LIBFILES) vcl40.lib vclx40.lib dclocx40.lib 
  611.          bcbsmp40.lib import32.lib cp32mt.lib
  612.  
  613. Upgrading OWL Projects
  614. ----------------------
  615. OWL classes in C++Builder are now placed in the
  616. OWL namespace. Make sure that derived OWL classes 
  617. are in that namespace when you compile. For example, 
  618. if you have declarations like this in your source:
  619.  
  620. class _OWLCLASS TBitmap;
  621.  
  622. you must wrap them in a namespace declaration:
  623.  
  624. namespace OWL
  625. {
  626.     class _OWLCLASS TBitmap;
  627. };
  628.  
  629. In addition, you may need to adjust the resource 
  630. include path in a project converted by IDETOBPR. 
  631. After loading the converted BPR file, invoke 
  632. Project|View makefile, and search for RFLAGS and 
  633. add the OWLFILES path $(BCB)\INCLUDE\OWLFILES 
  634. to that line. 
  635.  
  636. Note that references to $(BCB)\INCLUDE\OBSOLETE 
  637. in the Help system should be changed to 
  638. $(BCB)\INCLUDE\OWLFILES.
  639.  
  640. Addition to the Developer's Guide
  641. ---------------------------------
  642. For component writers: If you want to use components 
  643. written in Delphi in C++Builder, you need to explicitly 
  644. generate unique types to the HPP (see "Declaring Types" 
  645. in Del4OP.HLP).
  646.  
  647. 1. Use $NODEFINE on the unique type symbol
  648. 2. Use $HPPEMIT to output a suitable C++ type definition
  649.  
  650. For example, consider the following Object Pascal code:
  651.  
  652. type
  653.   Temperature = type double;
  654.  
  655. The proper way to handle this is:
  656.  
  657. type
  658.   Temperature = type double;
  659.   (*$NODEFINE Temperature*)
  660.   (*$HPPEMIT 'typedef double Temperature'*)
  661.  
  662. $HPPEMIT directives are output into the 'user supplied' 
  663. section at the top of the HPP in the order in which they are 
  664. encountered in the Pascal file.  There is no way to emit
  665. text at a particular point in the HPP file.
  666.  
  667. Addition to VCTOBPR Documentation
  668. ---------------------------------
  669. Note the following when using the Microsoft Visual C++
  670. Project Conversion Utility:
  671.  
  672. Before converting a Visual C++ project (version 5), be 
  673. sure to move local source file options to the global options
  674. set for the target. Otherwise, the local options will be
  675. lost.
  676.  
  677. Before converting your Visual C++ project, make sure that
  678. the correct output directory is specified in the 
  679. General page of the Project|Settings.
  680.  
  681. When converting a Visual C++ project, you also need to
  682. recompile all OBJ files in C++Builder.
  683.  
  684. 7. INTERNATIONAL ISSUES
  685. =======================================================
  686.  
  687. Menu Shortcut Conflicts
  688. ------------------------
  689. Menu shortcuts in the IDE may conflict with system
  690. shortcuts and international character key
  691. combinations. If you want to disable the Ctrl+Alt hot
  692. keys in the IDE, set this string registry key:
  693.  
  694. HKEY_CURRENT_USER\Software\Borland\Editor\Options\
  695.   NoCtrlAltKeys to "1"
  696.  
  697. Perl-Compatible Regular Expressions
  698. -----------------------------------
  699. For Perl-compatible regular expressions to support locales, 
  700. you must define __USELOCALES__:
  701.  
  702. 1. Copy maketables.c from 
  703.    \Runimage\CBuilder4\Source\RTL\source\pcre 
  704.    to your project directory.
  705. 2. Add maketables.c to your project.
  706. 3. Choose Project|Options. On the Directories/Conditionals
  707.    page, add __USELOCALES__ to the Conditional defines.
  708.  
  709. toupper() and tolower()
  710. -----------------------
  711. If the current locale is not the "C" locale, toupper() and 
  712. tolower() may return incorrect results. To ensure correct 
  713. results, typecast to an unsigned char. For example:
  714.  
  715. int c = toupper('a');  == int c = (unsigned char) toupper('a');
  716.  
  717.  
  718. =======================================================
  719. Unless otherwise noted, all materials provided in this
  720. release are Copyright 1983 - 1999 by Inprise
  721. Corporation.
  722. ======================= END ===========================
  723.  
  724.