2

VS2012 を使用している場合、フォルダーに「#」文字が含まれるパスにあるツールボックスにアセンブリを追加しようとすると、問題が発生するようです。(他のキャラは未確認)

テスト ケース 1: C:\test#\An Assembly.dll
にあるアセンブリを参照 すると、次のエラーが生成されます: ツールボックスに配置できる 'C:\test#\An Assembly.dll' にコンポーネントがありません。

テスト ケース 2: C:\test\An Assembly.dll
にある アセンブリを参照する エラーは表示されず、アセンブリに含まれるコントロールがリストに追加されます。

フォルダー構造を変更してからかなりの年月が経過しているため、これが以前に起こったことを覚えていないので、これは Visual Studio 2012 Update 2 で発生したものなのだろうか.

これが発生し始めた理由はありますか?アセンブリが存在するパスに「#」文字を含めることができる回避策はありますか?

4

2 に答える 2

0

同じエラーが発生しました。盗まれた自転車の答えが役立つことがわかりました。プロジェクトは「C#」という名前のフォルダーにありました。そのフォルダーの名前を変更して再コンパイルすると、問題が修正されました。この特定の解決策は、このエラーを受け取ったごく一部の人にしか役に立たないと確信していますが、問題を追跡する際には常に裏付けが役立ちます。

于 2014-10-29T05:37:22.180 に答える
0

私は同じ問題を抱えていて、ほとんど必死でした。しかし、私はこの投稿に出くわしました。最後に、「#」なしで結果のアセンブリを別の場所に配置するだけでは不十分であるため、言及されたよりもさらに悪いようです。保存してコンパイルする必要があります「#」のないパスのソリューション全体。\ 私の問題は、すべての C# プロジェクトが "somedirectory\C#\Projectname....." のパスにあることでした。結果のアセンブリのコンパイルと参照は正常に機能していましたが、アセンブリからツールボックスにコンポーネントを追加しようとすると、上記のエラー メッセージが表示されました。ここでこの投稿を読んだ後、コンパイル後に結果の DLL を別のパスにコピーしようとしましたが、何も変わりませんでした。もう一度試した後、プロジェクトパス全体を変更して「#」を取り除きました。これが機能するための秘訣でした!

于 2013-11-12T18:51:29.963 に答える