home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1999 June
/
chip-cd_1999_06.zip
/
06
/
README.TXT
< prev
next >
Wrap
Text File
|
1999-02-03
|
24KB
|
749 lines
***********************************************************
C++BUILDER 4 TRIAL
***********************************************************
This is a full 60-day trial of C++Builder 4. In addition you
can also install trials of the following:
1) InterBase 5.5
To install run \IB5\SETUP.EXE
The Certificate ID and Key are found in \IB5\svrkey.txt
2) Remote Debugging Client
To install run \RDEBUG\SETUP.EXE
In-depth information on C++ Builder 4 including:
- New feature details
- Informational product tours
- Whitepapers
- Solutions sheet
- And more!
Can be found on this CD by pointing your web browser to
\info\webcontent\web\index.html
***********************************************************
C++BUILDER 4 RELEASE NOTES
***********************************************************
This file contains last minute information about C++Builder
and additional helpful information about the product.
TABLE OF CONTENTS
=======================================================
1. WHERE TO FIND INFORMATION
1.1 Information Files
1.2 Online Resources
2. CONTACTING INPRISE
3. CD-ROM AND INSTALLATION DIRECTORY OVERVIEW
3.1 CD-ROM Directories
3.2 Installation Directories
4. UTILITY PROGRAMS
5. DOCUMENTATION
6. ISSUES
7. INTERNATIONAL ISSUES
1. WHERE TO FIND INFORMATION
=======================================================
1.1 Information files
---------------------
The following information files are included with
C++Builder:
File Information contained
------------------------------------------------------
README.TXT Release notes, late-breaking issues
INSTALL.TXT Installation requirements, support
numbers
DEPLOY.TXT Information about deploying C++Builder
applications
LICENSE.TXT C++Builder license agreement
For the Borland Database Engine (BDE) and SQL Links,
the following files are installed in the main BDE
directory located by default in
Program Files\Common Files\Borland Shared\BDE.
File Information contained
------------------------------------------------------
BDEREADME.TXT Release notes for the Borland Database
Engine (BDE) and SQL Links
BDEDEPLOY.TXT Information about deploying BDE and SQL
Links with applications
See the online Help file BCB4NEW.HLP for details on new
features of C++Builder 4.
1.2 Online Resources
--------------------
You can get more information from any of these online
sources:
1.2.1 World Wide Web
--------------------
Check Inprise's Web site regularly. The C++Builder
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/bcppbuilder/
(C++Builder product information)
http://www.inprise.com/devsupport/bcppbuilder/
(C++Builder Developer Support)
http://www.inprise.com/newsgroups/
(Inprise-sponsored newsgroups)
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/
1.2.3 FTP
---------
ftp.inprise.com
(Technical documents available by anonymous ftp.)
1.2.4 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.5 TECHFAX
-------------
1-800-822-4269 (North America)
(Technical documents available by fax.)
2. CONTACTING INPRISE
=======================================================
Inprise offers a range of support services for C++Builder
(and other tools). For information, see the URL:
http://www.inprise.com/programs/assist/
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 C++Builder 4 CD-ROM includes the following files and
directories.
[root]
Contains files used for installation, registration
and text files such as the README.TXT and INSTALL.TXT:
\IB5 Contains the InterBase 5.5 Server.
(Professional edition and higher)
\INSTALL Contains the C++Builder 4 setup program
and related files.
\ISXPRESS Contains InstallShield Express, a
customized application deployment tool
for C++Builder 4.
(Professional edition and higher)
\OLENT Contains OLEnterprise files.
\RDEBUG Contains the files to install the
Remote Debugger. (Enterprise edition)
\RUNIMAGE Contains a complete C++Builder
installation. All files are unpacked
and in the default directory
structure.
\VBROKER Contains VisiBroker for C++ version 3.3.
(Enterprise edition)
\NETSCAPE Netscape Navigator 4.5.
\IE40 Microsoft Internet Explorer 4.0.
\WORKSHOP Contains Resource Workshop version 4.5,
a 16-bit resource editor.
3.2 Installation Directories
----------------------------
These are the default directories (and their contents)
associated with a full C++Builder 4 installation. Some modules
do not come with all editions of C++Builder and these are
noted where applicable.
\Program Files\Borland\CBuilder4\Bin
(C++Builder system files)
\Program Files\Borland\CBuilder4\Doc
(.INT files with object declarations for objects
without source files and the BDE API)
\Program Files\Borland\CBuilder4\Examples
(C++Builder demo programs)
\Program Files\Borland\CBuilder4\Help
(C++Builder online Help files)
\Program Files\Borland\CBuilder4\Imports
(user-created files the compiler needs to find)
\Program Files\Borland\CBuilder4\Include
(C++Builder header and source files)
\Program Files\Borland\CBuilder4\Lib
(C++Builder library files)
\Program Files\Borland\CBuilder4\Objrepos
(Object Repository)
\Program Files\Borland\CBuilder4\Ocx
(Third-party OCX files)
\Program Files\Borland\CBuilder4\Projects
(Location for storing projects)
\Program Files\Borland\CBuilder4\Source
(VCL source .PAS files in Professional edition and
higher)
\Program Files\Borland\Database Desktop
(Database Desktop utility in Professional edition
and higher)
\Program Files\Common Files\Borland Shared\BDE
(Borland Database Engine system files; SQL
Links system files in Professional edition and
higher)
\Program Files\Common Files\Borland Shared\Data
(Sample dBASE and Paradox tables in Professional
edition and higher)
\Program Files\Common Files\Borland Shared\Debugger
(Debugger files)
\Program Files\Common Files\Borland Shared\Images
(Sample image files, button glyphs, splash screen
images, more)
\Program Files\Common Files\Borland Shared\SampleDictionary
(Sample data dictionary in Professional edition and
higher)
\Program Files\Common Files\Borland Shared\MSHelp
(Microsoft SDK Help files)
\Program Files\Borland\vbroker
(VisiBroker for CORBA support in Enterprise edition)
\Runimage\CBuilder4\Windows
(Windows system files)
4. UTILITY PROGRAMS
=======================================================
C++Builder 4 comes with a number of helper, utility
applications including:
Resource compiler
BRCC32.EXE, in ..\CBuilder4\Bin
Database Explorer (Pro Edition) or
SQL Explorer (Enterprise edition)
DBEXPLOR.EXE, in ..\CBuilder4\Bin
Database Desktop (Pro edition or higher)
DBD32.EXE, in \Program Files\Borland\Database Desktop
GREP
GREP.EXE, in ..\CBuilder4\Bin
Image Editor
IMAGEDIT.EXE, in ..\CBuilder4\Bin
Make utility
MAKE.EXE, in ..\CBuilder4\Bin
MTS installation (Enterprise edition)
MTSINST.EXE, in ..\CBuilder4\Bin
OpenHelp Help customization tool
(Pro edition or higher)
OH.EXE, in ..\CBuilder4\Bin
Package Component Editor
(Pro edition or higher)
PCE.EXE, in ..\CBuilder4\Bin
Project Conversion utility
IDETOBPR.EXE, in ..\CBuilder4\Bin
SQL Monitor (Enterprise edition)
SQLMON.EXE, in ..\CBuilder4\Bin
Type Library Wrapper File Generator
TLIBIMP.EXE, in ..\CBuilder4\Bin
TDump
TDUMP.EXE, in ..\CBuilder4\Bin
TRegSrvr
TREGSRVR.EXE, in ..\CBuilder4\Bin
Visual C++ Conversion Wizard
VCTOBPRU.EXE, in ..\CBuilder4\Bin
For information on more tools, see BCB4TOOL.HLP.
5. DOCUMENTATION
=======================================================
The C++Builder 4 on-line documentation consists primarily
of the following Windows Help files:
File Purpose
------------ -----------------------------------
BCB4.HLP Main C++Builder Help
BCB4COM.HLP Developing COM-based Applications
BCB4CW.HLP Creating Custom Components
BCB4DAP.HLP Writing Distributed Applications
BCB4DBD.HLP Developing Database Applications
BCB4ERRS.HLP Error Messages and Warnings
BCB4LANG.HLP C++Builder Language Guide
BCB4NEW.HLP What's New and Upgrading to C++Builder 4
BCB4PROG.HLP Programming with C++Builder
BCB4RTL.HLP C Runtime Library Reference
BCB4SCL.HLP Standard C++ Library
BCB4VCL.HLP VCL Reference
BCB4TOOL.HLP Command-line Tools
DEL4OP.HLP Object Pascal Reference
OPENHELP.HLP Customizing Help
Refer to BCB4NEW.HLP for a list of new features.
Read "Upgrading to C++Builder 4" in BCB4NEW.HLP for
information about compatibility with previous releases.
Look in the Help directory for other related Help files.
6. ISSUES
=======================================================
Following are issues of interest to C++Builder
developers.
Installing on Windows 98
------------------------
You may have problems installing on Windows 98 when
using the Browse button to change directories with some
Client for NetWare Drivers. For information, refer to the
knowledgebase document Q102400 at www.installshield.com.
Using COM
---------
Console-mode clients must include VCL support in order
to talk to DCOM servers built in C++Builder.
BORDBK41.DLL Missing or Not Registered
--------------------------------------
If you do not reboot your computer after installation,
you may see a message stating that BORDBK41.DLL is
missing or not registered when you build a blank form.
Reboot the computer. If you still receive the message,
manually register the DLL using TRegSvr.exe in the
Bin directory:
TREGSVR <path to BORDBK41.DLL>
The default path is
C:\Program Files\Common Files\Borland Shared\Debugger\BORDBK41.DLL
Using ClassExplorer
-------------------
ClassExplorer, by design, shows information on classes found
in header files that you include in your project within
double quotes. To see information in classes in headers
included within angle brackets, change the angle brackets
to double quotes.
Uninstalling Delphi
-------------------
You can run Delphi and C++Builder on the same computer.
If you uninstall Delphi after installing C++Builder,
however, all .BPL files residing in the Windows system
directory will be deleted including those you need
for C++Builder.
After uninstalling Delphi, you'll need to recopy the .BPL
files from the C++Builder CD. Copy all BPL files (*.BPL)
from Runimage\CBuilder4\Windows\System32 and put them in
your \Windows\System (Windows 95 and 98) or \Winnt\System32
(Windows NT) directory.
Templates
---------
Member template constructors cannot be made "explicit".
Calling Member Functions using Object References
------------------------------------------------
For properties that return an object by reference using a
getter function, you cannot then call a member function
using that object reference directly. This happens if
member functions are out of line, and if the property's
type size is greater than 4 bytes.
Example:
class foo {
public:
foo() {}
void __fastcall method();
};
void __fastcall foo::method() { }
class bar {
public:
bar() { }
foo FProp;
foo& __fastcall GetProp();
__property foo& Prop = {read = GetProp};
};
foo& __fastcall bar::GetProp() { return FProp; }
int main() //this does not work
{
bar x;
x.Prop.method();
}
You need to assign the result of the property to a local
variable, and then call the method on that local variable.
To fix this, rewrite main as follows:
int main() //this works now
{
bar x;
foo &temp = x.Prop;
temp.method();
}
Passing Standard C Functions
----------------------------
When calling algorithm functions in the standard C++
library, standard C functions passed as function
pointers must use the qualifier std::.
Example:
vector<double> vd;
vector<string> vs;
// will NOT work:
transform(vs.begin(), vs.end(), vd.begin(), atof);
// will work:
transform(vs.begin(), vs.end(), vd.begin(), std::atof);
Upgrading C++Builder 3 COM Server Projects
------------------------------------------
When upgrading COM server projects to C++Builder 4,
you must regenerate the server's Type Library and
auto-generated C++ files, and refresh the server's
implementation files, as follows:
1. Open the COM server project in C++Builder 4.0.
2. Choose View|Type Library.
3. Select the primary coclass node in the tree view.
4. Select the Implements page.
5. Set focus to the primary interface in the table view
6. Right-click and change any flag (such as 'default').
IMPORTANT:
Now right-click and change it back to the way it was!
7. Choose File|Save All (this forces the refresh).
8. Choose Project|Build All.
Changes to Import ActiveX Control
---------------------------------
A separate C++ file (and header) is now generated for
use as the primary import file when adding ActiveX
controls to the C++Builder component palette.
This is named libname_OCX.CPP (libname_OCX.H).
In C++Builder 3.0, the word 'Proxy' was always added
to the internal coclass names of the control. This is
no longer done. Before opening C++Builder 3 projects
that use imported controls, you must import the controls
into C++Builder 4. If you have existing projects that
use imported controls whose VCL classname includes the
appended 'Proxy', add the word 'Proxy' to the
classnames when importing the controls so references
in code will still be valid.
Be sure that all references to the control's wrapper
files (*_TLB) reference the newly generated files and
not out-of-date ones. The new source files are stored
in the Imports directory by default.
The unit.cpp associated with the form on which the
control component is used will have a statement like:
#pragma link "libname_TLB"
You can remove that line because the file will be
updated automatically with
#pragma link "libname_OCX"
after saving all, then rebuilding the project.
Multiple Versions of VisiBroker (Enterprise edition)
----------------------------------------------------
As a general rule, you should only install one version
of the ORB runtime at a time (see the VisiBroker release
notes for details).
You can install multiple versions of VisiBroker on
the same computer (for example, if you install both
C++Builder and JBuilder) only if you follow these rules:
1. An application selects the ORB runtime libraries
when started based on the PATH environment
property. Be sure that each application uses the
appropriate PATH so that it loads the correct ORB.
2. Certain properties are based on registry settings
set during installation. If distinct applications
need to run simultaneously with different registry
settings for OSAGENT_PORT or VBROKER_ADM: either
(a) reset the registry values using vregedit.exe
before starting each application, or (b) override
these settings using an environment variable or
command-line option when starting each application.
If these rules are not followed, you may encounter a memory
exception when compiling IDL files in C++Builder (idl2cpp).
Microsoft Transaction Server (MTS) Issues
-----------------------------------------
If Microsoft Transaction Server (MTS) is installed
before C++Builder 4, you must set 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 C++Builder 4, you must perform
the following steps:
1. Copy DISP.DLL from the RUNIMAGE directory on the
C++Builder 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 the 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.
Oracle8
-------
When working with MTS, OBJECT MODE (Oracle8 driver in
BDE configuration) should be set to false.
Partition tables are not supported.
TDBGrid may have difficulty displaying data when the
associated dataset consists of tables nested too deeply
(generally, five or more levels of nesting).
Oracle8 client does not work correctly on Windows 98.
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". C++Builder displays the BDE
error "Cannot load driver".
The following tools do not fully support Oracle8
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
Connection Components and WinSock 2
-----------------------------------
TSocketConnection, TMidasConnection, ScktSrvr, and
ScktSrvc all require WinSock 2. WinSock 2 is installed
with Windows 98 and NT. For Windows 95, download
WinSock 2 from the Microsoft Web site.
References to VCL.LIB
---------------------
Standard Version Only: Developers who are upgrading
C++Builder 1 projects or those who write their own
makefiles may encounter linker errors if the makefile
uses VCL.LIB.
If you are using the Standard edition of C++Builder 4,
do not use the library called VCL.LIB. Replace all
references to VCL.LIB with vcl40.lib, vclx40.lib,
dclocx40.lib, and bcbsmp40.lib.
For example, change the following line in C++Builder 1
makefiles:
ALLLIB = $(LIBFILES) vcl.lib import32.lib cp32mt.lib
to
ALLLIB = $(LIBFILES) vcl40.lib vclx40.lib dclocx40.lib
bcbsmp40.lib import32.lib cp32mt.lib
Upgrading OWL Projects
----------------------
OWL classes in C++Builder are now placed in the
OWL namespace. Make sure that derived OWL classes
are in that namespace when you compile. For example,
if you have declarations like this in your source:
class _OWLCLASS TBitmap;
you must wrap them in a namespace declaration:
namespace OWL
{
class _OWLCLASS TBitmap;
};
In addition, you may need to adjust the resource
include path in a project converted by IDETOBPR.
After loading the converted BPR file, invoke
Project|View makefile, and search for RFLAGS and
add the OWLFILES path $(BCB)\INCLUDE\OWLFILES
to that line.
Note that references to $(BCB)\INCLUDE\OBSOLETE
in the Help system should be changed to
$(BCB)\INCLUDE\OWLFILES.
Addition to the Developer's Guide
---------------------------------
For component writers: If you want to use components
written in Delphi in C++Builder, you need to explicitly
generate unique types to the HPP (see "Declaring Types"
in Del4OP.HLP).
1. Use $NODEFINE on the unique type symbol
2. Use $HPPEMIT to output a suitable C++ type definition
For example, consider the following Object Pascal code:
type
Temperature = type double;
The proper way to handle this is:
type
Temperature = type double;
(*$NODEFINE Temperature*)
(*$HPPEMIT 'typedef double Temperature'*)
$HPPEMIT directives are output into the 'user supplied'
section at the top of the HPP in the order in which they are
encountered in the Pascal file. There is no way to emit
text at a particular point in the HPP file.
Addition to VCTOBPR Documentation
---------------------------------
Note the following when using the Microsoft Visual C++
Project Conversion Utility:
Before converting a Visual C++ project (version 5), be
sure to move local source file options to the global options
set for the target. Otherwise, the local options will be
lost.
Before converting your Visual C++ project, make sure that
the correct output directory is specified in the
General page of the Project|Settings.
When converting a Visual C++ project, you also need to
recompile all OBJ files in C++Builder.
7. INTERNATIONAL ISSUES
=======================================================
Menu Shortcut Conflicts
------------------------
Menu shortcuts in the IDE may conflict with system
shortcuts 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"
Perl-Compatible Regular Expressions
-----------------------------------
For Perl-compatible regular expressions to support locales,
you must define __USELOCALES__:
1. Copy maketables.c from
\Runimage\CBuilder4\Source\RTL\source\pcre
to your project directory.
2. Add maketables.c to your project.
3. Choose Project|Options. On the Directories/Conditionals
page, add __USELOCALES__ to the Conditional defines.
toupper() and tolower()
-----------------------
If the current locale is not the "C" locale, toupper() and
tolower() may return incorrect results. To ensure correct
results, typecast to an unsigned char. For example:
int c = toupper('a'); == int c = (unsigned char) toupper('a');
=======================================================
Unless otherwise noted, all materials provided in this
release are Copyright 1983 - 1999 by Inprise
Corporation.
======================= END ===========================