問題タブ [ilmerge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
811 参照

nhibernate - ILMergeはNHIbernateで問題を抱えています

誰かがアセンブリをNHibernatev3.0と正常にマージしましたか?

次のコマンドは機能しません(アセンブリについて文句を言います)

SharePointで実行できるように、3.5フレームワークをターゲットにする必要があります。

これがログです

0 投票する
1 に答える
807 参照

c# - C# アプリケーション: インストーラーのビルド後にローカリゼーション dll が見つからない

私は、さまざまなテキスト エントリがリソース ファイル (GlobalLanguages.resx および GlobalLanguages.fr.resx) に格納されている C# プロジェクトでローカリゼーションを使用するこのフォーム アプリケーションに取り組んでいます。これらは Embedded に設定されています。

VS 2008 のデバッグ/リリースでアプリケーションを実行すると、すべてがうまく機能し、VS 2008 の外部の出力フォルダーから exe を起動したときにも機能します。私のマシンでは、ローカリゼーションが機能していません。インストールフォルダーに.fr.resx値を含む.dllファイルがあります。

インストーラー プロジェクトは、メイン プロジェクトのローカライズ出力を含めるように設定されています。また、インストールされているアプリの現在のロケールをログ ファイルに出力すると、正しい値が得られますが、テキストは既定の言語で表示されます。

IlMerge を使用して exe 内のいくつかの .dll ファイルをマージしますが、リソースの .dll が見つかるので、それは問題ではないと思います。私は本当にすべてを試しましたが、今はアイデアがありません...

皆さんが助けてくれることを願っています。

ありがとう

0 投票する
1 に答える
13342 参照

ilmerge - ilMergeを使用してdllをexeファイルにマージする方法は?

私は試した:

しかし、得た:

私は何が間違っているのですか?(ちなみに、dllをexeファイルにマージするためのより良い方法はありますか?)

ありがとう

0 投票する
1 に答える
257 参照

c# - 実行可能ファイルがILMergedになった後を除いて、動的ロードは正常に機能します

これは奇妙です。

を使用してDLLを動的にロードするWindowsアプリケーションがありますReflection.Assembly.LoadFrom(dll_file_name_here)

アプリケーションを別のDLLとILMergeするまで、期待どおりに機能します。

したがって、このシナリオは正常に機能します。

  • MyApp.exe
  • MyAppComponent.dll
  • Plugin.dll

MyApp.exeとMyAppComponent.dllをILMergeすると、次のようになります。

  • MyApp.exe
  • Plugin.dll

呼び出しReflection.Assembly.LoadFrom("Plugin.dll")は正常に読み込まれるようですが、それを使って何かをしようとすると、次のようになります。

「要求されたタイプの1つ以上をロードできません。詳細については、ローダーの例外プロパティを取得してください」という例外が発生します。

イライラするのは、事前マージのデバッグが完全に機能するため、実際にはデバッグできないことです。

ヘルプ?

0 投票する
3 に答える
457 参照

.net - .NET EXEは、ILMergeを使用してDLLをマージした後も、DLLを見つけようとします

ILMergeツールを使用してDLLを実行可能ファイルと組み合わせる単純なマージを試みています。マージ自体は正常に機能しますが、マージされたEXEを実行した後も、元のDLLを見つけようとします(EXEにまったくマージされていない場合など)。

ILMergeは内部への参照を自動的に更新しますか、それとも手動で何かを行う必要がありますか?私はILMergeがすべてを自動的に作成することを前提としていました。

EXEとDLLはどちらもWinForms.NET3.5です。

0 投票する
1 に答える
1475 参照

msbuild - ILMerge と MSBuild - マージされた EXE でランタイム エラーが発生する

ILMerge をポスト ビルド タスクに追加してコマンドラインを実行した後、マージされたプログラム MyMerged.exe を正常に取得できました。

しかし、実行すると例外が発生します

未処理の例外: System.TypeLoadException: アセンブリ 'mymerged、Version=1.0.0.0、Culture=neutral、PublicKeyToken=null' から型 'Microsoft.Build.Utilities.TaskItem' を読み込めませんでした' メソッド '.ctor' に実装がないため ( RVAなし)。MyProgram.Program.Main (文字列 [] args) で

これは、コンストラクターがない状況を処理しない ILMerge のバグですか、それともコンストラクターがないための TaskItem のバグですか。

ありがとう

0 投票する
2 に答える
4034 参照

c# - pdb ファイルをマージしようとしたときの ILMerge 例外

2 つのアセンブリを 1 つのアセンブリにマージしようとしていますが、これは問題なく動作します。しかし、*.pdb ファイルもマージしようとすると、エラーが発生します。

パス「F:\Fentec\Businessplan\trunk\Ausgabe\Debug\modules\Planrechnung\Planrechnung.pdb」へのアクセスが拒否されました。

*.pdb ファイルのマージをスキップするために /ndebug オプションを使用すると、問題なく動作します。もちろん、デバッグ中にシンボルをロードすることはできません。ビルド後のイベントで ILMerge を呼び出したとき、最初は Planrechung.pdb が使用中でロックされていると思いました。また、VS2010を閉じてコマンドラインからILMergeを呼び出してみましたが、結果は同じでした。ProcessExplorer で確認しましたが、ファイルにハンドルがありません。

これは私が ILMerge を呼び出す方法です:

E:\XP\Tools\ILMerge\ilmerge /targetplatform:v4,"D:\WINDOWS\Microsoft.NET\Framework\v4.0.30319" /lib:"F:\Fentec\Businessplan\trunk\Ausgabe\Debug\bin" /out:Planrechnung.dll "F:\Fentec\Businessplan\trunk\Ausgabe\Debug\modules\Planrechnung\Planrechnung.dll" "F:\Fentec\Businessplan\trunk\Ausgabe\Debug\modules\Mandantenverwaltung\Mandantenverwaltung.dll"

私は何かを逃しましたか?必要な追加情報がある場合は、お尋ねください。

こんにちは、
スカリ

0 投票する
1 に答える
738 参照

c# - dllのアイコンとc#ilmergeの問題

私はこの問題を抱えています:私のtest.dllには、アイコンpngのボタンが付いたユーザーコントロールがあります。私のtest.exeにはtest.dllのユーザーコントロールが含まれており、すべてが正常に機能します。ilmergeを使用して次のようなtestMerged.exeを作成した後:

プログラムは正常に動作しますが、ボタンにアイコンがありません....どうすればこれを解決できますか?

0 投票する
1 に答える
3059 参照

c# - ILMergeの質問

WCFサービスの「プロキシ」アセンブリとして複数のアセンブリを1つにマージしようとしています。現在、プロキシのユーザーは、データコントラクトを含むアセンブリと、継承スキームのためにドメインアセンブリを参照する必要があります。

これにはILMergeを使用したいと思います。特に、ILMerge-Tasksプロジェクトは有望に見えます。特に、プロジェクトホームからのこの行は次のとおりです。

ILMerge-タスクプロジェクトホーム:

... ILMerge.exeが存在しなくてもタスクを使用できるように、ILMergeとタスクdllをマージするビルド後のイベントも含まれています。

これはまさに私が達成したいことですが、私はそれをどうやって行うのか本当にわかりません。助けてください!

その他の関連する(おそらく)情報:

  • TFSで自動ビルドを使用しているため、ilmerge.exeが存在しないことは大きなプラスになります

アップデート:

そこで、プロジェクトにILMerge.MSBUild.Tasks.dllを含め、ビルドファイルに次のものを追加しました(ilmergeプロジェクトのホームから取得)。

しかし、今、私は次のエラーを受け取ります:

「UsingTask」タスクが見つかりませんでした。以下を確認してください。1。)プロジェクトファイル内のタスクの名前は、タスククラスの名前と同じです。2.)タスククラスは「パブリック」であり、Microsoft.Build.Framework.ITaskインターフェイスを実装します。3.)タスクは、プロジェクトファイル、または「C:\ Windows \ Microsoft.NET \ Framework\v4.0.30319」ディレクトリにある*.tasksファイルで正しく宣言されています。

0 投票する
2 に答える
582 参照

c# - Dotfuscator と ILMerge を連携させることはできますか?

Dotfuscator を ILMerge で動作させようとしていますが、どの順序で適用しても、常に何らかの理由で機能しなくなります。

  • dotfuscator を使用してから ILMerge を使用すると、pdb データベースが古いというメッセージが表示されます。
  • その逆を行うと、dotfuscator は、ビルドするアセンブリがないというエラーをスローするだけです。

Dotfuscator を ILMerge とうまく連携させるにはどうすればよいですか?