diff options
author | Jb Evain <jbevain@gmail.com> | 2014-11-02 16:55:56 +0300 |
---|---|---|
committer | Jb Evain <jbevain@gmail.com> | 2014-11-02 16:55:56 +0300 |
commit | 976b540869e41184bc51f0623e01fc1ff25f05f6 (patch) | |
tree | 8ec158338c29ec0e0c92976501b42d4773f5d76b /Mono.Cecil.PE | |
parent | daa7a65c52ea697d9cc85fd5394f62309fff6443 (diff) |
Expose the runtime version from the metadata
Diffstat (limited to 'Mono.Cecil.PE')
-rw-r--r-- | Mono.Cecil.PE/Image.cs | 2 | ||||
-rw-r--r-- | Mono.Cecil.PE/ImageReader.cs | 3 | ||||
-rw-r--r-- | Mono.Cecil.PE/ImageWriter.cs | 17 |
3 files changed, 3 insertions, 19 deletions
diff --git a/Mono.Cecil.PE/Image.cs b/Mono.Cecil.PE/Image.cs index fdecbbe..5022693 100644 --- a/Mono.Cecil.PE/Image.cs +++ b/Mono.Cecil.PE/Image.cs @@ -39,7 +39,7 @@ namespace Mono.Cecil.PE { sealed class Image { public ModuleKind Kind; - public TargetRuntime Runtime; + public string RuntimeVersion; public TargetArchitecture Architecture; public ModuleCharacteristics Characteristics; public string FileName; diff --git a/Mono.Cecil.PE/ImageReader.cs b/Mono.Cecil.PE/ImageReader.cs index c96c1db..4efbb45 100644 --- a/Mono.Cecil.PE/ImageReader.cs +++ b/Mono.Cecil.PE/ImageReader.cs @@ -343,8 +343,7 @@ namespace Mono.Cecil.PE { // Reserved 4 Advance (8); - var version = ReadZeroTerminatedString (ReadInt32 ()); - image.Runtime = version.ParseRuntime (); + image.RuntimeVersion = ReadZeroTerminatedString (ReadInt32 ()); // Flags 2 Advance (2); diff --git a/Mono.Cecil.PE/ImageWriter.cs b/Mono.Cecil.PE/ImageWriter.cs index 08f9ea2..6c3d506 100644 --- a/Mono.Cecil.PE/ImageWriter.cs +++ b/Mono.Cecil.PE/ImageWriter.cs @@ -481,7 +481,7 @@ namespace Mono.Cecil.PE { WriteUInt16 (1); // MinorVersion WriteUInt32 (0); // Reserved - var version = GetZeroTerminatedString (GetVersion ()); + var version = GetZeroTerminatedString (module.runtime_version); WriteUInt32 ((uint) version.Length); WriteBytes (version); WriteUInt16 (0); // Flags @@ -496,21 +496,6 @@ namespace Mono.Cecil.PE { WriteStreamHeader (ref offset, TextSegment.BlobHeap, "#Blob"); } - string GetVersion () - { - switch (module.Runtime) { - case TargetRuntime.Net_1_0: - return "v1.0.3705"; - case TargetRuntime.Net_1_1: - return "v1.1.4322"; - case TargetRuntime.Net_2_0: - return "v2.0.50727"; - case TargetRuntime.Net_4_0: - default: - return "v4.0.30319"; - } - } - ushort GetStreamCount () { return (ushort) ( |