Open eVisionのインストール
インストーラパッケージ
Open eVisionは、「Open_eVision_Installer_2.1.0.msi」という1つのインストーラパッケージとして配布されます。 このパッケージには、Open eVisionを使用して各アプリケーションを動作させたり開発するために必要なすべての要素が含まれています。
インストール形式

- Complete(完全):アプリケーションの動作や開発に必要な要素がすべてシステムにインストールされます。
- Typical(標準):レガシーコンポーネントとVC++ 6.0特有のコンポーネントを除き、Complete と同じ。
- Runtime(ランタイム):Open eVisionを使用してアプリケーションを動作させるために必要なすべてのバイナリファイルがインストールされます。
- Custom(カスタム):インストールするコンポーネントを個別に選択できます。
以前のバージョン
Open eVisionをインストールすることで他のOpen eVisionメジャーバージョンが置き換えられることはありません。複数のバージョンが共存します。 メジャーバージョンが同じである場合は、マイナーバージョンリリースとメンテナンスリリースが自動的に更新されます。
コマンドラインのインターフェース
コマンドラインを使ってOpen eVisionをインストールする場合は、以下を使用してください:
msiexec /i "Open_eVision_Installer_2.1.0.msi" /qn INSTALLTYPE=[インストール形式]"
[インストール形式] には、Complete、TypicalまたはRuntimeを挿入してください。 デフォルトのインストール形式は「Typical」です。
コマンドプロンプトでインストールの終了を待つ場合は、コマンドの最初に「start /wait」を追加します:
start /wait msiexec /i "Open_eVision_Installer_2.1.0.msi" /qn INSTALLTYPE=[インストール形式]"
ライセンスアクティベーション
Open eVisionライセンスのアクティベートは、Open eVisionライセンスマネージャで行います。 ライセンスマネージャはインストール終了時に起動するか、Windowsのスタートメニューから起動します。
注記:Windows XPの場合、ライセンスマネージャには .NET 2.0が必要です。
対応プラットフォームと要件

Windows Embedded Standard 2009によってFBA完了後にドライバやアプリケーションがインストールされることがあります。
Open eVisionを以下の手順に従ってインストールすることを推奨します:
- Target Designerを使って必須コンポーネントをランタイムイメージに追加する
- .Net framework 3.0 setupコンポーネント:Open eVisionライセンスマネージャ用
- Windows Installer Serviceコンポーネント:Open eVisionでC/C++ランタイムライブラリをインストールするため。
- Open eVisionライセンスマネージャには、オンラインアクティベーションの場合はインターネットサポートコンポーネント、オフラインアクティベーションの場合はUSB Flashが必要です。
- Sysprep (Windows System preparation) コンポーネントまたはSystem Cloning Toolコンポーネント:イメージを複数のデバイスに展開する前に「マスターターゲット」を再シールするため。
注記:FBA終了時に System Cloning ToolによってFBRESEALが自動的に実行されるのを防ぐため:
System Cloning Toolの設定を再シールフェーズから手動に変更するか、またはSystem Cloning Toolの詳細設定 cmiResealPhaseを12000 から0に変更します。
- 「マスターターゲット」にOpen eVision 2.1以降をインストールする
- Pre FBA OSイメージが構築されたら、「マスターターゲット」を起動してFBAを完了します。
- 「マスターターゲット」を2回目起動した場合、供給された標準インストーラを使ってOpen eVisionライブラリをインストールします。
- 状況に応じて、アプリケーションで必要になるすべてのランタイムライブラリを含め、Open eVisionベースのファイナルアプリケーションをインストールします。
- 大量展開の準備ができたマスターパッケージを再シールする
- FBRESEALまたはSysprepを実行します。 コンピュータがシャットダウンすると、このイメージがマスターとなります。
「マスター」を新しいデバイスに展開するたびに、ライセンスマネージャのドキュメントの説明どおりにOpen eVisionライブラリをアクティベートする必要があります。

インストールフォルダ > Includeサブフォルダにあるヘッダー (Open_evVsion_2_0.h) をインクルードします。 リンカーの設定は不要です。
Microsoft Visual Studio C++環境ではインストール時にOpen eVision Includeフォルダが自動的に作成されます。 Borland/CodeGear C++環境ではこれを手動で行う必要があります。

開発環境でOpen_eVision_NetApi_2_1.dllに参照を追加します。 その他のDLLをコピーする必要はありません。

Open_eVision_ActiveXApi_2_1.dllコンポーネントに参照を追加します。

- 正規のAPI(例外とネームスペースを持つ新スタイルのAPI)を使用している場合
- プロジェクトの設定を開き、以下のプリプロセッサのマクロ定義を追加します:
DO_NOT_USE_INLINE_OPEN_EVISION_2_1 - Open_evVsion_2_0_VC6_Release.libとOpen_evVsion_2_0_VC6_Debugを、対応する構成リンカ設定に追加します。
これらのファイルはOpen eVisionのインストールフォルダにあります。
- プロジェクトの設定を開き、以下のプリプロセッサのマクロ定義を追加します:
- レガシーサポートAPI(eVision 6.7.1と互換性あり)を使用する場合:
- プロジェクトの設定を開き、以下のプリプロセッサのマクロ定義を追加します:
DO_NOT_USE_INLINE_LEGACY_OPEN_EVISION_2_1 - Legacy_Open_evVsion_2_0_VC6_Release.libとLegacy_Open_evVsion_2_0_VC6_Debugを、対応する構成リンカ設定に追加します。
これらのファイルはOpen eVisionのインストールフォルダにあります。
- プロジェクトの設定を開き、以下のプリプロセッサのマクロ定義を追加します:
- 正規のAPIとレガシーサポートAPIの両方を使用している場合は、すべての手順(およびソリューションに関連する全ライブラリ)を実行してください。
これらのライブラリを使用するには、マルチスレッドDLL (/MD) またはマルチスレッド デバッグDLL (/MDd) コード生成フラグを使用したプログラムでなければなりません。
Visual Basic 6.0
Open_eVision_ActiveXApi_2_1.dllにリファレンスを追加します(メニュー:「Project」(プロジェクト) > 「Add Reference」(リファレンスの追加))。 そうすると全オブジェクトをVisual Basicで直接使用できるようになります。

Open eVisionを使用するためにEmbarcadero RAD Studio XE4およびXE5でプロジェクトを設定するには:

- 新規のC++プロジェクトを作成します。
- Open eVisionのインクルードパスをプロジェクトディペンデンシーに追加します。
- プロジェクト設定で DO_NOT_USE_INLINE_OPEN_EVISION_2_1を定義します。
- Open eVisionを使用したいCPPファイルに「Open_evVsion_2_0.h」をインクルードします。
- 「Open_evVsion_2_0.cpp」をプロジェクトに追加します。
- Debug と Release の両方で、「Open_eVision_2_0.cpp」ファイルのローカルのC++コンパイラオプションを変更します:
- Debugging(デバッグ)で:
- Optimization(最適化)でDisable all optimizations(すべての最適化を無効にする)をTrueに設定します。
- Compatibility/General(互換性/全般)でGlobal functions in segments(セグメントの全般機能)をFalseに設定します。

1つの変換ユニットでの関数(および仮想関数)の数の制限によりエラーが発生することがあります:
BCB6 Error E2491: Maximum VIRDEF count exceeded; check for recursion
この問題が生じたときは、Virtual tables(仮想テーブル) C++ のオプションをLocal(ローカル)に変更してください:
Borland GUIのクラスメンバとしてOpen eVisionオブジェクトを使用する場合(例えば TDialogなど)、アプリケーションを閉じる際にハンドルされていない例外が発生することがあります。 この問題を回避するには、new(新規)を用いてOpen eVisionオブジェクトを動的に作成し、親クラスのデストラクタ内でそれらを削除してください。

注記: Legacy ActiveXオプションを選択して事前にOpen eVisionをインストールしておく必要があります。
ActiveX DLLを使用してください(「Component」(コンポーネント) > 「Import Component...」(コンポーネントのインポート) > 「Import .NET Assembly」(.NETアセンブリのインポート))。