[yunqa.de] Re: Cannot install component DIRegEx into Delphi Xe5

  • From: Delphi Inspiration <delphi@xxxxxxxx>
  • To: yunqa@xxxxxxxxxxxxx
  • Date: Mon, 17 Feb 2014 23:36:26 +0100

On 16.02.2014 20:00, Steven Brenner wrote:

Cannot install component DIRegEx into Delphi Xe5 having multiple issues:

Just opening the DIRegEx_DXE5.dpk file in Xe5 generates multiple occurrences
of the following error:
"Class TDIRegExMakEdit not found"

Note that DIRegEx\Source and DIRegEx\DXE5\win32 folders are in Library
paths.

You can safely press "Ignore All" to close the error message. After doing so, Delphi XE5 loads the package and in the project manager you can right-click "DIRegEx_XE5.bpl" and from the context menu pick "Build" followed by "Install".

It seems that the "errors" show up because the DIRegEx pattern editor itself uses the DIRegEx components. IMO they should not show until the form "DIRegEx_Workbench_Form.pas" is edited. Which, by the way, is well possible without errors after DIRegEx is installed.

When I try to install it:
"Cannot load package 'DIContainers_DXE5'. It contains unit 'DITypes', which
is contained in package 'DIRegEx_DXE5'."

There was an interface incompatibility between DIContainers 5.0.0 and DIRegEx 8.1.0. I have fixed this with DIContainers 5.1.0, just uploaded. Please download the new version and replace the old one with it.

When installing, make sure you extract DIContainers and DIRegEx into the *same* root folder. Otherwise Delphi may mistake identical files shared by both as different and will likely report type incompatibilities.

The easiest is to install both DIContainers and DIRegEx into a single package:

package Yunqa_DXE5;

{$R 'DIRegEx_Reg.dcr'}

requires
  dclstd;

contains
  DIContainersReg in 'DIContainersReg.pas',
  DIRegEx_Reg in 'DIRegEx_Reg.pas';

end.

This contains the component registration units which pull in the remaining units. Warnings can be ignored.

Save the attached file into the \Source\ directory, open it and install.

I was interested in checking out DlContainers but AddressBook demo requires
DIRegEx.

You do not need to install packages to compile the demo project. Simply extract both DIContainers and DIRegEx into the same folder, "Cancel" the error message Delphi may display when opening a form and compile.

Ralf
package Yunqa_DXE5;

{$R 'DIRegEx_Reg.dcr'}

requires
  dclstd;

contains
  DIContainersReg in 'DIContainersReg.pas',
  DIRegEx_Reg in 'DIRegEx_Reg.pas';

end.

Other related posts: