私は Delphi 2007 でテストしており、グループ プロジェクトは 2 つのパッケージで構成されています。
PackageRun.bpl
これは「ランタイムのみ」とマークされており、「uMyTestRun.pas」という名前のユニットが含まれており、その中で空の TFrame の子孫が定義されています。
unit uMyTestRun;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TMyTest = class(TFrame)
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
end.
PackageDes.bpl
これには PackageRun.bpl が必要で、「設計時のみ」とマークされており、次のコードを記述した「uMyTestDes.pas」という名前のユニットが含まれています。
unit uMyTestDes;
interface
uses
Classes,
uMyTestRun;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('MyComponents', [TMyTest]);
end;
end.
両方のパッケージの出力ディレクトリはライブラリ パスにあります (内部には bpl、dcp、および dcu があります)。
PackageDes.bpl (コンポーネント、パッケージのインストール...、追加...) をインストールしようとすると、次のエラーが発生します。
パッケージ C:\<...>\PackageDes.bpl を読み込めません。不可能なトロヴァーレ イル モジュロ スペシアート。
メッセージの最後の部分は私の OS の言語です。英語では、「指定されたモジュールが見つかりません」のようなものになるはずです。(私のOSはWindows 10 Pro 64bitです)。
PackageDes.bpl は、エラー メッセージに示されているのとまったく同じパス (C:\<...>\PackageDes.bpl) にあります。いくつかのテストの後、uMyTestDes.pas ユニットから次の行を削除すると、エラーが消えることがわかりました。
RegisterComponents('MyComponents', [TMyTest]);
私のコード/プロジェクト/環境に何か問題がありますか?