次の方法で共有


方法 : コードを実行せずに Office ソリューションを開く

更新 : 2007 年 11 月

対象

このトピックの情報は、指定された Visual Studio Tools for Office プロジェクトおよび Microsoft Office のバージョンにのみ適用されます。

プロジェクトの種類

  • ドキュメント レベルのプロジェクト

Microsoft Office のバージョン

  • Microsoft Office 2003

  • 2007 Microsoft Office system

詳細については、「アプリケーションおよびプロジェクトの種類別の使用可能な機能」を参照してください。

マネージ コード拡張機能を使用して作成した Microsoft Office 2003 ソリューションは、エンド ユーザーの Office アプリケーションのセキュリティ設定が [高] に設定されている場合でも実行されます。これは、.NET アセンブリ コードのセキュリティが、Microsoft Office Word 2003 や Microsoft Office Excel 2003 ではなく、Microsoft .NET Framework によって管理されるためです。

ただし、コードを実行せずに文書を開くことが必要な場合もあります。たとえば、文書が開くときに実行されるコードによって内容が変更される可能性があるので、その前に文書の外観を更新しておく場合です。また、特定の情報を含む文書をだれかに送信するときに、内容が変更される可能性のあるコードを実行したくない場合も考えられます。

マネージ コード拡張機能が組み込まれた文書やブックを、アセンブリ コードを実行せずに開く方法がいくつかあります。

Shift キーを使ってアセンブリをバイパスするには

  • Word または Excel で文書が開くときに初期イベントが発生しないように、Shift キーを押しながら、[ファイル] メニューから文書またはブックを開きます。

    ytt5y8ya.alert_note(ja-jp,VS.90).gifメモ :

    作業の開始タスク ペインから文書またはブックを開く場合は、Shift キーを押しながら実行してもコードはバイパスされません。文書を開いた後のイベントの発生も回避できません。

    この方法は、先にコードの実行や文書の変更を行わずに、文書を開いて変更を加える場合に適しています。

完全な信頼を削除することによってアセンブリをバイパスするには

  • セキュリティ ポリシーでアセンブリから完全な信頼を削除できます。その結果、Office ドキュメントを開くたびにエラーが発生します。詳細については、「方法 : フォルダおよびアセンブリからアクセス許可を削除する (2003 システム)」を参照してください。

    この方法は、他のユーザーがソリューションを実行できる状態を保ちながら、ソリューションを自分のコンピュータでは実行しない場合に適しています。

アセンブリの名前変更または削除によってアセンブリをバイパスするには

  • アセンブリが配置されているコンピュータで必要なアクセス許可を保持している場合は、文書やブックがアセンブリを検出できないよう、アセンブリ名を変更したり、アセンブリを削除したりできます。その結果、Office ドキュメントを開くたびにエラーが発生します。

    複数のユーザーによって使用されるソリューションの場合、この方法を使用すると、すべてのユーザーがソリューションを実行できなくなります。この方法は、コードまたは参照サーバーに問題が見つかったときに、すべてのユーザーがソリューションを実行できないようにする場合に適しています。

参照

概念

Office ソリューションのアセンブリの概要

安全な配置 (2003 システム)

Visual Studio における Office ソリューションの作成

Office ソリューションにおけるアプリケーション マニフェストと配置マニフェスト