2011-08-09 13 views
1

私は、既存のプロジェクトをアドインに変換することを任されています。現在のプロジェクトはクラスライブラリです。アドインでは、CLプロジェクトを参照として追加しました。アドインのConnectクラスのExecメソッドでは、私はCLのためのエントリポイントを開くには、次のコードを追加してみました:Visual Studio 2010アドインでネームスペースにアクセスする際の問題

var form = new CLNameSpace.MainForm(); 
form.Show(); 
CLNameSpaceは(この記事のために改称)名前空間がCLプロジェクトから参照されている

。また、コードの先頭にあるusingブロックにもあります。私はthis answerのメソッドを使って完全修飾名を取得しようとしましたが、それは正しいです。ビルドやランタイムエラーは発生しませんが、何か問題があります。私は、この名前空間の可視性の問題を回避するにはどうすればよい

The type or namespace name 'CLNameSpace' is not valid in this scope

:手で上記の2行をインスタンス化するために、イミディエイトウィンドウを使用して、私は次のエラーメッセージが表示されますか?私はそれがCLNameSpace構成のいくつかの種類だ場合(。それも可能だ場合)あなたは、おそらくこのような何かしなければならないでしょう

+0

名前空間をどのようにインポートしましたか? –

+0

@ 0xA3 Solution Managerでプロジェクトを右クリックし、Add Referenceをクリックし、CLNameSpaceを使用してプロジェクトを選択しました。これは問題を引き起こしていたので、そのプロジェクトの出力DLLへの参照を追加しようとしました。 Intellisenseは現在その名前空間内のすべてを取得しますが、無効な名前空間エラーが発生しています。 – anjunatl

+0

申し訳ありませんが、私は実際の 'using'ステートメントを意味していました。コードを表示できますか? –

答えて

2

不思議:Application.Runは、標準的なアプリケーションのメッセージループを開始すると

var form = new CLNameSpace.MainForm(); 
form.Show(); 

注意を - しかし、メインアプリケーションにすでにメッセージループがあるので、別のメッセージループを開始しようとしても意味のある結果は得られません。

+0

まず、あなたは正しいです。私は別のソリューションでテストを試みました。私はブレークポイントを入れ、イミディエイトウィンドウを手で宣言するために使用しました。「このタイプでは、型または名前空間の名前「CLNameSpace」は有効ではありません。私はそれが適切に参照されていると私は、コードのブロックで 'を使用してCLNameSpace;'ステートメントを持っています。 – anjunatl

関連する問題