我们如何在.Net程序集中发现嵌入式资源的位置? “位置”是指程序集中的开始和结束字节位置。是否有任何工具或一些示例代码来实现这一目标?
提前致谢。
答案 0 :(得分:3)
您正在寻找的是PE File读者/解析器。完整的规范位于msdn:http://msdn.microsoft.com/en-us/windows/hardware/gg463119
管理资源:
此解析器看起来非常接近你所追求的:http://www.codeproject.com/KB/dotnet/asmex.aspx
还有其他几个PE文件读取器,this one also looks promising但是没有专门调用托管资源。你也可以看看Kris Stanton的Exploring pe file headers using managed code。
Win32资源:
Win32资源更容易。许多相同的PE读取器将偏移到文件中以查找资源。在那里,有一组明确定义的结构,用于定义资源的布局。 MSDN has defined these和others have written about it。一些谷歌搜索应该让你到那里。
答案 1 :(得分:1)
您可以进行反复试验。检查您知道嵌入的资源的字节结构,并尝试使用十六进制编辑器找到相同的字节结构。如果您没有资源,可以尝试使用Resource Hacker进行提取: http://www.angusj.com/resourcehacker/