Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/cecil.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJb Evain <jbevain@gmail.com>2014-11-02 16:55:56 +0300
committerJb Evain <jbevain@gmail.com>2014-11-02 16:55:56 +0300
commit976b540869e41184bc51f0623e01fc1ff25f05f6 (patch)
tree8ec158338c29ec0e0c92976501b42d4773f5d76b /Mono.Cecil.PE
parentdaa7a65c52ea697d9cc85fd5394f62309fff6443 (diff)
Expose the runtime version from the metadata
Diffstat (limited to 'Mono.Cecil.PE')
-rw-r--r--Mono.Cecil.PE/Image.cs2
-rw-r--r--Mono.Cecil.PE/ImageReader.cs3
-rw-r--r--Mono.Cecil.PE/ImageWriter.cs17
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) (