Beispiel #1
0
        IEnumerable <ProjectFile> CreateEmbeddedResourceFiles(ModuleDef module, ResourceNameCreator resourceNameCreator, EmbeddedResource er)
        {
            if (!Options.UnpackResources)
            {
                yield return(CreateRawEmbeddedResourceProjectFile(module, resourceNameCreator, er));

                yield break;
            }

            er.Data.Position = 0;
            if (ResourceReader.CouldBeResourcesFile(er.Data))
            {
                var files = TryCreateResourceFiles(module, resourceNameCreator, er);
                if (files != null)
                {
                    foreach (var file in files)
                    {
                        yield return(file);
                    }
                    yield break;
                }
            }

            yield return(CreateRawEmbeddedResourceProjectFile(module, resourceNameCreator, er));
        }
Beispiel #2
0
        public ResourceNode Create(ModuleDef module, Resource resource, ITreeNodeGroup treeNodeGroup)
        {
            var er = resource as EmbeddedResource;

            if (er == null)
            {
                return(null);
            }
            if (!ResourceReader.CouldBeResourcesFile(er.GetReader()))
            {
                return(null);
            }
            return(new ResourceElementSetNodeImpl(treeNodeGroup, module, er));
        }
Beispiel #3
0
 static ResourceElementSet?TryCreateResourceElementSet(ModuleDef module, EmbeddedResource er)
 {
     if (er is null)
     {
         return(null);
     }
     if (!ResourceReader.CouldBeResourcesFile(er.CreateReader()))
     {
         return(null);
     }
     try {
         return(ResourceReader.Read(module, er.CreateReader()));
     }
     catch {
         return(null);
     }
 }
        public IResourceNode Create(ModuleDef module, Resource resource, ITreeNodeGroup treeNodeGroup)
        {
            var er = resource as EmbeddedResource;

            if (er == null)
            {
                return(null);
            }
            er.Data.Position = 0;
            if (!ResourceReader.CouldBeResourcesFile(er.Data))
            {
                return(null);
            }

            er.Data.Position = 0;
            return(new ResourceElementSetNode(treeNodeGroup, module, er));
        }
Beispiel #5
0
 static ResourceElementSet TryCreateResourceElementSet(ModuleDef module, EmbeddedResource er)
 {
     if (er == null)
     {
         return(null);
     }
     er.Data.Position = 0;
     if (!ResourceReader.CouldBeResourcesFile(er.Data))
     {
         return(null);
     }
     try {
         er.Data.Position = 0;
         return(ResourceReader.Read(module, er.Data));
     }
     catch {
         return(null);
     }
 }