ちょっと手間なのですが、問題が起きにくいのとリソース重複が発生しないので、属性による 64bit 化もやってみたいと思います。
1.パッケージから x64res の記述を削除する (実行時パッケージから x64res を抜く)。
2.x64Res.rc 及び x64Res.res をすべて削除する。
3.コンポーネントクラスの宣言部に以下のコードを追加する。
{$IF CompilerVersion >= 23.0} [ComponentPlatformsAttribute(pidWin32 or pidWin64)] {$IFEND}
これは RegisterComponent() で登録されるすべてのコンポーネントクラスに追加する必要があります。例えば TLightRep コンポーネントクラスの場合には以下のように属性を追加します。
{ TLightRepコンポネント } {$IF CompilerVersion >= 23.0} [ComponentPlatformsAttribute(pidWin32 or pidWin64)] {$IFEND} TLightRep = class(TCustomPanel) private FOnSetPrinter: TNotifyEvent; ...
{$IF CompilerVersion >= 23.0} のコンパイラ指令がないと、2009~XE では "無効な属性" のワーニングが出てしまいます。
フォルダツリーは以下のようになります。
C:\LR2 ├─Packages │ ├─2009 │ │ dclLR2_120.dpk │ │ dclLR2_120.dproj │ │ dclLR2_120.res │ │ LR2_120.groupproj │ │ rtlLR2_120.dpk │ │ rtlLR2_120.dproj │ │ rtlLR2_120.res │ │ │ ├─2010 │ │ dclLR2_140.dpk │ │ dclLR2_140.dproj │ │ dclLR2_140.res │ │ LR2_140.groupproj │ │ rtlLR2_140.dpk │ │ rtlLR2_140.dproj │ │ rtlLR2_140.res │ │ │ ├─XE │ │ dclLR2_150.dpk │ │ dclLR2_150.dproj │ │ dclLR2_150.res │ │ LR2_150.groupproj │ │ rtlLR2_150.dpk │ │ rtlLR2_150.dproj │ │ rtlLR2_150.res │ │ │ ├─XE2 │ │ dclLR2_160.dpk │ │ dclLR2_160.dproj │ │ dclLR2_160.res │ │ LR2_160.groupproj │ │ rtlLR2_160.dpk │ │ rtlLR2_160.dproj │ │ rtlLR2_160.res │ │ │ ├─XE3 │ │ dclLR2_170.dpk │ │ dclLR2_170.dproj │ │ dclLR2_170.res │ │ LR2_170.groupproj │ │ rtlLR2_170.dpk │ │ rtlLR2_170.dproj │ │ rtlLR2_170.res │ │ │ └─XE4 │ dclLR2_180.dpk │ dclLR2_180.dproj │ dclLR2_180.res │ LR2_180.groupproj │ rtlLR2_180.dpk │ rtlLR2_180.dproj │ rtlLR2_180.res │ └─Source LightRep.pas LightRepEx.pas LightRepEx2.pas LightRepPost.pas LightRepReg.dcr LightRepReg.dfm LightRepReg.pas LRBarImg.dcr LRBarImg.pas LRConsts.pas LRDBSpl.pas LRPrvSpl.pas LRSplReg.dcr LRSplReg.pas LRSplRegp.dcr LRSplRegp.pas LRSuppl.pas LRVer.dfm LRVer.pas Nkdib.inc NkDIB.pas NkDIBUtils.pas NkGraph.pas PostBarcode.res
そして出来た成果物が以下になります。
[LightReport2 Unicode Edition Rel.12 変更点]
- (U) PLATFORMTARGETS ではなく属性による 64bit 化に変更。
日本語環境だと "属性による 64bit 化" の方が後腐れなくていいかもですね。
|