我正在尝试从netmodules自动生成程序集。我尝试在命令行中使用"al.exe“工具: al module1.netmodule module2.netmodule /target:library /out:assembly.dll。我的问题是我的程序集没有嵌入我的网络模块,而只是引用它们:-如果我用"ildasm.exe“工具打开我的程序集,我只能看到清单-如果我在一个新的Visual Studio项目中导入我的程序集,它不会工作,除非我把两个网络模块复制到程序集旁边
我尝试了"ILMerge“工具,它在我的简单示例中似乎工作得很好:"ildasm.exe”工具显示了正确的类,并且程序集可以在Visual Studio项目中使用。但是有一些限制(WPF)我害怕在我的项目中进一步面对。
我的问题是:-有没有办法使用"al.exe“或"csc.exe”从网络模块生成独立的程序集?-如何真正将网络模块嵌入到程序集中,而不仅仅是引用它们?-我必须使用"ILMerge.exe“吗?- "al.exe”的真正用途是什么?"csc.exe“不能使用"/addmodule”选项做同样的事情吗?
发布于 2011-06-22 03:15:06
你有没有试过Link.exe --它可以完成这项工作。您可以在此处找到有关链接器的更多详细信息:
http://msdn.microsoft.com/en-us/library/y0zzbyt4(v=vs.71).aspx
链接工具作为Visual Studio的一部分进行安装。在我的机器上,Link.exe安装在: C:\Program Files (x86)\Microsoft Visual Studio10.0\VC\bin\amd64
适用于我的命令结构如下:
LINK = "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\Link.exe"
LIBPATH1 = "$(PROGRAMFILES)\Microsoft Visual Studio 8\SDK\v2.0\lib"
LIBPATH2 = "$(PROGRAMFILES)\Microsoft SDKs\Windows\v7.0A\Lib"
$(LINK) /LIBPATH:$(LIBPATH1) /LIBPATH:$(LIBPATH2) /DLL /nologo /LTCG /out:$(DLL_NAME).dll $(EXT_MODULE1) $(EXT_MODULE2) $(EXT_MODULE3) ... https://stackoverflow.com/questions/3938236
复制相似问题