.Net Reflector没有正确链接资源

时间:2010-10-15 12:58:12

标签: c# .net reflector

我已经反编译了一个库,但是当我尝试运行它时,任何从资源管理器请求某些内容的东西都不能正常工作,留下“{”无法找到适合指定文化或中性文化的任何资源。确保在编译时将“Logistics.Products.LayerPicking.Properties.Resources.resources”正确嵌入或链接到assembly \“LayerPicking.PBG \”,或者所有所需的附属程序集都是可加载和完全签名的。“} “

 [EditorBrowsable(EditorBrowsableState.Advanced)]
    internal static System.Resources.ResourceManager ResourceManager
    {
        get
        {
            if (resourceMan== null)
            {
                System.Resources.ResourceManager manager = new System.Resources.ResourceManager("Logistics.Products.LayerPicking.Properties.Resources", typeof(Resources).Assembly);  
                resourceMan = manager;
            }
            return resourceMan;
        }
    }

1 个答案:

答案 0 :(得分:0)

看起来反编译改变了名称。资源看起来像是LayerPicking.PBG.KUKARoboter.Logistics.Products.LayerPicking.Properties.Resources - 注意“LayerPicking.PBG”。 - 这是您项目的名称。

VS.Net喜欢在嵌入项目时将项目的默认命名空间添加到资源的开头。

所以这里有两个选项(你可以做任何一个 - 我建议#1):

  1. 将您的默认名称空间更改为KUKARoboter,并将您的resx文件重命名为以物流(而非KUKARoboter)开头。

  2. 搜索“KUKARoboter.Logistics字符串并将默认命名空间添加到字符串中,使其读起来就像它正在寻找的字符串”LayerPicking.PBG.KUKARoboter.Logistics“