HOME

  • 델파이 7 업데이트 발표.
델파이 7의 첫번째 업데이트가 발표 되었습니다.

아래는 원문 입니다.

ISSUES ADDRESSED BY THIS UPDATE

This readme lists the maintenance for all editions of Delphi 7;
not all of the features mentioned in this file are available in
all editions of the product.

This update resolves the following issues:

IDE

* Using the up/down arrow keys to navigate and select items from
  the Code Completion window sometimes skips items (Quality
  Central 2875).
  
* In the Project Manager, units are incorrectly displayed in the
  order that they are listed in the USES clause, rather than
  alphabetically.

=======================================================
  
CORE DATABASE

* TFMTBCDField initializes to size 8 instead of size 4, allowing
  the system to initialize precision to 7 and size to 8
  (Quality Central 5938).
  
* Using a TDBLookupComboBox to display a list of data given
  by a detail TQuery results in the error "Field '' not found"
  (Quality Central 5384 and 4823).
  
* TDBRadioGroup maintains its focus on the most recently
  selected item, even after an edit has been canceled
  (Quality Central 2109).
  
=======================================================

DATASNAP

* After deleting a row from a TClientDataset, sometimes the
  delta dataset still contains a record.  This happens if you
  populate the Nested Dataset field before populating another
  field that precedes it in the field order.
  
* The TClientDataSet.ApplyUpdates method fails if the dataset
  contains only changes to fields that have the
  ProviderFlags.pfnUpdate property set to False
  (Quality Central 2338).
  
* TClientDataSet does not order correctly on a TLargeIntField
  when used in an index or in the IndexFieldNames property
  (Quality Central 1050 & 2626)
  
* TAggregateField returns an incorrect value after a
  filter was used and then cleared (Quality Central 1712).

* A "Key violation" exception may incorrectly be generated
  when using poFetchDetailsOnDemand with a nested dataset that
  also has an InternalCalc field (Quality Central 2011).
  
* TClientDataSet may contain invalid Delta entries when using
  poPropogateChanges. (Quality Central 2019 & 2333).
  
* Editing the value of an InternalCalc field on a nested
  TClientDataset causes the ChangeCount property of the
  parent dataset to increase (Quality Central 2027).
  
* A TLargeIntField cannot be used as a linking field in a
  master/detail relationship.  Doing so results in the
  error "Cannot access field <fieldname> as type variant."
  
* TClientDataSet doesn't save data to file when FileName is
  set and there is no existing file on disk
  (Quality Central 2307).
  
* Using the Delphi 7 version of midas.dll to open an XML file
  that was saved with the Delphi 6 version of midas.dll results
  in an illegal operation.
  
* Incorrect filter expression parsing occurs when parsing a
  value that contains a quote in TClientDataSet. The expression
  parser incorrectly treats the rest of the expression as a
  formula (Quality Central 1266).
  
* TClientDataSet.ChangeCount will return an incorrect value
  when editing the value of a TStringField or a
  TWideStringField and then reverting it to the original value
  (Quality Central 2717 & 4508).
  
* Canceling an update to an individual field by assigning the
  "unassigned" (varEmpty) value to TField.NewValue in the
  TDataSetProvider.BeforeUpdateRecord event handler does not
  work (Quality Central 3660).
  
* TClientDataset InternalCalc fields are reset to null after
  calling the ApplyUpdates method when using
  poPropogateChanges (Quality Central  3777).
  
* When using incremental fetching on a TClientDataset with
  parameters, the associated TDatasetProvider will repeatedly
  return the same set of records (Quality Central 3515).
  
* TClientDataset.FindKey will fail with an list index error
  when used on a cloned nested dataset (Quality Central 3786).
  
* When the size of a Persistent field in TClientDataSet is set
  too large, it overwrites neighboring fields upon Post
  (Quality Central 3974).
  
* TDataSetProvider generates incorrect SQL in response to a
  RefreshRecord request in some cases and fails to update
  all fields properly (Quality Central 4014).
  
* When TDataSetProvider obtains the DB 'current' values
  after an update conflict, it does so against the wrong
  fields (Quality Central 4006).
  
* TClientDataSet.Delete fails with the error "Cannot
  delete master record with details" even when all of the
  details are deleted if the detail table was previously
  cloned (Quality Central 5646).

* In some cases, records may disappear from a nested
  TClientDataset after performing edits, applying updates
  and calling refresh (Quality Central 7287).
  
* When multiple indexes are included with the data from a
  provider, the IndexDef entries in the TClientDataset
  will show duplicate 'Fields' and 'DescFields' values
  (Quality Central 7543).
  
* When updating blob fields in a TClientDataset with the
  LogChanges property set to False, blob data is lost
  from other unrelated records (Quality Central 6591).
  
* Using a Filter or Locate with a TLargeIntField on a
  TClientDataSet will always fail with the error
  "Constant is not correct type".
  (Quality Central 6142 & 3496).
  
* Calling the CancelRange method on nested TClientDataset
  will cause all records for every master record to be
  displayed (Quality Central 4301).
  
* When using RefreshRecord on a Memo or Blobfield and the field
  has been modified by another user, the blobsize of that field
  does not change if it is less than before (Quality Central 4676).

* Calling the TClientDataset.Locate method on a TWordField
  always returns false (Quality Central 5319).

* Using the TDataSetProvider poFetchDetailsOnDemand option
  with a server-side master/detail definition (nested dataset
  on the client side) raises an exception when the master
  TClientDataset is opened (Quality Central 5707).

* TClientDataset may create an incorrect delta when inserting
  new master and detail records and then editing the same
  master record a second time (Quality Central 6849).
  
* The assignment of a LargeInt field to another LargeInt field
  fails when the destination and source are both TLargeIntFields
  (Quality Central 6393).

* When Params are passed from a TClientDataSet to a
  TDatasetProvider, the Size,Precision, and NumericScale property
  settings are lost (Quality Central 6308).
  
* TClientDataSet allocates values against nested dataset
  AutoInc fields but it should not (Quality Central 5509).

* When using a TimeStamp type parameter with a TClientDataSet an
  error occurs when the parameter is passed to the server
  (Quality Central 6372).
  
* Setting MTSDataModule.AutoComplete to False in the IDE is
  overridden and set back to True at run time (Quality Central
  4716).

* Calls to ApplyUpdates(-1) on a TMTSDataModule do not work
  properly (Quality Central 6906).
  
=======================================================

DBGO (ADO Components)

* Using TParameter.Assign(TParam) or TParam.Assign(TParameter)
  causes incorrect settings of the Size, NumericScale, and
  Precision properties (Quality Central 6366).
  
* When values in persistent TMemoFields are returned after
  reading a row of a TADOTable, the values are truncated at the
  first occurrence of #0 (Quality Central 2771).
  
* When using TADOQuery to get a result set from a SQL query, the
  SQL statement gets prepared but never gets unprepared
  Quality Central 3635).
  
* With a query, when using cursorType set to ctOpenForwardOnly
  and cursorLocation set to clUseServer, the "First" method will
  move the cursor position to the second record (Quality Central
  4769).
    
* Setting the value of a TLargeInt field to a negative value in
  an ADODataSet and calling Post results in the error "Multiple-
  step operation generated errors. Check each status value"
  (Quality Central 2106).
  
* When using a SQL Server 2000 table with a BigInt or decimal
  columns, negative values are incorrectly returned as positive
  values by ADO components (Quality Central 2379 & 998).

=======================================================

dbExpress COMPONENTS

* When including the line delimiter ";" at the end of a select
  statement in TSQLQuery, then using the query and a
  TDataProvider to give data to a CDS, you cannot apply updates
  without encountering a the syntax error "Token unknown."

* Updating on a TSQLQuery with  either a WHERE clause or when
  adding a delimiter ";" results in the error "Unable to find
  record, no key specified."
  
* When using TSQLConnection and TSimpleDataSet to access a MySQL
  database, it is impossible to add new records to a table that
  has an auto-increment primary key (Quality Central 5465).
  
* When using the MySql driver, erroneous state information about
  the number of active statements with respect to a
  TSQLConnection might result in a transaction starting on one
  connection and a commit or rollback happening on another
  connection (Quality Central 1074).
  
* Updating on TSQLQuery with either a WHERE clause or when adding a
  delimiter ";" results in the error "Unable to find record, no
  key specified" (Quality Central 5550).
  
* When using TSQLQuery to add calculated fields, OnCalcFields
  fails on the first record, because all of the fields in the
  first record are empty after OnCalcFields is called (Quality
  Central 1328).
  
* Calling TSQLConnection.getTableNames() to retrieve system
  tables takes too long.

* Using TSQLConnection.CloneConnection may result in the loss of
  the TableScope status for a new connection (Quality Central
  5867).

=======================================================

dbExpress CORE DRIVER AND METADATA

* DB2 V8 Support - Index Metadata retrieval:  (Quality Central
  4150) Querying for a table with a unique index fails with
  "Cannot convert a variant of type (Null) to type (String)"

* DB2 V8 Support - Fetching a stored procedure parameter fails.

* MySQL 4.0.x support (Quality Central 3731).

* MySQL driver supports only the default Port (Quality Central 3736).

* MySQL SQLCommand.GetRowsAffected returns 0 on successful
  updates (Quality Central 4504).

* MySQL TimeStamp comes back as NOT NULL always (Quality
  Central 4689).

* MySQL metadata causing data truncation (Quality Central
  4160).

* AV on SQLCommand.Close() in MySQL driver (Quality Central
  5819).

* MySQL metadata is retrieved from wrong database (Quality
  Central 4130).

* An MSSQL stored procedure with long names causes memory
  corruption (Quality Central 3225).

* The MSSQL driver leaks resources on repeated SQL execution
  (Quality Central 4059).

* MSSQL TimeStamp fraction part rounding error while fetching
  data.

* MSSQL - ExecDirect() does not return the RowsAffected.

* MSSQL return parameter is not available from a stored
  procedure returning cursor/cursors (Quality Central 3763).

* An MSSQL stored procedure with no parameters causes memory
  corruption.

* An MSSQL stored procedure does not return @@IDENTITY after a
  SP execution. The identity value is returned only on the third
  execution.

* ORACLE Functions are now supported (Quality Central 4051).

* ORACLE SQLCommand.getParameter() always returns the NULL
  indicator as True (Quality Central 4018).

* InterBase - Support for BOOLEAN data type has been added.

=======================================================

dbExpress VENDOR ISSUES

* MySQL -  Data truncation resulted as the cursor level metadata
  is incorrect. MySQLField.length is 1024 for the second columns
  after describing the SQL "Show create table tablename".  -
  (Quality Central - 1810)

* MSSQL - SubQuery parameter binding causes an AV in MSVCRT7.DLL
  (Quality Central 2767) - MS bug. Case # SRX030728604937.

* MSSQL Null parameter binding on a NOT NULL INTEGER columns
  fails with a SQL Error "SQL State:HY000, SQLError Code:0
  Invalid input parameter values" - MS bug Case
  #SRX030728605044. dbExpress MSSQL driver calls
  IDBCommand.Prepare() and that seems to cause this bug in
  SQLOLEDB.DLL.

=======================================================

dbExpress CERTIFICATION

dbExpress has been certified with the following database
versions:

InterBase 7.1  (*Driver should also work with InterBase 6.5, 7.0)
Oracle 9.1.0   (*Driver should also work with ORACLE 9.2.0)
DB2 UDB 8.x    (*Driver should also work with DB2 V7)
MSSQL 2000
Informix 9.x
MySQL 4.0.18

* The driver should work with these database versions, however,
   it has not been fully certified with these versions.
  
=======================================================

INTERNET/WEBSNAP

* Procedure TSockWebResponse.SendResponse contains code that
  causes an incomplete response.  

=======================================================

ACTIVEX

* On Windows 98 SE, registering an OLE-server on a a shared
  mapped drive and then starting the program from a non-UNC path
  drive results in an endless loop (Quality Central 3151).
  
* ShortToLongFileName fails on some UNC paths, which makes TComServer
  fail when the executable is located on a remote computer
  (Quality Central 3049).
  
* Additional methods begin with GhostMethod_ are added to
  interface declarations which would not appear in Delphi 6
  (Quality Central 3426).
  
* SetOlePicture distorts the target TPicture size (Quality
  Central 4137).

=======================================================

COMPILER

* String values containing a NUL character (ASCII 0) are
  truncated at the location of the NUL character when assigned
  to a variant.
  
* Assigning a partially empty multi-dimensional dynamic array to
  a variant causes an access violation.
  
* Converting an empty dynamic array to a variant array results
  in a non-empty variant array with the wrong bounds.
  
* Assert fails to break and leaves an FPU invalid op exception set
  (Quality Central 5248).
  
* Under some circumstances, optimization causes an access
  violation on a call to a dynamic + safecall method (Quality
  Central 5071).
  
=======================================================

RTL

* In System.pas, function LoadResString(ResStringRec:
  PResStringRec): string; has a hard-coded buffer of 1024
  characters, which causes resource string table entries in
  excess of 1023 characters to be truncated (Quality Central
  7581).
  
* ZLIB.TDeCompressionStream.Read returns results that can cause
  an infinite loop with existing code.
  
* On Windows Server 2003, calls to SysUtils.GetEnvironmentVariable
  fail with an access violation wHen the requested
  environment variable does not exist (Quality Central 4319).

=======================================================

VCL

* Context and keyword help does not fire for the OnHelp events.

* Selecting a zero length (empty) item in drop-down combo box
  results in an access violation in ntdll.dll.
  
* Attempting to delete a single item from the TComboBoxEx ItemEx
  list, that item and the next item are deleted (Quality Central
  3991).
  
* Calling TBitmap.Assign(nil) may result in a GDI resource leak
  (Quality Central 2511).
  
* TRegistry class leaks a register key handle if LazyWrite is set to
  False.
  
* THashedStringList ignores the NameValueSeparator property
  (Quality Central 5632).
  
* In a DBCS environment, an exe filename that includes DBCS
  characters often garbles Application.Title (Quality Central
  5089).
  
* Menu items and images are sometimes drawn partially in black
  on Windows XP systems that have themes disabled (Quality Central
  2341).
  
* When a variant array item is a string with embedded null
  characters (#0), Delphi treats those items as null-terminated
  strings when the string is assigned to an item of variant
  array (Quality Central 6078).
  
* When the ValueListEditor Visible property is set to False, making
  it visible and adding a string at runtime may cause an access
  violation (Quality Central 4953).
  
* When connected to a network printer and the system hosting the
  network printer is offline, Printer.PageWidth may cause an
  access violation in GDI32.DLL (Quality Central 757).

* The OldCreateOrder property for a form that inherits from
  another form is automatically set to True when the form is
  saved (Quality Central 1675).
  
* When ending a Windows session (either by using Log Off or Shut
  Down) while a VCL-based Delphi application is running, no
  OnDestroy events on the application's forms are called, nor
  are any finalization sections executed. This may result in
  lost data and user settings (Quality Central 5332).
  
=======================================================
  
VCL - ACTIONBANDS

* For users who have installed the unofficial ActionBand patch
  (IDs 19151 and 18870) from the Borland CodeCentral web site,
  installing the Delphi 7.1 Update will remove the
  TPopUpActionBarEx component.

* The standard menu color scheme now correctly handles the flat
  menu style (see SPI_GETFLATMENU in MSDN).

* Fixed an issue regarding auto hotkey calculation.

* ActionBands with background bitmaps are now painted corrected.

* Application hints are now updated correctly.

* TActionMainMenuBar now functions correctly in MDI
  applications.

* Setting ActionBand popup menu colors now works correctly.

* F1 help on ActionBand menus has been fixed.

* Fixed issue regarding ActionBand menus no longer respond to
  Ctrl-key combinations.

* Positioning menus with Ctrl-arrow key combinations now works.

* Menu items can now be selected with the right mouse button.

* Arrow keys now function within a menu even if the Alt key is
  held down.

* Pop-up menu shadows are now displayed on Windows 2000.

* The Customize dialog now correctly shows actions from linked
  ActionLists.

* The TActionManager.AddSeparator method now adds separators
  correctly.

* A submenu's parent item is now reselected if the mouse leaves
  the parent item but passes over the submenu before it closes.

* The drawing of the XP style menu buttons has been improved.

* Standard style menu button painting logic has been corrected.

* TCustomizeActionBars action now works even when it is not in a
  TActionManager but its ActionManager property is assigned.

* Drawing problems with drop-down buttons on TActionToolbar
  for both XP and Standard styles have been fixed.

* Dragging a category over a menu item and then over a
  TActionToolBar no longer yields an access violation.

* Handling of main menu buttons for MDI applications is fixed.
  
=======================================================

THIRD PARTY - BOLD FOR DELPHI

* SQLDatabaseConfig now contains settings for database evolution
  scripts (separator, terminator and commands for transaction
  start/commit). Logs can be saved from the evolution dialog
  (Quality Central 4679).
  
* BoldSelectChangeAction in BoldComboBox is now triggered more
  appropriately on incremental searches (Quality Central 2827).

* A potential infinite recursion problem in
  TBoldUnOrderedIndexableList.KnowsSupportsNil has been fixed.

* An assert with side-effects in TBoldObjectList.GetBoldObject
  has been changed. This affects debug dcus only.

* TBoldUMLModelValidator.ValidateClass no longer has a bad format
  string for one error.

* TBoldDbDataValidator.Validate no longer validates without
  running any tests when not connected to a database.

* DBDataValidation no longer fails on parent or child mapped
  classes.

* Performance of XMI Import has been improved (Quality Central 2827) .

* XMI Export now correctly exports multiplicity 0..n.

* Transaction grouping in optimistic locking has been improved
  by performing checks in the same transaction as the update
  (Quality Central 3123).

* A memory leak in the Object Lending Library has been fixed
  (Quality Central 3648).

* Several issues with BoldGrid and goTabs have been resolved
  (Quality Central 3903 and 3904).

* Saving modified multilinks no longer yields an index out of
  bounds condition under certain conditions (Quality Central
  4870).

* BoldSystemDebuggerForm no longer yields an access violation on
  the second invocation from a Bold Action (Quality Central
  6482).

* Certain combinations of tableMapping=Child and abstract
  classes have been improved (Quality Central 7110).

* The OCL operation includesAll no longer returns false when it
  should return true (Quality Central 3146).

* An Import problem with "Error: Class is already a relation class for
  another association" has been fixed (Quality Central 3093).

* TBoldEnvironmentConfiguration.DeactivateQueue no longer yields
  an access violation during finalization (Quality Central
  3227).

* An access violation in BoldMemoryManager during finalization
  of multi-threaded applications has been fixed.

* Model validation no longer incorrectly warns against parent
  mapped classes with derived attributes not allowing null.

* Relating objects belonging to different Bold systems is no
  longer allowed.

* Instructions for compiling IDL files have been improved.


델파이 7 업데이트는 다음의 위치에서 다운받으실 수 있습니다.

아키텍트, 엔터프라이즈 에디션:
http://file.borlandforum.com/delphi/Delphi7Update/d7_ent_upd1.exe
프로페셔널 에디션:
http://file.borlandforum.com/delphi/Delphi7Update/d7_pro_upd1.exe
퍼스널 에디션:
http://file.borlandforum.com/delphi/Delphi7Update/d7_std_upd1.exe

0  COMMENTS