View Issue Details

IDProjectCategoryView StatusLast Update
0035101FPCFCLpublic2020-04-01 12:48
ReporterSerge Anvarov Assigned ToJoost van der Sluis  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version3.3.1 
Summary0035101: TRegistry. Patch 3. Unimplemented
DescriptionThese functions are not implemented for Windows (registry) or other platforms (xml):
TRegistry: LoadKey, ReplaceKey, RestoreKey, SaveKey, UnLoadKey, MoveKey.
TRegistryIniFile: ReadBinaryStream, WriteBinaryStream, UpdateFile.

They are explicitly marked as unimplemented, so that a warning is displayed when migrating programs from Delphi.
TagsNo tags attached.
Fixed in Revision44482
FPCOldBugId
FPCTarget-
Attached Files

Activities

Serge Anvarov

2019-02-16 19:35

reporter  

registry3.diff (3,895 bytes)   
Index: packages/fcl-registry/src/registry.pp
===================================================================
--- packages/fcl-registry/src/registry.pp	(revision 41343)
+++ packages/fcl-registry/src/registry.pp	(working copy)
@@ -85,7 +85,7 @@
     function GetKeyInfo(Out Value: TRegKeyInfo): Boolean;
     function HasSubKeys: Boolean;
     function KeyExists(const Key: string): Boolean;
-    function LoadKey(const Key, FileName: string): Boolean;
+    function LoadKey(const Key, FileName: string): Boolean; unimplemented;
     function OpenKey(const Key: string; CanCreate: Boolean): Boolean;
     function OpenKeyReadOnly(const Key: string): Boolean;
     function ReadCurrency(const Name: string): Currency;
@@ -100,10 +100,10 @@
     procedure ReadStringList(const Name: string; AList: TStrings);
     function ReadTime(const Name: string): TDateTime;
     function RegistryConnect(const UNCName: string): Boolean;
-    function ReplaceKey(const Key, FileName, BackUpFileName: string): Boolean;
-    function RestoreKey(const Key, FileName: string): Boolean;
-    function SaveKey(const Key, FileName: string): Boolean;
-    function UnLoadKey(const Key: string): Boolean;
+    function ReplaceKey(const Key, FileName, BackUpFileName: string): Boolean; unimplemented;
+    function RestoreKey(const Key, FileName: string): Boolean; unimplemented;
+    function SaveKey(const Key, FileName: string): Boolean; unimplemented;
+    function UnLoadKey(const Key: string): Boolean; unimplemented;
     function ValueExists(const Name: string): Boolean;
 
     procedure CloseKey;
@@ -110,7 +110,7 @@
     procedure CloseKey(key:HKEY);
     procedure GetKeyNames(Strings: TStrings);
     procedure GetValueNames(Strings: TStrings);
-    procedure MoveKey(const OldName, NewName: string; Delete: Boolean);
+    procedure MoveKey(const OldName, NewName: string; Delete: Boolean); unimplemented;
     procedure RenameValue(const OldName, NewName: string);
     procedure WriteCurrency(const Name: string; Value: Currency);
     procedure WriteBinaryData(const Name: string; var Buffer; BufSize: Integer);
@@ -191,7 +191,7 @@
     function ReadFloat(const Section, Name: string; Default: Double): Double; override;
     function ReadString(const Section, Name, Default: string): string; override;
     function ReadTime(const Section, Name: string; Default: TDateTime): TDateTime; override;
-    function ReadBinaryStream(const Section, Name: string; Value: TStream): Integer; override;
+    function ReadBinaryStream(const Section, Name: string; Value: TStream): Integer; override; unimplemented;
     procedure WriteDate(const Section, Name: string; Value: TDateTime); override;
     procedure WriteDateTime(const Section, Name: string; Value: TDateTime); override;
     procedure WriteFloat(const Section, Name: string; Value: Double); override;
@@ -198,13 +198,13 @@
     procedure WriteInteger(const Section, Name: string; Value: Longint); override;
     procedure WriteString(const Section, Name, Value: String); override;
     procedure WriteTime(const Section, Name: string; Value: TDateTime); override;
-    procedure WriteBinaryStream(const Section, Name: string; Value: TStream); override;
+    procedure WriteBinaryStream(const Section, Name: string; Value: TStream); override; unimplemented;
     procedure ReadSection(const Section: string; Strings: TStrings); override;
     procedure ReadSections(Strings: TStrings); override;
     procedure ReadSectionValues(const Section: string; Strings: TStrings); override;
     procedure EraseSection(const Section: string); override;
     procedure DeleteKey(const Section, Name: String); override;
-    procedure UpdateFile; override;
+    procedure UpdateFile; override; unimplemented;
     function ValueExists(const Section, Ident: string): Boolean; override;
     property RegIniFile: TRegIniFile read FRegIniFile;
   end;
registry3.diff (3,895 bytes)   

Serge Anvarov

2019-04-10 07:12

reporter   ~0115369

Revision 60900. The patch is still actual.

Michael Van Canneyt

2020-04-01 09:45

administrator   ~0121817

Applied patch pending implementation

Issue History

Date Modified Username Field Change
2019-02-16 19:35 Serge Anvarov New Issue
2019-02-16 19:35 Serge Anvarov File Added: registry3.diff
2019-02-17 22:10 Joost van der Sluis Assigned To => Joost van der Sluis
2019-02-17 22:10 Joost van der Sluis Status new => assigned
2019-04-10 07:12 Serge Anvarov Note Added: 0115369
2020-04-01 09:45 Michael Van Canneyt Status assigned => resolved
2020-04-01 09:45 Michael Van Canneyt Resolution open => fixed
2020-04-01 09:45 Michael Van Canneyt Fixed in Revision => 44482
2020-04-01 09:45 Michael Van Canneyt FPCTarget => -
2020-04-01 09:45 Michael Van Canneyt Note Added: 0121817