2011-11-30 17 views
15

初めて、サービスバスとしてMass Transitを使用してコンソールアプリケーションを作成しました。最近、NServiceBusに切り替えました。コンソールアプリケーションを作成する必要はなく、代わりにクラスライブラリを作成しました。プロジェクトのプロパティでは、単にコンソールアプリケーションからライブラリに変更する設定を変更しましたが、x86用にしか構築できないという制約がまだあります。Visual Studio 2010でビルドオプションとしてx64(または任意のCPU)を追加する方法(コンソールアプリケーションからクラスライブラリに)

コンソールアプリケーションであるため、ビルドタイプを任意のCPUに変更することはできません。有効になっているはずです。 に完全に私のアプリケーションをクラスライブラリに変更することができますので、任意のCPUオプションをビルドすることができますか?私は新しいプロジェクトを作成し、それにファイルをコピーし、その方法を続ける必要がありますか?それとも、プロジェクト(.proj)ファイル内の何かを変更するのと同じくらい簡単ですか?

スタックオーバーフローの問題Missing Debug|Any CPU build configuration for projects and defaulting to Debug|x86 on Windows x64は、コンソールアプリケーションでのみx86のこの問題をさらに詳しく説明しています。

+0

あなたはVS2010で非常に基本的に愚かなデザイン決定にぶつかっています。あなたのソリューションに追加するプロジェクトはすべてx86のプラットフォームターゲットにデフォルト設定されています。クラスライブラリでさえ、EXEプロジェクトが何を選択したかについては何の言い方もしていません。 AnyCPUに設定を戻すだけです。 –

+2

@ハンス...いいえ、MSはアーキテクチャに依存しないEXEが通常は価値があるよりもトラブルが多いと判断しているため、EXEをデフォルトでx86に生成するプロジェクトのみです。 32ビットアプリケーションはより多くの機能にアクセスすることができ、通常は64ビットアプリケーションよりも少し速いので、これがデフォルトです。ベータ版には、すべてのプロジェクトをx86にデフォルト設定したバグがありましたが、最新バージョンのデフォルトクラスライブラリはすべてのCPUに割り当てられていました。 – Gerald

答えて

18

構成マネージャーですべてのCPUの構成を追加するだけで済みます。

1)溶液と、[プロパティ]を選択します )[構成プロパティ]を右クリックし、[

3)はいずれもCPUにアクティブソリューションプラットフォームを変更... Configuration Managerをクリックしてください。 Any CPUプラットフォームがない場合は、#4に進みます。

4)

5)は必ず「どれCPUが」新しいプラットフォームの下で選択されていることを確認...あなたのクラスライブラリのためのプラットフォームの列の下のコンボボックスの矢印をクリックし、[新規作成]を選択します。手順3で任意のCPUソリューションプラットフォームがなかった場合は、[新しいソリューションプラットフォームの作成]チェックボックスがオンになっていることを確認します。次に[OK]をクリックします。

6)のための任意のCPUを選択)構成マネージャのうち閉じるあなたのクラスライブラリ

7)のために、「ビルド」列のチェックボックスをチェックし、自分のクラスライブラリ

8のプロパティを開き、 Platformを選択し、Platform targetのAny CPUを選択して保存します。

(ステップ8または以前に設定して行われているものに応じて、必要であってもなくてもよい。)

+2

すべての新しいコンソールプログラムでこれをデフォルトで行う方法がありますか? – naasking

+8

この設定が既に存在するというエラーが発生するため、 'AnyCPU'を作成できませんが、コンソールアプリケーション用に選択することはできません。 –

+0

@ Johnny_D "新しいソリューションプラットフォームを作成する"チェックボックスをオフにして、私のために働いた。 –

0

だけConfiguration Managerで任意CPUための構成を追加します。

  1. ソリューションを右クリックし、[プロパティ]を選択します。

  2. 「構成プロパティー」を選択し、「構成マネージャー」をクリックします。

  3. アクティブソリューションプラットフォームを任意のCPUに変更します。任意のCPUプラットフォームがない場合は、手順4に進みます。

  4. クラスライブラリの[プラットフォーム]列のコンボボックスの矢印をクリックし、[新規]を選択します。

  5. [新しいプラットフォーム]で[すべてのCPU]が選択されていることを確認します。手順3で任意のCPUソリューションプラットフォームがなかった場合は、[新しいソリューションプラットフォームの作成]チェックボックスがオンになっていることを確認します。次に[OK]をクリックします。

  6. チェック

  7. 閉じる設定マネージャのうち、あなたのクラスライブラリのための「構築」列のチェックボックス、およびその後、プラットフォームのための任意のCPUを選択して、あなたのクラスライブラリ

  8. のプロパティを開き、 「プラットフォームターゲット」の「任意のCPU」を選択して保存します。

ステップ8は、以前の設定で行われたことに応じて、必要でなくてもよい。

関連する問題