ilasm myTestFile /dll /output:myNewTestFile.dll
可以编译为dll,怎么再附加一个资源文件的的,或者其他方法,最终想要实现的目的就是一个dll可以附加资源,然后可以取出添加的资源!求解!在线等!
ilasm /resource 可以在编译的时候指定资源文件
ildasm 可以将 DLL 解包成员代码和资源文件
对对,就是这个思路!现在就是我反编译之后出来那几个文件了,现在怎么把他合起来,而且我还想加入其他本来不属于他的文件,怎么做呢!求解,谢谢!
@雪花一剑: ildasm 反编译出来的文件,可以使用 ilasm 再把它们编译成一个程序集。
如果是加入代码文件的话,直接添加就行了,如果是加入资源文件的话,如果你的资源文件是 .txt或.restext之类的,那么你需要用 resgen.exe 将其转换成 .resource 或 .resx 资源文件,然后在 ilasm 编译时,指定此资源文件。
也可以通过 al.exe 为一个程序集附加资源文件:
http://msdn.microsoft.com/zh-cn/library/vstudio/c405shex(v=vs.100).aspx
@Launcher: 嗯!谢谢哥们!这两个思路我都找到了,但是那个合并语句不会写的,例子都是自己拆分自己合并的语句!比如,我要另外添加一个txt文件,txt我已经用 resgen.exe 转成了 .resource,现在是有il res 和转好的 .resource 怎么将他们合并在一起的,那个ilasm 指令怎么写的.... 这个没看明白,愁 ,求解!
@雪花一剑: ilasm /resource:you.resource myTestFile /dll /output:myNewTestFile.dll
@Launcher: 为什么不行呢!报错最后一句为:Could not create output file,error code=0x80070714
@Launcher: 我测试的三个文件为1.resources(是1.txt 用resgen.exe 转后的文件) Test.il Test.res,原dll为Test.dll
@雪花一剑: 0x80070714 的含义是指格式不对,ilasm 无法识别。
@Launcher:
/资源: file.res |
在生成的 .exe 或 .dll 文件中包括 *.res 格式的指定资源文件。 使用 /resource 选项只能指定一个 .res 文件。 |
可能是这个资源格式问题 吗?这个转换过程也挺复杂的,AL,会简单些吗?能不能加个qq,我q:960316522,谢谢指导!
@雪花一剑: 我也不太明白,还请你自己捉摸下。
@Launcher: 嗯 好的 谢谢你!我再看看!主要那些指令 不熟悉用法,很容易出错..
搜一下ilmerge
谢谢!那个类似合并文件,我需要附加,然后再取!