1

Blend / Silverlight / VS2010 / .net/etcを学んでいます。ネットワークドライブ上にある単純なプロジェクトがあります。プロジェクトを再構築するようにVS2010に指示すると、次のエラーメッセージが表示されます。

------再構築すべて開始:プロジェクト:MySilverlightApplication、構成:任意のCPUのデバッグ------
  MySilverlightApplication-> H:\ PRJ \ VisualStudio \ ExpressionBlend \ Unleashed \ MySilverLightApplication \ MySilverlightApplication \ Bin \ Debug \ MySilverlightApplication.dll

C:\ Program Files \ MSBuild \ Microsoft \ Silverlight \ v4.0 \ Microsoft.Silverlight.Common.targets(214,9):
 エラー:アセンブリを読み込めませんでした
         file:/// H:\ PRJ \ VisualStudio \ ExpressionBlend \ Unleashed \ MySilverLightApplication \ MySilverlightApplication \ obj \ Debug\MySilverlightApplication.dll。
         このアセンブリは、Webからダウンロードされた可能性があります。アセンブリがWebからダウンロードされている場合は、
         ローカルコンピューター上にある場合でも、WindowsによってWebファイルとしてフラグが付けられます。
         これにより、プロジェクトで使用できなくなる可能性があります。この指定は、ファイルのプロパティを変更することで変更できます。
         信頼できるアセンブリのみのブロックを解除します。詳細については、http://go.microsoft.com/fwlink/?LinkId=179545を参照してください。
==========すべて再構築:0成功、1失敗、0スキップ==========

プロジェクトはWebからダウンロードされませんでした(Blendを使用して作成しました)。検索を行った後、問題は.netのセキュリティ設定が原因である可能性があると推測しました。次のコマンドを発行しました。

C:\ Program Files \ Microsoft Visual Studio 10.0 \ VC> caspol -m -ag 1.3 -url "file:// \\ p4dc \ h $ \ *" FullTrust

それが問題を解決することを期待して。p4dcはサーバーマシンの名前、h $はサーバー上のh:ドライブの管理共有であり、ローカルマシン上のドライブ文字「H」にマップされます(\\ p4dc \ h $はHにマップされます)ローカルマシンで)。

それは問題を解決しませんでした。私のcaspolコマンドが正しいかどうかはわかりません(私はその場でcaspolを学ぶことを計画していませんでした)、それは試してみるのが妥当なことのように思えました。プロジェクト全体をローカルCドライブにコピーすると問題は解決しますが、その「解決策」はかなり望ましくありません。

この時点では、プロジェクトをローカルドライブに移動せずに、他に何を解決しようとすればよいのかわかりません。

解決策につながる助けは大歓迎です。

ジョン。

4

2 に答える 2

6

VS2010によって表示されるエラーメッセージは、問題が信頼とセキュリティにあると誰もが信じるように導きますが、それはネットワークドライブで完全な信頼を許可しても問題は解決しません。

解決策につながったのは、最初にプロジェクトをVS2008に移植して、同じ問題が発生するかどうかを確認することでした。VS2008は、文句なしにプロジェクトを実行できて完全に満足していました。

次に、VS2008プロジェクト(動作していた)をVS2010に変換しました。VS2010はプロジェクトのビルドを拒否しましたが、今回は「リモートアセンブリ」と、MSDNのリンクを参照するエラーメッセージが異なり、ソリューションにつながりました。

本当の問題は、VS2010がネットワークドライブ上のアセンブリを「リモートアセンブリ」と見なすことです(アセンブリがWebサイトからロードされている場合と同じです)。Caspolはその問題を解決できませんでした(あるはずですが、それは私のせいかもしれません、私はCaspolの使用に精通していません)。

この長い話を終わらせるために、エラーメッセージで提供されるリンクは次のとおりです。

http://msdn.microsoft.com/en-us/library/dd409252(VS.100).aspx

そのリンクの指示に従って「machine.config」を編集した後、次のように変更<runtime/>しました。

<runtime>
  <loadFromRemoteSources enabled="true"/>
</runtime>

プロジェクトは正常にビルドされ、問題なく実行されました。

アリソンとCodeNakedの支援に感謝します。

ジョン。

PS:VS2010が最初に「より良い」エラーメッセージを表示していたら、かなり良かったでしょう。代わりに、VS2010の機能していないプロジェクトをVS2008に移植し、そこで機能し、VS2010に移植して、解決策につながるより良いエラーメッセージを取得する必要がありました。

于 2011-05-17T00:20:14.377 に答える
1

これが役立つかどうかはわかりませんが、試してみる価値があります。VisualStudio .NETプロジェクトをネットワーク上の場所から実行できるようにするにはどうすればよいですか?

于 2011-05-16T12:54:35.143 に答える