Location : Home > Softwares > R
Title : Installation
Toolbox Logo

Installation

アーカイブ

RSrv250.exe
サンプルコード込みのサーバセットアッププログラム(ランタイムライブラリ含む)
RSrv250S.zip
サーバ・コントロール用の VC++ 6.0・VB ソース。CVS アクセスも可。

インストール

 R (D)COM サーバは COM サーバ及び Active X コントロールをインストールする。たいていの Windows のインストールでは実行時のユーザが少なくとも Power Users または Administrators グループのメンバであることが要請される。もしこれらのメンバでなければシステム管理者に連絡すること。(特に、セットアップはレジストリデータベースの HKEY_CLASSES_ROOT を変更する。)

  • 最新の R リリース(>= R 2.2.0)をインストールする。
  • (D)COM サーバの過去のバージョンがインストールされていれば、まずそのバージョンをアンインストールする。
    • COM サーバを利用している全てのクライアントアプリケーションをクローズする。
    • 過去のバージョンをアンインストールする。
  • セットアッププログラムを起動する。
  • R (D)COM サーバをインストールする。
    • どのパッケージをインストールすべきか?
       RSrv200.exe はフルインストーラであり、実行時に必要な Visual Basic 及び Visual C++ のランタイムライブラリを含むあらゆる必要なコンポーネントを提供する。過去バージョンのインストーラにはランタイムライブラリを同梱していない。そのためもはやサポートしていない。
       サーバソフトウェアを変更するつもりがないのであればソースをダウンロードしたりインストールしたりする必要はない。COM サーバを使ってクライアントアプリケーションを開発するために必要な情報は全て COM サーバと一緒にインストールされるドキュメント及びサンプルコードに記している。
    • RSrv200.exe をインストールする。
      インストールのデフォルトタイプから方式を選択することができる。
      • クライアントアプリケーションを開発したければ "SDevelopment installation" を選択する。これにはローカルサーバ・リモートサーバで実行するためのバイナリ、テスト及びサンプルアプリケーション、ソースコードがインストールされる。R のインストールはこのマシンの上に要請される。
         あるマシン用のクライアントアプリケーションを開発するときは、このマシンに R (D)COM サーバをインストールする必要がある。
      • ローカルで R をこのマシンで実行するには "Local Server Installation" を選択する。これにはローカルの COM サーバ用のバイナリと、R と R (D)COMサーバの機能を確認する簡単なテストアプリケーションがインストールされる。R のローカルインストールが要請される。このマシンでローカル R サーバ用及びリモートクライアント用の R サーバを用いたクライアントアプリケーションを実行できる。
      • クライアントアプリケーションをローカルに実行し、リモートサーバにインストールされた R オブジェクトにアクセスするには "Remote Server Files" を選択する。これはリモートマシン上の R 及び R (D)COM サーバにアクセスするために必要なバイナリがインストールされる。R がこのマシンにインストールされる必要はない。
  • スタートメニューの R (D)COM サーバプログラムグループから 01 - Basic Test を選択し、"Start" を押す。

(D)COM サーバのテスト

 たくさんの例とテストプログラムが R (D)COM サーバとともに提供されている。

 テストプログラムの1つは常に R (D)COM サーバとともにインストールされる。これはスタートメニューで見つかる。デフォルトのプログラムグループは R\(D)COM Server であり、テストプログラムはそこにあり、 01 - Basic Test という名称である。
 R (D)COM サーバを用いたアプリケーションは同様の段階を踏む。

  • IStatConnector インタフェースのインスタンスを生成する。
  • R を始動するために COM オブジェクトであらゆる Init を実行する。
  • アプリケーションをを実行する。
  • Close を呼び出し、R を閉じる。
  • COM オブジェクトを解放する。

 テストプログラムはいくつかの理解のための情報を提示し、テストを行う。

  • R へのデータ変換を行う。
  • R で計算を行う。
  • R からのデータ変換を行う。

トラブルシューティング

 最初に COM オブジェクトの .Init() を呼び出したときに何か悪いことが起これば .GetErrorText() を用いてエラー情報を取得すること。

"installation problem: unable to load connector"

 R プロキシライブラリがロードできない。これらのエラーの原因として考えられるのは以下の通り。

  • 環境変数 %R_HOME% が R がインストールされていないディレクトリを指しており、
  • R インストールに対応するレジストリキーが R のインストールフォルダを指しており、
  • rproxy.dll 及び R.dll%PATH% にない。

 CRAN からコンパイル済みのバイナリをダウンロードしてこれをインストールしたのに間違った場合である。セットアッププログラムを使って R を再インストールすること。何が悪いかについては dbgview をダウンロードして確認すること。
 自身で R をコンパイルした場合には %R_HOME%\bin\rproxy.dll を確認し、レジストリキー HKEY_LOCAL_MACHINE\Software\R-core\R\InstallPath が正しくインストールフォルダを指しているか確認すること。

"installation problem: invalid connector library"

 おそらく R プロキシライブラリにダメージ。COM サーバの本バージョンでは R >= 2.2. が必要。

"installation problem: interpreter interface version mismatch"

 R プロキシライブラリのバージョンが正しくない。COM サーバの本バージョンでは R >= 2.2. が必要。

"installation problem: interpreter version mismatch"

 R のバージョンが正しくない。COM サーバの本バージョンでは R >= 2.2. が必要。

 .Init() を呼び出したときにメッセージボックスが表示されればベースライブラリが見つけられなかったことを示す。その場合は R_HOME をインストールフォルダに設定すればよい。このような場合はわずかであろう。
 自身でインストールの問題が解決できなかった場合は R COM メーリングリストでヘルプを確認してみること。 R COM サーバ(または R COM 接続モジュールの他の部分)を使うのであれば参加しておくとよい。
 全ての関数は上に示した状況と対応するエラーコードを返す。このエラーコードは VB または VBA における Err.Number を確認することで取得することができる関数の返り値である。以下の表はエラーコードのリストである。

定義DecimalHexadecimal
SCN_E_INVALIDARG-2147221503 0x80040001
SCN_E_INVALIDFORMAT-2147221502 0x80040002
SCN_E_NOTIMPL-2147221501 0x80040003
SCN_E_UNKNOWN-2147221500 0x80040004
SCN_E_INITIALIZED -2147221499 0x80040005
SCN_E_NOTINITIALIZED -2147221498 0x80040006
SCN_E_INVALIDSYMBOL-2147221497 0x80040007
SCN_E_PARSE_INVALID-2147221496 0x80040008
SCN_E_PARSE_INCOMPLETE-2147221495 0x80040009
SCN_E_UNSUPPORTEDTYPE -2147221494 0x8004000A
SCN_E_EVALUATE_STOP-2147221493 0x8004000B
SCN_E_INVALIDINTERFACEVERSION-2147221488 0x80040010
SCN_E_INVALIDINTERPRETERVERSION -2147221487 0x80040011
SCN_E_INTERFACENOTFOUND -2147221486 0x80040012
SCN_E_LIBRARYNOTFOUND -2147221485 0x80040013
SCN_E_INVALIDLIBRARY -2147221484 0x80040014
SCN_E_INITIALIZATIONFAILED -2147221483 0x80040015
SCN_E_INVALIDCONNECTORNAME -2147221482 0x80040016
SCN_E_INVALIDINTERPRETERSTATE -2147221481 0x80040017
SCN_E_FATALBACKEND -2147221472 0x80040020

レジストリ情報

 セットアッププログラムはレジストリに情報を追加する。情報は HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\R (D)COM Server_is1 で確認できる。
 これに関連して様々な COM サーバが登録される。

再パッケージとサイレントインストール

 セットアップからファイルを抜き出し((D)COM サーバ実行ファイルのみなど)、独自のインストーラを作成する(またはサードパーティのファイルを追加する)ことは認められていない。この理由の1つは、公式なセットアップアプリケーションのみが正しいインストールを保証するものだからである。
 (D)COM サーバ及び/または RExcel を独自のアプリケーションに組み込みたい場合には自身のセットアッププログラムとともに (D)COM サーバを自由に配布することができる。(D)COM サーバと RExcel を自身のアプリケーションとともに自動的にインストールしたければ「サイレント」モード(次セクションを見よ)で実行すればよい。
 サイレントインストールを行えるコンポーネントは以下の通りである。

localserver
Local Server Files
simpletest
Simple Server Test Files
remoteserver
Remote Server Files
development
Development Files
samples
(D)COM Server Sample Files
excel
RExcel: Excel Add-In
excelsamples
RExcel Sample Files

セットアップ時のコマンドラインパラメータ

 このセクションは Inno Setup version 5.0.8 のドキュメントのままである。

 セットアッププログラムにはいくつかオプションでコマンドラインパラメータを受け付ける。これらはシステム管理者やセットアッププログラムを呼び出す他のプログラムには有用である。

/SP-

 セットアップ開始時に This will install... Do you wish to continue? というプロンプトを表示させない。もちろんこれは DisableStartupPrompt [Setup] セクションのディレクティブが yes に設定されていても効果がなくなる。

/SILENT, /VERYSILENT

 セットアップ時にサイレントにする。/SILENT ではバックグラウンドウィンドウは表示されず、インストール進展を示すウィンドウのみが表示される。/VERYSILENT ではインストール進展を示すウィンドウも表示されない。インストール時のエラーメッセージやプロンプトは(DisableStartupPrompt または '/SP-' コマンドラインで不可にしていなければ)表示される。
 再起動が必要で '/NORESTART' コマンドが指定されておらず、セットアップが silent であれば Reboot now? メッセージボックスが表示される。 very silent であれば確認せずに再起動する。

/SUPPRESSMSGBOXES

 メッセージボックスを表示しないようにする。'/SILENT' 及び '/VERYSILENT' とともに利用されたときにのみ効果がある。デフォルトの反応は以下の通りである。

  • 'Keep newer file?' に対しては Yes。
  • 'File exists, confirm overwrite.' に対しては No。
  • 中止/再試行に対しては中止。
  • 再試行/キャンセルに対してはキャンセル。
  • DiskSpaceWarning/DirExists/DirDoesntExist/NoUninstallWarning/ExitSetupMessage/ConfirmUninstall に対しては Yes(Continue)。
  • FinishedRestartMessage/UninstalledAndNeedsRestart に対しては Yes(Continue)。

 以下の5種類のメッセージボックスは停止されない。

  • セットアップ中止メッセージボックス
  • セットアップ中止を確認するメッセージボックス
  • インストール時に新しいディスクを要請しているのにそのディスクが見つからないときに表示される FileNotInDir2 メッセージボックス
  • コマンドラインパラメータを読む前に表示される(エラー)メッセージボックス
  • [Code] サポート関数 MsgBox で表示されるメッセージボックス

/LOG

 インストール実行時に起こった事象の詳細をユーザの TEMP ディレクトリにログファイルを生成して格納する。これはデバッグ時に有用である。例えば、思っていた場所にファイルがなかったと疑った場合、ログファイルが実際にスキップしたか否かまたはなぜかを確認できる。
 ログファイルは現在の日付に従ってユニークな名称を付けられる。(既存のファイルに上書きはしない。)
 ログファイルに格納される情報は本質的に技術的なもので、エンドユーザにわかりやすくすることを想定していない。機械でパーサしやすいようにもできていない。このファイルのフォーマットは無断で変更される。

/LOG="filename"

 /LOG と同様であるが、格納ファイルを指定できる点が異なる。既存のファイル名と重複すれば上書きする。ファイルが生成されなければセットアップファイルはエラーメッセージを出して終了する。

/NOCANCEL

 キャンセルボタンを実行不可能にし、クローズボタンがクリックされても無視するようにして、インストール実行中にユーザがキャンセルボタンを押してもインストールがキャンセルされることを防ぐ。'/SILENT' または '/VERYSILENT' とともに使うと有用である。

/NORESTART

 不要なときには再起動を要請しない。

/RESTARTEXITCODE=exit code

 再起動が必要な場合にカスタム化した終了を指定する。'/NORESTART' とともに使うと有用である。Setup Exit Codes を見よ。

/LOADINF="filename"

 事前に設定されたコマンドラインを指定されたファイルから読み込んで実行する。以下に説明する '/SAVEINF=' コマンドを持ちいて事前に保存されたファイルを利用する。
 ファイル名に空白を含む場合には引用符で囲むことを忘れないこと。

/SAVEINF="filename"

 インストール設定を指定したファイルに保存する。
 ファイル名に空白を含む場合には引用符で囲むことを忘れないこと。

/LANG=language

 使用言語を指定する。[Languages] セクションエントリにおいて指定されている内部名称で指定する。
 妥当な /LANG パラメータが指定されれば Select Language ダイアログは出されない。

/DIR="x:\dirname"

 Select Destination Location ウィザードページでデフォルトのディレクトリ名を上書きする。絶対パスで指定しなければならない。

/GROUP="folder name"

 Select Start Menu Folder ウィザードページでデフォルトのフォルダ名を上書きする。[Setup] セクションディレクティブ DisableProgramGroupPage が yes に設定されていれば、このコマンドラインは無視される。

/NOICONS

 Select Start Menu Folder ウィザードページで「アイコンを生成しない」をデフォルト値として設定しておく。

/COMPONENTS="comma separated list of component names"

 デフォルトのコンポーネント設定を上書きする。このコマンドラインパラメータによりセットアッププログラムはカスタム化される。

/PASSWORD=password

 パスワードを指定する。[Setup] セクションディレクティブ Password が設定されていなければ、このコマンドラインは無視される。
 また妥当でないパスワードが指定されてもこのコマンドラインは無視される。

Toolbox Logo
Updated : 2008/05/26