App-Vで配信を行うためのアプリケーションとしてOffice 2007にチャレンジです。やってみると判るのですが、これが意外と大変!!
参考にしたのは
http://download.microsoft.com/download/5/d/c/5dc5825c-41c0-4a63-ace6-51ef1821c3c1/OfficeEnterprise2007_sequence.doc
になります。
セットアップカスタマイズファイル(MSPファイル作成)
まずはOffice 2007のCDをドライブに挿入してコマンドプロンプトを起動します。
CDのドライブレターでSetup /adminで起動します。
このままOKをクリック
ここで既定のインストール先を変更します。注意しなくてはいけないのが、あらかじめQドライブを作成しておき、そこに対してインストール作業を行うこと。更にインストールフォルダ名は8文字以下にすることです。私はOff2007にしました。
プロダクトキーを入力し、使用許諾にチェックを入れます
機能のインストール設定を行います。Access、Excel、Outlook、PowerPoint、Word、Office共有機能は全て「マイコンピューターから実行」にしておきます。Officeツールに関しては「Microsoft Office Document Imaging」は「インストールしない」で、そのほかは「マイコンピューターから実行」にしておきます。
[レジストリエントリの追加]を選択し、[追加]ボタンをクリックして下記レジストリエントリを追加します。
ルート:HKEY_LOCAL_MACHINE
データ型:dword
キー:SOFTWAREMicrosoftWindowsWindows SearchPreferences
値の名前:PreventIndexingOutlook
値データ:00000001
この設定により、Outlook2007のWindows Desktop Searchを無効にし、Classic Searchを有効にします。App-Vで配信したOutlook2007では、Windows Desktop Searchを利用できなくなります。
メニューから[ファイル]-[名前をつけて保存]を選択します。任意のファイル名でリムーバブルメディア等にMSPファイルを保存し、Officeカスタマイズツールを終了します。
Office 2007シーケンス
Microsoft Application Virtualization Sequencerを起動し、ファイルから新しいパッケージの作成を行います。
パッケージ名にOffice2007と入力し、次へ。監視の開始をクリックし、Office 2007のCDを入れます。
コマンドプロンプトより、MSPファイルを使用したセットアップを行います
今すぐインストールを選択し、インストール先は
Q:Off2007ですね
Officeのインストールが完了したら、今度はあらかじめ用意しておいたSP2を導入し、再起動を聞いてくるがここはぐっと我慢
全てのインストールが完了したら、監視の停止をクリックする。後から気がついたことですが、アドオンなども入れたければこの段階でインストールします。
仮想ファイルシステム(VFS)にはMSIファイルライブラリを仮想ファイルの中に追加するような資料がありますが、既知の問題としてここにそのようなファイルを入れると不具合があるそうなのでここは入力せずに進みます。
Microsoft Application Virtualization Management System リリース ノート 4.5 SP1
http://technet.microsoft.com/ja-jp/library/ee677081.aspx
アプリケーションの構成で必要なショートカットを残します
ここではAccess、Excel、Outlook、PowerPoint、Wordのみ残す設定にしています。
残したAccess, Excel, Outlook, PowerPoint, Wordのショートカットに対して、ショートカット名、バージョン、osdファイル名などを変更します。
ここではExcelを例にとって手順を説明します。一覧でMicrosoft Office Excel 2007 を選択した状態で[編集] ボタンをクリックします。アプリケーションの編集画面が表示されます。
既定では、OSD ファイル名が空白文字や複数のピリオドなどが含まれたファイル名になっているため、不必要な文字を削除した短いファイル名に変更します。これを各OSDファイルで行わないとショートカットがこのままの名前になるので悲しい結果が訪れます
ですので、バージョンは12、OSDファイル名はExcel2007.osdに変更します。
アプリケーションの起動ではOutlook以外を起動します。たとえば、Accessを起動し、その後F1を押してヘルプを表示させます。そしてそれらを閉じる。この操作を各アプリケーションに行います。
Officeアプリの初回起動時に上記画面が出ますが、ここはそのまま次へ
そしてMicrosoft Update を使用しないにクリックして完了
これを繰り返すとこのような画面になります
最後にシーケンスパッケージを作成します。その後
[仮想レジストリ] タブをクリックして、User/%SFT_SID%/Software/Microsoft/Office/Common/UserInfo を右クリックし、[キー]-[削除]をクリックしてシーケンス作業時のユーザー情報を削除します。この作業により、アプリケーションを配信した際に、クライアントPCにログインしているユーザーの情報が反映されます。
[ツール] メニューをクリックし、[診断] から [コマンドウインドウ] をクリックします。次のコマンドを入力し、MSMINCHO.TTF ファイルを削除します。 ここでは例として、Q:Off2007 ディレクトリへシーケンスした場合のコマンドを説明します。
Q:
cd Off2007vfsCSIDL_FONTS
del MSMINCHO.TTF
exit
[ファイル] タブをクリックし、Offi2007VFSCSIDL_FONTS ディレクトリを展開します。MSMINCHO.TTF をクリックし、ファイル名を任意の名前に変更します。短い形式の名前の変更は行わず、 [適用] ボタンをクリックします。その後 [ファイル] メニューの [名前を付けて保存] をクリックし、パッケージに任意の名前を付けて保存します。
※上記手順を踏まずにシーケンス作業を終了すると、App-V Desktops に 配信したMicrosoft Office Word 2007の明朝体が正しく表示されないことがあります。
http://support.microsoft.com/kb/953594/ja
[展開]タブでプロトコルをRTSPにして、ホスト名を入力します。その際に考慮しなくてはいけない問題があります。それは通常サーバーのcontentフォルダに対してシーケンスしたパッケージをいれますが、Office2007を複数のOSで使用するには、OS毎にパッケージを作成する必要があります。ということはフォルダ分けをしないととんでもないことになります。ですので、今回はoff2k7-vをいうフォルダを作成することにし、パスにoff2k7を入力しました。(ここで悩んだのが”/”を先頭に付けるか?作成されたOSDファイルを確認したところ、”/”は必要ないみたいです)
[OSD]タブを開き[SOFTPKG]-[IMPLEMENTATION]-[VIRTUALENV]を開きます
TERMINATECHILDRENをTUREに変更します。 これは、Office2007は終了してもタスクが残るので、終了時に強制的にタスクを終了させる設定です。
[VIRTUALENV]を右クリック>要素>追加>POLICIESを選択します
[POLICIES]を右クリック>要素>追加>LOCAL_INTERACTION_ALLOWEDを選択します
LOCAL_INTERACTION_ALLOWEDを選択し、右ペインの要素テキストにTUREと入力します。OfficeはOLEやIMEとの連携を行うので、そのための設定です。
この操作を各アプリケーション毎に行う必要があります。
そうそう、後から気がついたのですがパッケージ名もユニークじゃないといけないかも~。パッケージ名をOffice2007で作りましたが、[プロパティ]タブより変更できたので、off2k7-vに変更しました。これなら今後ダブることはないですね。
Office2007が設定するファイルの関連づけ情報には日本語が使用されています。このような場合、正しくクライアントPCにアプリケーションが配信されません。この問題に対処するために、作成されたOSDファイルの文字コードをUnicode に変更します。
以上でOffice Enterprise 2007のシーケンス作業は終了です。生成されたosdファイル、icoファイル、sft ファイル、sprjファイルをApp-V Serverを実行しているサーバーマシン上にコピーし、配信するための設定作業を行います。osd ファイルは、Access,Excel,Outlook,PowerPoint,Wordのそれぞれに対して作成されています。5つのosd ファイルを登録する必要があります。
この作業に3日間かかりました。スナップショットは初期のものがありますがテキストに書かれている内容が正しいです。結局何回作り直したんだろう・・・
いや~、初めてシーケンス処理を行いましたが結構大変ですね。