我有一个带有几个图标的小应用程序。我决定将它们放在一个单独的 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 的引用无法正常工作。 有什么提示吗?
最佳答案
通常当您通过名称获取资源时,您需要提供一个完全限定的名称。如果您调用 GetManifestResourceNames ,您可以在加载的资源管理器中获取名称列表,以便轻松准确地找出您必须使用的名称区域。
关于C#加载带有嵌入图像的外部dll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8763155/