次の方法で共有


.NET Framework 4 に移行する Office プロジェクトの実行に必要な変更

更新 : 2010 年 5 月

Office プロジェクトのターゲット フレームワークを旧バージョンの .NET Framework から .NET Framework 4 に変更する場合は、ソリューションを開発用コンピューターとエンド ユーザーのコンピューターで実行できるように、次のタスクを実行する必要があります。

  • Visual Studio 2008 からアップグレードする場合は、プロジェクトから SecurityTransparentAttribute を削除する。

  • 開発用コンピューターでプロジェクトを実行またはデバッグできるように、Visual Studio で Clean コマンドを実行する。

  • プロジェクトの .NET Framework の必須コンポーネントを更新する。

  • ターゲット フレームワークを変更する前に ClickOnce を使用してソリューションを配置した場合は、エンド ユーザーがソリューションを再インストールする。

これらの各タスクの詳細については、以下の対応するセクションを参照してください。

Visual Studio 2008 からアップグレードするプロジェクトからの SecurityTransparent 属性の削除

Visual Studio 2008 から Office プロジェクトをアップグレードし、それに応じてプロジェクトのターゲット フレームワークを .NET Framework 4 に変更する場合は、SecurityTransparentAttribute をプロジェクトから削除する必要があります。Visual Studio ではこの属性は自動的に削除されません。この属性を削除しないと、ソリューションの読み込みに失敗し、次のエラーが報告されます。

"型 '<プロジェクト内のホスト項目クラス>' で継承セキュリティ ルールの違反が発生しました。 派生型は、基本型のセキュリティ アクセシビリティと一致するか、それより低いアクセスが設定されている必要があります。"

アップグレードされたプロジェクトのターゲット フレームワークを Visual Studio で .NET Framework 4 に変更できる状況の詳細については、「Office ソリューションのアップグレードと移行」を参照してください。

SecurityTransparentAttribute を削除するには

  1. Visual Studio でプロジェクトを開き、ソリューション エクスプローラーを開きます。

  2. [プロパティ] ノード (C# の場合) または [マイ プロジェクト] ノード (Visual Basic の場合) の下で、AssemblyInfo コード ファイルをダブルクリックしてコード エディターで開きます。

    注意

    Visual Basic プロジェクトで AssemblyInfo コード ファイルを確認するには、ソリューション エクスプローラー[すべてのファイルの表示] をクリックする必要があります。

  3. SecurityTransparentAttribute を探し、ファイルから削除するか、コメント アウトします。

    <Assembly: SecurityTransparent()>
    
    [assembly: SecurityTransparent()]
    

開発用コンピューターでプロジェクトをデバッグまたは実行するための消去コマンドの実行

Office プロジェクトのターゲット フレームワークを .NET Framework 4 に変更する前にプロジェクトをビルドした場合は、[消去] コマンドを実行し、ターゲット フレームワークを変更した後でプロジェクトを再度ビルドする必要があります。 [消去] コマンドを実行しない場合は、再ターゲットされたプロジェクトをデバッグまたは実行しようとしたときに COMException を受け取ります。

[消去] コマンドの詳細については、「Office ソリューション ビルド処理の概要」を参照してください。

配置する必須コンポーネントの更新

Office プロジェクトの対象を .NET Framework 4 に変更する場合は、[必須コンポーネント] ダイアログ ボックスで、対応する .NET Framework の必須コンポーネントも更新する必要があります。 そうしない場合、ClickOnce 配置または Windows インストーラーのセットアップ プロジェクトで以前のバージョンの .NET Framework がチェックされ、インストールされます。

エンド ユーザーのコンピューターに配置する必須コンポーネントの更新の詳細については、「方法: Office ソリューションを実行するための必須コンポーネントをエンド ユーザーのコンピューターにインストールする」を参照してください。

エンド ユーザーのコンピューターでのソリューションの再インストール

ClickOnce を使用して .NET Framework 3.5 を対象とする Office ソリューションを配置した後にプロジェクトの対象を .NET Framework 4 に変更した場合、エンド ユーザーはソリューションをアンインストールし、再発行後のソリューションを再インストールする必要があります。 再ターゲットされたソリューションが再発行され、エンド ユーザーのコンピューター上でソリューションが更新された場合、更新されたソリューションを実行したエンド ユーザーは COMException を受け取ります。

ソリューションのアンインストールの詳細については、「方法: ClickOnce Office ソリューションをアンインストールする」を参照してください。

参照

その他の技術情報

.NET Framework 4 への Office ソリューションの移行

履歴の変更

日付

履歴

理由

2010 年 5 月

Visual Studio 2008 からアップグレードしたプロジェクトからの SecurityTransparentAttribute の削除に関するセクションを追加しました。

情報の拡充