[]
MultiRowのバージョン管理ポリシーとアセンブリの関係について説明します。
.NET Frameworkには、厳密なアセンブリ識別機構が盛り込まれており、Visual Studioで作成した実行ファイルやアセンブリは、それらが依存するアセンブリを名前とバージョンおよびその他の情報を使って判別します。
この仕組みは、DLL Hellを解消するためのもので、間違ったバージョンのアセンブリを参照することによる誤動作を避け、本来のバージョンのアセンブリを確実に参照することを目的としています。この機構により、Visual Studioで作成した実行ファイルやアセンブリは、それらが依存するアセンブリと同名のアセンブリが存在していても、アセンブリバージョンが一致しなければ動作しません。
プロジェクトで使用しているアセンブリのアセンブリバージョンとファイルバージョンは以下の手順で確認できます。
Visual Studioを起動し対象となるプロジェクトを開きます。
フォームの[デザイン]ページでGcMultiRowのコントロールを選択します。
プロパティウィンドウで[バージョン情報]のリンクをクリックしてください。
表示されたダイアログの「製品の詳細情報:」にバージョンが表示されます。
依存関係にあるアセンブリを正しく動作させるには、それらのアセンブリバージョンが互いに適合していることが必要です。たとえば、GrapeCity.Win.MultiRow.v130.dllとGrapeCity.Win.MultiRow.Design.v130.dllは、互いに関連しています。そのため、これらのアセンブリバージョンとファイルバージョンは揃える必要があります。
また、InputManCellおよびPlusPakCellを使用するには、依存関係にあるInputManおよびPlusPakのアセンブリバージョンを参照する必要があります。次の一覧は、InputManCellおよびPlusPakCellを使用するために必要なMultiRowとInputManおよびPlusPakのアセンブリバージョンの組み合わせです。
更新日 | ファイル名 | アセンブリ ver. | ファイル ver. |
|---|---|---|---|
MultiRow for Windows Forms 13.0J 初版 | |||
2026年3月4日 | GrapeCity.Framework.MultiRow.v54.dll | 5.4.4800.2017 | 5.4.4800.2017 |
GrapeCity.Win.MultiRow.Design.v130.dll GrapeCity.Win.MultiRow.v130.dll | 13.0.4800.2017 | 13.0.4800.2017 | |
InputMan for Windows Forms 13.0J 初版 | |||
2026年3月4日 | GrapeCity.Framework.InputMan.v54.dll | 5.4.4800.2017 | 5.4.4800.2017 |
GrapeCity.Win.Editors.v130.dll | 13.0.4800.2017 | 13.0.4800.2017 | |
PlusPak for Windows Forms 13.0J 初版 | |||
2026年3月4日 | GrapeCity.Framework.PlusPak.v54.dll | 5.4.4800.2017 | 5.4.4800.2017 |
GrapeCity.Win.PlusPak.Calendar.v130.dll GrapeCity.Win.PlusPak.v130.dll | 13.0.4800.2017 | 13.0.4800.2017 | |
更新日 | ファイル名 | アセンブリ ver. | ファイル ver. |
|---|---|---|---|
MultiRow for Windows Forms 13.0J SP1 | |||
2026年8月26日 | GrapeCity.Framework.MultiRow.v54.dll | 5.4.4801.2017 | 5.4.4801.2017 |
GrapeCity.Win.MultiRow.Design.v130.dll GrapeCity.Win.MultiRow.v130.dll | 13.0.4801.2017 | 13.0.4801.2017 | |
InputMan for Windows Forms 13.0J SP1 | |||
2026年8月26日 | GrapeCity.Framework.InputMan.v54.dll | 5.4.4801.2017 | 5.4.4801.2017 |
GrapeCity.Win.Editors.v130.dll | 13.0.4801.2017 | 13.0.4801.2017 | |
PlusPak for Windows Forms 13.0J SP1 | |||
2026年8月26日 | GrapeCity.Framework.PlusPak.v54.dll | 5.4.4801.2017 | 5.4.4801.2017 |
GrapeCity.Win.PlusPak.Calendar.v130.dll GrapeCity.Win.PlusPak.v130.dll | 13.0.4801.2017 | 13.0.4801.2017 | |
上記のアセンブリバージョンの組み合わせで使用する場合は、アセンブリのバージョンを意識する必要はありませんが、作成したアプリケーションが配布先の環境で動作しない場合や、意図的にアセンブリを入れ替える場合は、プロジェクトが参照しているアセンブリのバージョンを確認してください。
Visual Studioを起動し、新規にWindowsアプリケーションを作成し、フォームにGcMultiRowコントロールを配置します。次に、GcMultiRowコントロールのコンテキストメニューから「バージョン情報」をクリックすると、現在使用されているMultiRowのバージョンを確認できます。
また、テンプレートを設定していないGcMultiRowコントロールと、MultiRowのデザイナのドキュメントウィンドウの右下にもMultiRowのバージョンが表示されます。
MultiRowでは、InputManCellとPlusPakCellを使用するため、GcMultiRowコントロールをフォームに追加した場合や、MultiRowテンプレートをプロジェクトに追加した場合などに、プロジェクトの参照設定にInputMan for Windows Forms 13.0JとPlusPak for Windows Forms 13.0Jのアセンブリを自動で追加します。
そのため、同一プロジェクト内でInputMan for Windows Forms 5.0J/6.0J/7.0J/8.0J/10.0J/11.0J/12.0JやPlusPak for Windows Forms 5.0J/6.0J/7.0J/8.0J/10.0J/11.0J/12.0Jのコントロールを使用している場合には、名前空間が同じ複数のバージョンのアセンブリを参照することになり、プロジェクトのビルド時にアセンブリ参照で名前空間の競合エラーが発生します。
この問題を回避し、同一プロジェクト内で、MultiRowと旧バージョンのInputMan for Windows Forms、PlusPak for Windows Formsを併用するには、以下の方法をご検討ください。
エイリアスを定義する。(C#の場合)
参照設定に追加されたInputMan13、PlusPak13の参照を手動で削除する。(Visual Basicの場合)
回避方法の詳細については、弊社Webサイトのナレッジベースに公開している「InputManとPlusPakの旧バージョンと同一プロジェクト内で共存させる方法」 をご覧ください。