Browsing path for Delphereum in Delphi

Delphereum Logo
One of the alternative way to deploy Delphereum sources:
$(BDS)\delphereum; $(BDS)\DelphiBigNumbers\Source; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Interfaces; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Utils; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Utils\Randoms; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Digests; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\Pkcs; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Utils\Encoders; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\RossStandart; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\Oiw; $(BDS)\HashLib4Pascal\src\Interfaces; $(BDS)\HashLib4Pascal\src\Utils; $(BDS)\HashLib4Pascal\src\Base; $(BDS)\HashLib4Pascal\src\KDF; $(BDS)\HashLib4Pascal\src\Nullable; $(BDS)\HashLib4Pascal\src\NullDigest; $(BDS)\HashLib4Pascal\src\Checksum; $(BDS)\HashLib4Pascal\src\Hash32; $(BDS)\HashLib4Pascal\src\Hash64; $(BDS)\HashLib4Pascal\src\Hash128; $(BDS)\HashLib4Pascal\src\Crypto; $(BDS)\HashLib4Pascal\src\Interfaces\IBlake2BParams; $(BDS)\HashLib4Pascal\src\Crypto\Blake2BParams; $(BDS)\HashLib4Pascal\src\Interfaces\IBlake2SParams; $(BDS)\HashLib4Pascal\src\Crypto\Blake2SParams; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\Nist; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\Misc; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\TeleTrust; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\CryptoPro; $(BDS)\SimpleBaseLib4Pascal\SimpleBaseLib\src\Bases; $(BDS)\SimpleBaseLib4Pascal\SimpleBaseLib\src\Utils; $(BDS)\SimpleBaseLib4Pascal\SimpleBaseLib\src\Interfaces; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Prng; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Utils\Rng; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Engines; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Parameters; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\EC; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\EC; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\Sec; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\X9; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Asn1\CryptLib; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\Raw; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\EC\Multiplier; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\EC\Abc; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\Field; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\EC\Custom\Sec; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Math\EC\Custom\Djb; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Signers; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Generators; $(BDS)\CryptoLib4Pascal\CryptoLib\src\Crypto\Macs

Delphereum is a Delphi interface to the Ethereum blockchain that allows for development of native decentralized applications.
$(BDS) is path shortcut which contains the full path to RAD IDE including "Bin" folder. Shortcuts are stored in rsvars.bat.

Web3, Decentralized autonomous organizations, Identity, Ethereum address

Ethereum Logo
Web3 solves these problems by allowing you to control your digital identity with an Ethereum address and ENS profile. Using an Ethereum address provides a single login across platforms that is secure, censorship-resistant, and anonymous.
Quote was taken from Introduction to Web3. ethereum.org
I am tormented by seditious thought: the use of a unique and single address of that Ethereum is not the same "Permanent record", utmost centralization, the authentication token, but created and presented by the very man and by his own will?
Zero-knowledge proofs, however, can simplify authentication for both platforms and users. Once a ZK-proof has been generated using public inputs (e.g., data attesting to the user's membership of the platform) and private inputs (e.g., the user's details), the user can simply present it to authenticate their identity when they need to access the service. This improves the experience for users and frees organizations from the need to store huge amounts of user information.
from Zero-knowledge proofs. ethereum.org

No metadata could be loaded for: BlackfishSQL

Database Explore
Description of the problem is given for Delphi 2007.
Window of "Database Explore"
No metadata could be loaded for: BlackfishSQL
While an attempt to launch the "SQL Window" the Message box with error appeared.

Now is the solution:
While the RAD installation "dataexplore.exe.config" file is stored into the path:
"C:\Users\All Users\{6AF0EFC6-B937-4704-A430-319EB93F4C12}\dbexplr\D3C32C11\E7AAAB64..."
The way with aliases is:
"C:\Documents and Settings\All Users\Application Data..."
The "Database Explore" [dataexplore.exe] turns to the contents of the "Config file" [DataExplore.exe.config] which is in the "C:\Program Files\CodeGear\RAD Studio\5.0\bin" path.
The problem is solved by coping the "Config file" from the directory with "All users" path to the "bin" one!

F1026 File not found: 'DockForm.dcu'

CodeGear Delphi 2007
Migrating to Delphi 2005/2006/2007/2009/2010 and higher ussues while Delphi code modernization trend.
There is no DockForm.pas in Delphi 2005/2006/2007/2009/2010 sources but you can use it in your application.
DockForm with such a name appeared in Delphi 4/5, with name uDockForm was in Delphi 6/7.
This is a piece of humpbacked advice:
Just add "designide" in Project -> Options -> Packages -> Build with runtime packages.
The design time package with the code in it is needed, add to "require" section.
Such an advice is applied for research only purposes.
First: to run the application on a computer where Delphi is not installed, one will need the copy bpl-file is required.
Second: it is not allowed to deploy any of that code, copyright would be infringed. One should never be recompiling the code in the toolsapi source directory.
Stub unit
Unit can be used as a temporary measure, a palliative while migrating to new versions of Delphi
unit DockForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;
type
  TDockableForm = class(TForm)
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DockableForm: TDockableForm;

implementation

{$R *.dfm}

end.

Stub DockForm.dfm
object DockableForm: TDockableForm
...
...
end

If you see "...", this means the code is incomplete and this is done intentionally.
If you are unable to apply this, please contact for assistance.
Вы видите "...", это означает, что код не завершён и сделано это намеренно.
Если вам не удалось применить, обращайтесь за консультацией.

Where is Proxies.dcu? Cannot find unit Proxies.pas

Delphi 6 About Dialog

Delphi code modernization trend

While migrating to new versions, Delphi may lack the Proxies file.
This is a common issue while porting components.
If application or expert uses designtime information in Delphi 6 and later, one have to replace

uses DsgnIntf;

with

uses DesignIntf, DesignEditors;

But then one can run into an error message 'Cannot find unit Proxies.pas'
If this occures in a run-time package then one should separate out the design-time items and put them into a design-time package.
Humpbacked advice: one should then add DesignIde.dcp to the requires section of your design-time package.
Such an advice is applied for research only purposes.
To run the application on a computer where Delphi is not installed, one will need to copy bpl-file. One are not allowed to deploy any of that code.

If the [Pascal Fatal Error] ... : F1026 File not found: 'DesignIntf.dcu' message occurs, one must put designide in the section requires in package.


Stub unit

Can be used as a temporary measure, a palliative while migrating to new versions of Delphi

unit Proxies; interface function IsProxyClass(ComponentClass: TClass): Boolean; implementation function IsProxyClass(ComponentClass: TClass): Boolean; begin ... end; end.


If you see "...", this means the code is incomplete and this is done intentionally.
If you are unable to apply this, please contact for assistance.
Вы видите "...", это означает, что код не завершён и сделано это намеренно.
Если вам не удалось применить, обращайтесь за консультацией.
Переход на новые версии Delphi