日付 | 0000/00/00 |
---|
64ビット版のプラグインを作成する方法をまとめました。
4D Server 64ビット版(Windows)には, 32ビット版の4D Remote(WindowsまたはMac OS X)で接続し, クライアントは32ビット版, サーバーは64ビット版という構成でアプリケーションが動作します。4Dのメソッド(コンポーネントも含む)は, 32ビット版と64ビット版の混合コンパイルができるので, 同一のストラクチャファイルを32ビット版と64ビット版のサーバーで実行したり, 同一のメソッドを32ビット版のクライアントと64ビット版のサーバーの両方で実行したりすることができます。同じように, プラグインも32ビット版と64ビット版の実行ファイルをバンドルすれば, 両方の環境で使用することができます。
Microsoft Visual Studio Express Edition
4DのプラグインはC/C++言語で作成し, 一般的にはMicrosoft Visual C++などの統合開発環境を使用してビルドされるものです。Visual StudioのProfessional版は64ビットアプリケーションの開発ツールが揃っており, 特別な準備は不要です。フリー版のVisual Studio Express Editionは, Win32専用に調整されているので, これで64ビット版のプラグインをビルドするには少しの準備が必要です。
WIN4DXフォルダ
プラグインの実行ファイル(4DXおよびRSR)をストラクチャと同じ階層のWIN4DX/MAC4DXフォルダに配置するというのは, 4D 2003以前の古い方式です。4D 2004以降, プラグインはストラクチャまたは4D本体と同じ階層のPluginsフォルダにBundle形式で収めることになりました。4D 2004, v11, v12(32ビット版)までは, 引き続きWIN4DX/MAC4DXのプラグインもサポートされていますが, Windowsの32ビット版と64ビット版を区別できないこともあり, WIN4DXフォルダに配置するタイプのプラグインは64ビット版サポートの対象外になりました。64ビット版のプラグインは, Pluginsフォルダに配置されるBundle形式でなければなりません。Bundle形式のプラグインでは, 32ビット版の実行ファイルは従来どおりContents/Windowsサブディレクトリ, 64ビット版の実行ファイルはContents/Windows64サブディレクトリに置かれます。
Microsoft Visual Studio 2010
最新のプラットフォームSDKをインストールします。
Microsoft Windows SDK for Windows 7 and .NET Framework 4
Visual C++ソリューションの構成マネージャーを開きます。
アクティブソリューションプラットフォーム(Win32)をクリックし, 新規作成を選択します。
x64を追加し, 設定のコピー元に「Win32」を指定します。設定のコピー元を指定することにより, 現在の設定の大部分を64ビット版に継承することができます。詳細は下記URLの「Win32 プロジェクト設定を 64 ビット プロジェクト構成にコピーするには」で説明されています。構成マネージャーの操作は以上です。
http://msdn.microsoft.com/ja-jp/library/9yb4317s.aspx
プロジェクトメニューよりプロジェクトのプロパティを選択し, 構成プロパティ/全般/プラットフォームツールセットを構成に合わせて変更します。つまり, 32ビット版の構成であればデフォルト(vc100), 64ビット版の構成であれば「Windows7.1SDK」を選択します。
これをしなかった場合, 次のエラーが発生します。
LINK : fatal error LNK1104: cannot open file 'kernel32.lib'
Bundle形式のプラグインでは, 32ビット版の実行ファイルがContents/Windowsサブディレクトリ, 64ビット版の実行ファイルがContents/Windows64サブディレクトリになければならないので, あらかじめDebugおよびReleaseそれぞれのターゲットにWindows64フォルダを作成しておき, 64ビット版の出力ディレクトリにそこを指定します。構成プロパティの操作は以上です。
あとは通常どおりにプロジェクトをビルドします。
Microsoft Visual Studio 2008
基本的な手順は2010と同じですが, 「プラットフォームSDKをインストールしても構成マネージャーに"x64"が現れないのでレジストリの書き換えが必要」という情報があります。
http://www.sharkpp.net/blog/2009/04/26/visual-c-2008-express-edition-enable-64-program.html
64ビット版のソースコード
一般的な64ビットWindowsアプリケーション作成に関する原則が適用されます。
〜プラグイン作成セミナー参加受付中〜
プラグイン作成セミナーは, 4D v11/v12を使用しており, プラグインの作成に関心を持っている方々が対象です。XCodeおよびVisual Studioを使用し, 4D Plugin Wizardで設定されたプロジェクトにC/C++/Objective-Cコードを追加してコンパイルまたビルドするまでの過程をマスターすることができます。
http://www.4d.com/jp/support/plugin-seminar.html