nexacro platformで開発したサービスをWindows PCのユーザーに提供するには、nexacro platformの実行環境をユーザーのPCにインストールする必要があります。Microsoft Officeのようなソフトウェアをインストールするのと同じ方法です。nexacro studioのDeployメニューを使用してインストールファイルを作成することができ、生成されたファイルをユーザーに配布した後、インストールするように指示することができます。
ユーザーに配布
nexacro studioのメニューの[Deploy]でアーカイブファイルを作成して、インストールファイルを作成します。インストールファイル名やインストールされるパスを変更することができます。インストールファイルを作成した後、ファイルを配布して、ユーザーがインストールするプロセスは、システム運用環境により異なることがあります。
インストールファイルの生成後、デジタル署名して配布
nexacro platformのセットアップエンジンファイルにインストールパス、ショートカットアイコンなどの情報を含むようにすると、デジタル署名がない状態でインストールファイルが生成されます。デジタル署名がない場合には、ユーザーの環境に応じてインストールに制限がある場合があります。
1
nexacro studioのメニューの[Deploy>Packing(Archive&Update)]を選択してPackingウィザードを実行します。
2
Packingウィザードで実行環境を選択して、配布するモジュール、ソース、リソースを選択します。nexacro SetupRuntime項目は選択しないでください。
3
Packing完了後Build AppボタンをクリックしてBuild Appウィザードを実行します。
4
Build Appウィザードで、必要なオプションを変更します。該当プロジェクトでBuild Appウィザードを最初実行した場合のEngine Setup Keyはデフォルト値が設定されています。項目の右側にある鍵のアイコンをクリックして、新しいEngine Setup Key値を設定します。
5
生成されたインストールファイルにデジタル署名を処理します。
生成されたセットアップファイルをデジタル署名せずに実行時のPublisher情報は「Unknown Publisher」で表記されます。
システム運用環境に応じて、Publisher情報が確認されていない場合は、アプリをインストールすることができないことがあります。
Microsoftで配布するSignTool.exeのようなツールを使用して、デジタル署名を処理することができます。
https://msdn.microsoft.com/en-us/library/windows/desktop/aa387764(v=vs.85).aspx
6
インストールファイルをユーザーに配布します。
デジタル署名を維持した状態でインストールファイルの配布
nexacro platformのセットアップエンジンファイルにインストールパス、ショートカットアイコンなどの情報のみを含み、別のデジタル署名を処理する必要がない場合は、製品のデジタル署名を維持した状態でインストールファイルを生成して配布することができます。
1
nexacro studioのメニューの[Deploy>Packing(Archive&Update)]を選択してPackingウィザードを実行します。
2
Packingウィザードで実行環境を選択して、配布するモジュール、ソース、リソースを選択します。nexacro SetupRuntime項目をチェックして、OSのタイプを選択します。
3
Packing完了後Build AppボタンをクリックしてBuild Appウィザードを実行します。
4
Build Appウィザードで、必要なオプションを変更します。該当プロジェクトでBuild Appウィザードを最初実行した場合のEngine Setup Keyはデフォルト値が設定されています。項目の右側にある鍵のアイコンをクリックして、新しいEngine Setup Key値を設定します。
5
生成されたインストールファイルをユーザーに配布します。Build Appウィザードで生成したインストールファイルとSetupResource.zipファイルは、ユーザーのインストール時に同じパスにダウンロードした後、インストールファイルを実行する必要があります。
PackingウィザードにてUpdate typeをUpdateやLocalに設定した場合には、ProjectResource.zipファイルが生成されます。
ランチャーサービスを使用しる場合には、downloadresourceメソッドを使ってSetupResource.zipファイルを指定したパスにダウンロードします。この場合には、インストールファイルをダウンロードして実行するパスに関係なく、SetupResource.zipファイルを参照してインストールします。
デジタル署名を維持した状態で配置されたセットアップファイル、インストール後に生成されるファイルは、下記のような制約があります。
- SetupRuntime.exeファイルのアイコンを変更することはできません。
- ショートカットアイコンの実行ファイルであるnexacro.exeアイコンを変更することはできません。
エンジン変更せずにそのまま配布
nexacro platformのセットアップエンジンファイルをそのまま使用する場合、Packingウィザードを実行した後に生成されたファイルを配布します。
1
nexacro studioのメニューの[Deploy>Packing(Archive&Update)]を選択してPackingウィザードを実行します。
2
Packingウィザードで実行環境を選択して、配布するモジュール、ソース、リソースを選択します。nexacro SetupRuntime項目をチェックして、OSのタイプを選択します。
3
生成されたモジュール、ソース、リソースファイルを配布ページを介して配布、インストールします。
セットアップファイルは、nexacro studioのインストールパスの下[SetupRuntime]フォルダで確認することができます。
アップデート
Build AppウィザードでBootstrap URL項目値として指定したパスのstart.jsonファイルの設定に応じてアップデートを処理します。既存のインストール済みのバージョンよりも上位のバージョンである場合にのみ、アップデートを処理します。
PackingウィザードでUpdate typeをLocalに指定した場合には、管理者がstart.jsonファイルをユーザーに伝えられませんので、アプリの実行時にアップデートをサポートしません。
配布時の注意事項
ショートカットBootstrap URLプロパティ値の変更
ユーザーにインストールされたショートカットのBootstrap URLプロパティ値のみを変更して使用した場合、インストールされた製品のバージョンと配布されたアプリのバージョンが異なり、正常に動作しないことがあります。任意にBootstrap URLの変更を行うことはお勧めしません。他のアプリを配布する場合には、Engine Setup Key、Install Location値が異なるインストールファイルを作成して配布することをお勧めします。
nexacro.exe実行オプション
nexacro.exe実行オプションを下記の表のように指定できます。
実行オプションはsystem.execNexacroメソッドオプションと同じです。
オプション | 説明 |
---|---|
-K | アプリを区別するためのキー値を文字列に設定します。 |
-S | ブートストラップパスを設定します。 |
-C | コンポーネントがインストールされているパスを設定します。 |
-THR | エンジン内部の通信およびその他のManagerのスレッド数を数字で設定します。 スレッドの数は、最少3個から最大10個であり、デフォルト値は3です。 |
-SP | Splash Imageのパスを設定します。 |
-SM | Splash Imageにシステムメッセージが表示されないように「none」を設定します。 |
-LF | アプリのLeft位置座標値を設定します。 |
-TP | アプリのTop位置座標値を設定します。 |
-WD | アプリの幅をピクセル単位の数字で設定します。 |
-HT | アプリの高さをピクセル単位の数字で設定します。 |
-LG | Loading Imageのパスを設定します。 |
-TW | エンジン内部Managerのスレッドの最大待ち時間を設定します。 |
-OO | 同じキーのアプリの実行を一つのみ許可するかどうかをBooleanに設定します。 |
-V | アプリが実行されるときに追加されるGlobal変数を「変数名:タイプ=値 変数名:タイプ=値」の形式で設定します。 各変数は、コンマ(,)で区切って設定します。 「タイプ」に「ev」を設定時、EnvironmentのVariables領域に変数が追加されます。 「タイプ」に「ec」を設定時、EnvironmentのCookies領域に変数が追加されます。 「タイプ」を設定しないか、もしくは「av」を設定時、ApplicationのVariables領域に変数が追加されます。 |
-SIE | アプリの実行時にエラーが発生した場合、エラーメッセージを表示して終了するかどうかをBooleanに設定します。 |
-CT | 初期ネットワークに接続されているかどうかをチェックする最大待ち時間を設定します。 ネットワークに接続されているかどうかをアプリが起動される前にチェックします。 待ち時間中にネットワークに接続されているかどうかが確認されない場合、アプリは終了します。 |
-SCR | LayoutManagerで使用するためのScreenIDを設定します。 |
-CC | V8エンジンのCodeCache機能を無効にするために設定します。 「NO」に設定時、CodeCache機能を使用しません。 「AL」に設定時、もしくはオプション値を省略時、CodeCache機能が有効になります。 |
-AU | アプリが実行される際にエンジンのアップデートを設定します。 「auto」に設定時、エンジンを最新バージョンに更新します。 「manual」に設定時、エンジンを更新しません。 |
-NC | ローカルパスのconfig設定ファイルを設定します。 |
OSバージョン別の配布
OSバージョン別インストールファイル(32ビット、64ビット)を作成した場合、ユーザーにすべてのファイルのダウンロード情報を提供した後、ユーザーが選択してダウンロードすることも可能であり、スクリプトを使用してOSバージョンを確認した後、適切なリンク情報を提供することもできます。
<script type="text/javascript"> var SetupRuntimeName=""; function oninit() { var userAgent = navigator.userAgent; if(userAgent.indexOf("WOW64") != -1 || userAgent.indexOf("Win64") != -1) SetupRuntimeName="nexacro17_SetupRuntime_x64.exe"; else SetupRuntimeName="nexacro17_SetupRuntime_x32.exe"; document.getElementById("test").innerHTML = "<a href='"+SetupRuntimeName+"'>" +SetupRuntimeName+"</a>" } </script> <body onload="oninit()"> Download link -> <span id="test"></span> </body>
32ビットOSにて、該当ページにアクセス時にOSバージョンを確認して、適切なリンクを提供することができます。
スクリプトは、説明のために作成されたコードです。運営するシステムに合わせて変更して適用することができます。
OSの変更に応じて、該当スクリプトが動作しないことがあります。
アプリ・インストール(ユーザー)
インストールファイルを実行すると、nexacro platformエンジンのインストールプロセスが進行します。インストールフォルダとインストールしたプログラム名は、配布段階で変更することができます。
インストールが完了すると、配布時の設定に応じてショートカットの要素のインストール有無を確認します。Shortcut Option設定時、自動生成に設定された場合には、追加確認なくすぐにショートカットを生成します。
NREログ確認
開発段階でアプリが予期せず終了したりユーザー環境でアプリに発生するエラーを分析するためにログを残すように設定することができます。プロジェクトのEnvironmentプロパティのtracemodeを「new」もしくは「append」に設定してアプリを配布した後、下記の2つのいずれかを選択して設定できます。
nexacro.exe実行オプションとして「-NC [設定ファイル]」を指定し、該当設定ファイルを生成
「%USERAPP%\config\[Key]」パスにnexacro_config.xmlファイルを生成
[Key]はnexacro.exe実行オプションに指定する-KオプションもしくはBuild Appの段階で指定するApp Titleです。
アプリ実行時にログマネージャが実行される前に発生するエラーは、ログとして残せません。アプリ実行の際にalertウィンドウの形でユーザーに表示されます。
設定ファイル(nexacro_config.xml)は下記のような形式で指定します。
<?xml version="1.0" encoding="UTF-8"?> <nexacro-config os="windows"> <application file-logging="true" loglevel="debug" tracemode="new"/> <log filepath="%USERAPP%\Log\nre_log_test.log" filesize="408960" backupfilecount="5"/> </nexacro-config>