From 6af3e43629b6d790ec721a2784050bbb53b2d9fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Srbeck=C3=BD?= Date: Mon, 12 Jul 2010 21:07:08 +0000 Subject: [PATCH] Support for new dynamic debugging features in .NET 4.0 git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@6110 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- src/AddIns/Debugger/Debugger.Core/Interop/CorDebug.cs | 7 +++++++ .../Interop/CorDebugExtensionMethods.generated.cs | 11 ++++++++++- .../ComExtensionMethodGenerator.cs | 2 +- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/AddIns/Debugger/Debugger.Core/Interop/CorDebug.cs b/src/AddIns/Debugger/Debugger.Core/Interop/CorDebug.cs index 19f23928c0..76d6c5e619 100644 --- a/src/AddIns/Debugger/Debugger.Core/Interop/CorDebug.cs +++ b/src/AddIns/Debugger/Debugger.Core/Interop/CorDebug.cs @@ -1153,6 +1153,13 @@ namespace Debugger.Interop.CorDebug [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType=MethodCodeType.Runtime)] void __ResolveAssembly([In] uint tkAssemblyRef, [In, MarshalAs(UnmanagedType.Interface)] ref ICorDebugAssembly ppAssembly); } + + [ComImport, InterfaceType((short) 1), Guid("86F012BF-FF15-4372-BD30-B6F11CAAE1DD")] + public interface ICorDebugModule3 + { + [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType=MethodCodeType.Runtime)] + void __CreateReaderForInMemorySymbols([In] ref Guid riid, [MarshalAs(UnmanagedType.Interface)] out object ppObj); + } [ComImport, Guid("CC7BCAEA-8A68-11D2-983C-0000F808342D"), InterfaceType((short) 1)] public interface ICorDebugModuleBreakpoint : ICorDebugBreakpoint diff --git a/src/AddIns/Debugger/Debugger.Core/Interop/CorDebugExtensionMethods.generated.cs b/src/AddIns/Debugger/Debugger.Core/Interop/CorDebugExtensionMethods.generated.cs index 613c074eba..0c2ce934f8 100644 --- a/src/AddIns/Debugger/Debugger.Core/Interop/CorDebugExtensionMethods.generated.cs +++ b/src/AddIns/Debugger/Debugger.Core/Interop/CorDebugExtensionMethods.generated.cs @@ -1,4 +1,4 @@ -// +// // // // @@ -2187,6 +2187,14 @@ namespace Debugger.Interop.CorDebug ProcessOutParameter(ppAssembly); } + public static object CreateReaderForInMemorySymbols(this ICorDebugModule3 instance, ref Guid riid) + { + object ppObj; + instance.__CreateReaderForInMemorySymbols(ref riid, out ppObj); + ProcessOutParameter(ppObj); + return ppObj; + } + public static void Activate(this ICorDebugModuleBreakpoint instance, int bActive) { instance.__Activate(bActive); @@ -3149,6 +3157,7 @@ namespace Debugger.Interop.CorDebug { uint pceltFetched; instance.__Next(celt, threads, out pceltFetched); + ProcessOutParameter(threads); return pceltFetched; } diff --git a/src/Tools/ComExtensionMethodGenerator/ComExtensionMethodGenerator.cs b/src/Tools/ComExtensionMethodGenerator/ComExtensionMethodGenerator.cs index 068cf70d85..91f8a2a21c 100644 --- a/src/Tools/ComExtensionMethodGenerator/ComExtensionMethodGenerator.cs +++ b/src/Tools/ComExtensionMethodGenerator/ComExtensionMethodGenerator.cs @@ -28,7 +28,7 @@ namespace ComExtensionMethodGenerator "// $Revision$" + "\r\n" + "// " + "\r\n" + "\r\n"; - static string path = Path.Combine(Assembly.GetExecutingAssembly().Location, @"..\..\..\..\..\..\src\AddIns\Misc\Debugger\Debugger.Core\Project\Src\Interop\"); + static string path = Path.Combine(Assembly.GetExecutingAssembly().Location, @"..\..\..\..\..\..\src\AddIns\Debugger\Debugger.Core\Interop\"); public static void Main(string[] args) {