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

github.com/mono/ikdasm.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Frijters <jeroen@frijters.net>2013-09-20 17:12:58 +0400
committerJeroen Frijters <jeroen@frijters.net>2013-09-20 17:12:58 +0400
commit57ab0b490a4de82b1cc0816db53153ab4cae1086 (patch)
treeda2d8b48964cec6979cc4ac730bdf0a3a0a5ca96
parentd87a33d82ae72daa61da54bb1dec2c62085fce0d (diff)
Added /project option.
-rw-r--r--Disassembler.cs9
-rw-r--r--IKVM.Reflection.dllbin446464 -> 458752 bytes
-rw-r--r--Program.cs5
3 files changed, 13 insertions, 1 deletions
diff --git a/Disassembler.cs b/Disassembler.cs
index 5ea4f6a..b34a36f 100644
--- a/Disassembler.cs
+++ b/Disassembler.cs
@@ -44,6 +44,7 @@ namespace Ildasm
None = 0,
DiffMode = 1,
Caverbal = 2,
+ Project = 4,
}
sealed partial class Disassembler
@@ -59,7 +60,7 @@ namespace Ildasm
const int COMIMAGE_FLAGS_STRONGNAMESIGNED = 0x00000008;
const int COMIMAGE_FLAGS_NATIVE_ENTRYPOINT = 0x00000010;
const int COMIMAGE_FLAGS_32BITPREFERRED = 0x00020000;
- readonly Universe universe = new Universe(UniverseOptions.EnableFunctionPointers | UniverseOptions.ResolveMissingMembers | UniverseOptions.DisablePseudoCustomAttributeRetrieval);
+ readonly Universe universe;
readonly Assembly mscorlib;
readonly Type typeofSystemBoolean;
readonly Type typeofSystemSByte;
@@ -100,6 +101,12 @@ namespace Ildasm
this.compat = compat;
this.diffMode = (flags & Flags.DiffMode) != 0;
this.flags = flags;
+ UniverseOptions options = UniverseOptions.EnableFunctionPointers | UniverseOptions.ResolveMissingMembers | UniverseOptions.DisablePseudoCustomAttributeRetrieval;
+ if ((flags & Flags.Project) == 0)
+ {
+ options |= UniverseOptions.DisableWindowsRuntimeProjection;
+ }
+ universe = new Universe(options);
universe.AssemblyResolve += new IKVM.Reflection.ResolveEventHandler(universe_AssemblyResolve);
mscorlib = universe.Import(typeof(object)).Assembly;
typeofSystemBoolean = universe.Import(typeof(bool));
diff --git a/IKVM.Reflection.dll b/IKVM.Reflection.dll
index d603c4e..5ebb753 100644
--- a/IKVM.Reflection.dll
+++ b/IKVM.Reflection.dll
Binary files differ
diff --git a/Program.cs b/Program.cs
index 2467971..baf2172 100644
--- a/Program.cs
+++ b/Program.cs
@@ -72,6 +72,10 @@ namespace Ildasm
{
flags |= Flags.Caverbal;
}
+ else if (IsIldasmOption(arg, "project"))
+ {
+ flags |= Flags.Project;
+ }
else
{
PrintUsage();
@@ -155,6 +159,7 @@ namespace Ildasm
Console.WriteLine(" /COMPAT=<version> Match ildasm behavior. (<version> = 2.0 | 4.0 | 4.5)");
Console.WriteLine(" /DIFFMODE Remove superficial differences to allow assembly comparisons");
Console.WriteLine(" /CAVERBAL Try to decode custom attribute blobs");
+ Console.WriteLine(" /PROJECT Project WinMD metadata into .NET format");
}
}
}