C#使用嵌入的图像加载外部dll

时间:2012-01-06 19:15:16

标签: c# image dll resources

我有一个带有几个图标的小应用程序。我决定将它们放在一个单独的DLL中,所以在我的解决方案中,我创建了一个项目,并将这些图标作为资源嵌入。 然后我编译了这个库(myImages.dll)

之后,我在主程序中添加了dll作为引用,并使用ResourceManager获取我的自定义库的引用。然后我指出使用GetObject方法来检索每个文件的名称。

以下代码有效,但当我尝试检索图标时发生错误:

    ResourceManager rm = new ResourceManager("myAssembly.MyNamespace", Assembly.LoadFile("Images.dll"));
Image myImage = ((System.Drawing.Image)(rm.GetObject("myIcon")));

似乎对我的Images.dll的引用无法正常工作。 任何提示?

1 个答案:

答案 0 :(得分:5)

通常,当您按名称获取资源时,您需要提供完全限定的名称。如果您致电GetManifestResourceNames,您可以在已加载的资源管理器中获取名称列表,以便轻松找到您必须使用的名称区域。