質問

WPFアプリを展開しようとしています。セットアップウィザードを使用してセットアッププロジェクトを作成しました。追加したプロジェクトの唯一の出力はプライマリでした。これを構築してプログラムをインストールした後、デスクトップのexeをクリックするとすぐに「「私のプログラム」が動作を停止した」というポップアップを取得するので、プログラムのデバッグをクリックして表示されます。

タイプ 'system.windows.markup.xamlparseexception'の操作の未処理の例外は、presentionframework.dllで発生しました

追加情報:「ConnectionIDのセットは例外を投げました。」ライン番号「10」とライン位置「9」。

この例外は、何を修正するかについてのいかなる方向にも指し示していません。私のアプリには「ConnectionID」はありません。

私は以前、私のシステムトレイのnotifyiconのためにxamlparseexceptionに出くわしていましたが、これは私のexeのパスにアイコンを追加することによって修正されました。これが問題だと思ったので、他のすべてのプロジェクト出力とともに、セットアッププロジェクトにアイコンを追加しました。まだ動作していません。

これはあいまいなエラーであることはわかっていますが、助けていただければ幸いです。私のアプリはまったく実行されません。ありがとう!

役に立ちましたか?

解決

これは通常、すべての依存関係が出力にコピーされていないことによって引き起こされます。あなたが言うように、エラーメッセージはあまり役に立ちませんが、私はあなたのアプリケーションが解析されたタイプを解決するために利用可能なすべての依存関係を持っていることを確認します。

通常、参照されたアセンブリのコピーをTrueにコピーするだけで十分ですが、参照自体がアセンブリを参照する場合があるため、これらの参照も明示的に追加する必要がある場合があります。

アップデート:

@benn1thによる重要な追加。

アセンブリが必要なものを確認したい場合:

プロジェクトを公開してインストールした後、同じタイプの問題を取得していました(Debug vs2013デスクトップ、エラーなどで正常に動作していました)が、アドバイスを使用しました。 http://geekswithblogs.net/lbugnion/archive/2007/03/14/108728.aspx そしてワム!インストールされたプロジェクトが機能していました。

try

{
  InitializeComponent();
}
catch ( Exception ex )
{
  // Log error (including InnerExceptions!)
  // Handle exception
}

他のヒント

ソリューションのクリーニングと再構築が役立つ場合があります!

VS2010でWPFソリューションでこの問題を抱えていました。ソリューションには、DLLをテストするための簡単なDLLとテストプロジェクト(起動に設定)が含まれていました。私のDLLはX86に設定され、テストプロジェクトはX64に設定されていました。テストプロジェクトをX86に変更したとき、問題は解決されました。

デバッガーでこの例外を取得した場合、例外のInnerexceptionメンバーを確認してください。それはあなたに欠落しているアセンブリについてのヒントを与えるかもしれません。

プロジェクトを公開してインストールした後、同じタイプの問題を取得していました(Debug vs2013デスクトップ、エラーなどで正常に動作していました)が、アドバイスを使用しました。 http://geekswithblogs.net/lbugnion/archive/2007/03/14/108728.aspx そしてワム!インストールされたプロジェクトが機能していました。

try

{
  InitializeComponent();
}
catch ( Exception ex )
{
  // Log error (including InnerExceptions!)
  // Handle exception
}

私はこれを理解しようとして4時間良い時間を過ごしました。私はXAMLとは何の関係もありませんでした! MainWindow Initializeの背後にあるコードの小さなエラーであることが判明しました。

他のすべてが失敗した場合は、そこで確認してください

プロジェクトの清掃と再構築は私にとって効果的ではありませんでした。

Bin Directoryを削除してから再構築することができます。この方法で問題を解決しました。

私はこの問題を抱えています。この問題は、microsoft.expression.drawing.dllのために発生します。DLLをダウンロードして参照を追加してください。

アプリケーション内で実行されている複数のDLLを使用して作業したときにこれに遭遇しました。これらのDLLには、同じ依存関係がロードされたバージョンが異なります。

通常、この問題を防ぐためにリリースビルド中にDLLをマージしますが、開発サイクル中にマースされていないDLLのセットを1セット以上テストしているかどうかがわかります。

解決策は、テストされていない他のDLLにマージされたリリースバージョンを使用して、マージされたリリースバージョンを使用して、または従属DLLが両方のセットで同じバージョンであることを確認するために、1つのマースDLLのみをテストするためのソリューションです。

私はこの問題を削除して解決しました アセンブリに署名します, 、 ここ :

enter image description here

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top