Office ソリューションのオフライン モデル (2003 システム)
更新 : 2007 年 11 月
対象 |
---|
このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。 プロジェクトの種類
Microsoft Office のバージョン
詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。 |
コンピュータがネットワークに接続していないときに Microsoft Office 2003 の Visual Studio Tools for Office ソリューションを使用できるようにする方法は、主に 3 つあります。
アセンブリを各ユーザーに配置する。
Internet Explorer のキャッシュを使用する。
IntelliMirror を使用する。
それぞれの方法には一長一短があり、どの方法でソリューションのオフライン使用を実現するか決めるには十分な検討が必要です。
メモ : |
---|
2007 Microsoft Office system のソリューションでは、オフライン作業に ClickOnce キャッシュを使用します。詳細については、「Office ソリューションの配置 (2007 システム)」を参照してください。 |
各ユーザーへのアセンブリの配置
ソリューション アセンブリを各ユーザーに配置し、ユーザーのローカル コンピュータにインストールすると、ユーザーはオフライン時にアセンブリにアクセスできます。ユーザーはオフラインになる前にソリューションを同期したり実行したりしなくてもアセンブリにアクセスできますが、次の点を考慮する必要があります。
ソリューションの新しいバージョンが使用可能になった場合に、コンピュータを個別に更新する必要があります。
ドキュメント (該当する場合) とすべてのアセンブリを各コンピュータに配布し、アプリケーション マニフェストに含まれるアセンブリへのパスを各ユーザーのコンピュータの構成に合わせるために環境変数を使用する必要があります。詳細については、「方法 : オフライン使用のドキュメントを配置する (2003 システム)」を参照してください。
Internet Explorer キャッシュの使用
既定では、Visual Studio Tools for Office ソリューションは、Internet Explorer のキャッシュを使用してオフラインでの作業を実現します。その結果、オフラインでの作業は、Internet Explorer の一時インターネット ファイル オプションの設定によって決まります。このオプションを使って、一時ファイルを削除したり、キャッシュに使用するディスク領域のサイズを指定したりできます。
アセンブリが使用できない場合でも、Office ドキュメントで作業を行い、後で変更内容をサーバーに保存できます。オフライン時でも、ソリューションでアセンブリを使用できる必要がある場合は、次の点を考慮してください。
アセンブリは、Web サーバー (HTTP または HTTPS の場所) に格納する必要があります。ユーザーは、サーバーに少なくとも 1 回はアクセスして、アセンブリをキャッシュに格納する必要があります。サーバーに一度もアクセスしていない場合、アセンブリの読み込みは失敗し、マネージ コードは実行されません。
プロジェクトには、構成ファイルを含める必要があります。ユーザーのシステムがオフライン モードのときに、共通言語ランタイム (CLR) がアセンブリを Internet Explorer キャッシュから読み込むのは、アセンブリに構成ファイルがある場合のみです。構成ファイルをプロジェクトに追加する方法については、「方法 : Office ソリューションの構成情報を設定する」を参照してください。構成ファイルには、ソリューションに固有の情報を含める必要はありません。他の機能が不要な場合には、既定の構成ファイルをプロジェクトに追加できます。
アセンブリ名にプロジェクトの名前を使用します。オフラインでアセンブリにアクセスできるようにするには、名前に使用される文字が、URL の一部としてサポートされる HTTP プロトコルに従っている必要があります。
ユーザーのシステムが、明示的にオフライン モードに切り替わる必要があります。Office アプリケーションでは、ネットワーク接続が見つからない場合、オフラインに移行するかどうかをユーザーに問い合わせます。または、Internet Explorer の [ファイル] メニューの [オフライン作業] を使用して、ユーザーがオフライン モードに切り替えることもできます。コンピュータの状態は、オフラインとオンラインのどちらか 1 つです。ユーザーが Office ソリューションをオフラインに切り替えると、Internet Explorer や Outlook Express もオフラインで動作します。
ソリューションの配置には発行ウィザードを使用する必要があります。特に必要となるのは、配置マニフェストを使用するソリューションの場合です。発行ウィザードによって、外部アプリケーション マニフェストが生成されます。このマニフェストでは、配置マニフェストからの相対位置でアセンブリ パスが示されているため、オフラインの状況での汎用性が高くなります。外部アプリケーション マニフェストを手動で変更する場合、絶対パスがわかっているときにはそちらも使用できます。外部アプリケーション マニフェストでは、dependency 要素の子である installFrom 要素の codebase 属性でアセンブリ パスを指定します。installFrom 要素の詳細については、「<installFrom> 要素 (Visual Studio Tools for Office リファレンス)」を参照してください。
アプリケーション マニフェスト内のアセンブリ パスのサーバー名はすべて小文字にする必要があります。それ以外の場合、アセンブリを読み込むことができません。アプリケーション マニフェスト内のアセンブリ パスの詳細については、「Office ソリューション用アプリケーション マニフェスト (2003 システム)」を参照してください。
アプリケーション レベルのアドインが読み込まれるたびに、あるいは Microsoft Office Excel 2003 ブックまたは Microsoft Office Word 2003 文書を開くたびに、配置マニフェストが確認されます。アセンブリの最新バージョンにアクセスできる場合は、それがダウンロードされます。
依存関係があるアセンブリは、メイン アセンブリと同じディレクトリ内に存在している必要があります。
すべての参照アセンブリを明示的に読み込む必要があります。そうしないと、アセンブリは、オフラインの間、アプリケーションで使用できない可能性があります。アセンブリは、使用されるまで Internet Explorer のキャッシュに読み込まれません。ソリューションでオンラインの間に参照アセンブリを呼び出さなかった場合、その参照アセンブリはオフラインで使用できません。ソリューションがオンラインで開かれているときにすべてのアセンブリがキャッシュに読み込まれるようにするには、Startup イベント ハンドラで、ソリューション内の各参照アセンブリに対して Load を呼び出します。
オフライン状態を考慮してコードを作成する必要があります。たとえば、オフライン時にソリューションからデータベースまたは Web サービスに接続しようとした場合のエラーを適切に処理することが必要です。データ キャッシュを使用して、ドキュメント レベルのカスタマイズに含まれているデータへのアクセスを維持することを検討してください。詳細については、「キャッシュされたデータ」を参照してください。
オフラインのサポートが妥当ではないソリューションもあるので、場合によってはネットワーク接続がないときにソリューションの実行を遮断する必要があります。
システムがオンライン モードにあり、アセンブリが使用できない場合、マネージ コード拡張機能を使用するドキュメントが開かれていると、Word や Excel からオフラインで作業するかどうかがユーザーに問い合わせられ、その後でアセンブリの読み込みが再び試みられます。Word や Excel がキャッシュからの読み込みを開始するには、明示的なオフライン設定が必要とされるため、このメッセージが必要になります。
アプリケーション マニフェストでは、キャッシュするアセンブリを指定するために HTTP パスまたは HTTPS パスを使用し、アセンブリを Web 上のアクセス可能な場所に格納する必要があります。詳細については、「方法 : オフライン使用のドキュメントを配置する (2003 システム)」を参照してください。
詳細については、「Supporting Offline Browsing in Applications and Components」を参照してください。
IntelliMirror の使用
IntelliMirror は、UNC パス (たとえば \\appserver\officeapps\expenses) を使用して共有されるファイルをキャッシュする機構です。このクライアント キャッシュ機構は、Windows 2000 で導入され、Windows XP でも使用できます。共有のキャッシュを設定する方法は 2 つあります。
Windows Server 2003 を実行しているサーバーを使用しているので、各クライアントが接続時にサーバーと自動的に同期されるように共有のキャッシュを設定できる場合。共有の [オフラインの設定] が正しく設定されていることを確認します。
古い Windows サーバーまたは Windows 以外のサーバーを使用しているので、クライアント コンピュータでキャッシュ オプションを設定する必要がある場合。エクスプローラ ウィンドウで共有を右クリックし、ショートカット メニューの [オフラインを利用可能にする] をクリックします。オフライン ファイル ウィザード が表示され、このウィザードで、ファイルが自動的に同期されるように共有を設定できます。
IntelliMirror を使用して最新のアセンブリにオフラインでアクセスできるようにする場合は、次の点を考慮します。
- 各ユーザーは、ソリューションを最初にオフラインで使用する前に、同期を実行する必要があります。
IntelliMirror の詳細については、Windows のマニュアルを参照してください。
参照
処理手順
方法 : オフライン使用のドキュメントを配置する (2003 システム)
方法 : Office ソリューションを配置する (2003 システム)
方法 : Office ソリューションを実行できるようにエンド ユーザーのコンピュータを準備する (2003 システム)
方法 : 配置したアセンブリ ファイルを更新する (2003 システム)
概念
ドキュメント レベルのカスタマイズの配置 (2003 システム)