9422


お世話になります。

.Netにて、生成されたexeと関連するdllを結合して、単体で起動するexeに  
変換するILMergeですが、なかなかうまく変換できません。それが、  
必ず失敗するのではなく、成功するときもあれば、失敗するときもあるのです。  
一度成功したかと思うと、それ以降が失敗してしまいます。

下記が使用しているコマンドです。

[code]

    "C:\Program Files (x86)\Microsoft\ILMerge\ILMerge.exe" /targetplatform:v4
    　/out:"C:\..\A.exe" "C:\...\Z.exe" "C:\...\B.dll"
    
[/code]

その結果、下記のようなエラーが出ます。

[code]

    An exception occurred during merging:
    ILMerge.Merge: There were errors reported in B's metadata.
    The pdb associated with C:\...B.dll is out of date.
    場所 ILMerging.ILMerge.Merge()
    場所 ILMerging.ILMerge.Main(String[] args)
    
[/code]

必ず失敗するのならまだしも、たまに成功するのでますます解りません。

原因と対策をお教えいただけないでしょうか。

急務です。

何卒よろしくお願いします。


CC BY-SA 3.0
2015-04-18T07:42:47.127
9283
2015-04-22T00:36:23.477
2015-04-21T02:36:49.573
49
9374
question
c# .net
ILMergeで出てしまうエラーの回避


皆様の回答、ありがとうございました。

ILMergeには、Releaseとしてマージする際には、/ndebugオプションを  
付けることが解りました。

後、できれば一度プロジェクトをクリーンしてから再ビルドするほうが  
良いというのも解りました。

本当にありがとうございました。


CC BY-SA 3.0
2015-04-22T00:36:23.477
9422
2015-04-22T00:36:23.477
9374
9283
answer