我需要合并一些 dll,文件名和程序集名称都需要与我的主 dll (mydll.dll) 相同。我还需要 pdb 文件。我该怎么做?
以下是我尝试过的几件事:
只需使用 ILMerge mydll.dll .... /out:mydll.dll 失败并显示“访问路径 ...mydll.pdb 被拒绝”。
将 mydll.dll 重命名为 mydllTemp.dll,将 mydll.pdb 重命名为 mydllTemp.pdb,然后 ILMerge mydelltemp.dll .... /out:mydll.dll 失败并显示“与 ...mydlltemp.dll 关联的 pdb 已过期" 我认为这是因为 ilmerge 会查看程序集名称来查找 pdb,因此它会查找已重命名的 mydll.pdb。
将 mydll.dll 重命名为 mydllTemp 然后 ILMerge mydelltemp.dll .... /out:mydll.dll 这可以正常工作,但是当我将调试器附加到进程时它不会触发
ILMerge mydll.dll ... /out:mydlltemp.dll 将 mydlltemp.dll 重命名为 mydll.dll 并将 mydlltemp.pdb 重命名为 mydll.pdb 现在我可以将调试器附加到触发断点的进程。但是,程序集名称现在是 mydlltemp 而不是 mydll
那么我怎样才能让它工作并拥有原始的程序集名称呢?