有没有API函数可以从内存中的可执行文件(例如MemoryStream)中提取图标资源?
到目前为止,我看到的所有提取图标的函数都依赖于可执行文件存在于磁盘上。我想在不必将exe写入临时文件并从中加载资源的情况下提取图标。
有没有API函数可以从内存中的可执行文件(例如MemoryStream)中提取图标资源?
到目前为止,我看到的所有提取图标的函数都依赖于可执行文件存在于磁盘上。我想在不必将exe写入临时文件并从中加载资源的情况下提取图标。
如果我们要从已构建的DLL中提取图标,请使用Reflector
http://www.red-gate.com/products/reflector/
打开 DLL,然后右键单击图标并选择“另存为”即可。 此外,也可以使用反射来完成此操作。
Assembly myAssembly = Assembly.Load("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3");
Stream myStream = myAssembly.GetManifestResourceStream( "MyNamespace.SubFolder.MyImage.bmp" );
Bitmap bmp = new Bitmap( myStream );
最好的祝福, Iordan