Example #1
0
        public static AssemblyName GetAssemblyName(MetadataOnlyModule module)
        {
            PortableExecutableKinds portableExecutableKind;
            ImageFileMachine        imageFileMachine;
            Token assemblyToken = MetadataOnlyAssembly.GetAssemblyToken(module);
            IMetadataAssemblyImport rawImport = (IMetadataAssemblyImport)module.RawImport;

            AssemblyNameHelper.AssemblyNameFromDefitionBuilder assemblyNameFromDefitionBuilder = new AssemblyNameHelper.AssemblyNameFromDefitionBuilder(assemblyToken, module.RawMetadata, rawImport);
            AssemblyName codeBaseFromManifestModule = assemblyNameFromDefitionBuilder.CalculateName();

            codeBaseFromManifestModule.CodeBase = MetadataOnlyAssembly.GetCodeBaseFromManifestModule(module);
            module.GetPEKind(out portableExecutableKind, out imageFileMachine);
            codeBaseFromManifestModule.ProcessorArchitecture = AssemblyNameHelper.CalculateProcArchIndex(portableExecutableKind, imageFileMachine);
            return(codeBaseFromManifestModule);
        }