Microsoft.Diagnostics.Runtime 0.9.180305.1

There is a newer version of this package available.
See the version list below for details.

Requires NuGet 2.12 or higher.

dotnet add package Microsoft.Diagnostics.Runtime --version 0.9.180305.1
                    
NuGet\Install-Package Microsoft.Diagnostics.Runtime -Version 0.9.180305.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.Diagnostics.Runtime" Version="0.9.180305.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Microsoft.Diagnostics.Runtime" Version="0.9.180305.1" />
                    
Directory.Packages.props
<PackageReference Include="Microsoft.Diagnostics.Runtime" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Microsoft.Diagnostics.Runtime --version 0.9.180305.1
                    
#r "nuget: Microsoft.Diagnostics.Runtime, 0.9.180305.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Microsoft.Diagnostics.Runtime@0.9.180305.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Microsoft.Diagnostics.Runtime&version=0.9.180305.1
                    
Install as a Cake Addin
#tool nuget:?package=Microsoft.Diagnostics.Runtime&version=0.9.180305.1
                    
Install as a Cake Tool

ClrMD is a set of advanced APIs for programmatically inspecting a crash dump of a .NET program much in the same way that the SOS Debugging Extensions (SOS) do. This allows you to write automated crash analysis for your applications as well as automate many common debugger tasks. In addition to reading crash dumps ClrMD also allows supports attaching to live processes.

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Microsoft.Diagnostics.Runtime:

Package Downloads
BenchmarkDotNet

Powerful .NET library for benchmarking

GitHub repositories (38)

Showing the top 20 popular GitHub repositories that depend on Microsoft.Diagnostics.Runtime:

Repository Stars
dnSpy/dnSpy
.NET debugger and assembly editor
winsw/winsw
A wrapper executable that can run any executable as a Windows service, in a permissive license.
dotnet/BenchmarkDotNet
Powerful .NET library for benchmarking
chocolatey/choco
Chocolatey - the package manager for Windows
xoofx/markdig
A fast, powerful, CommonMark compliant, extensible Markdown processor for .NET
microsoft/perfview
PerfView is a CPU and memory performance-analysis tool
LavaGang/MelonLoader
The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono
mongodb/mongo-csharp-driver
The Official C# .NET Driver for MongoDB
dotnet/interactive
.NET Interactive combines the power of .NET with many other languages to create notebooks, REPLs, and embedded coding experiences. Share code, explore data, write, and learn across your apps in ways you couldn't before.
ashmind/SharpLab
.NET language playground
ArduPilot/MissionPlanner
Mission Planner Ground Control Station for ArduPilot (c# .net)
ppy/osu-framework
A game framework written with osu! in mind.
badamczewski/PowerUp
⚡ Decompilation Tools and High Productivity Utilities ⚡
disruptor-net/Disruptor-net
Port of LMAX Disruptor to .NET
wwh1004/ExtremeDumper
.NET Assembly Dumper
dotnet/dotnet
Home of .NET's Virtual Monolithic Repository which includes all the code needed to build the .NET SDK.
fremag/MemoScope.Net
Dump and analyze .Net applications memory ( a gui for WinDbg and ClrMd )
dotnet/arcade
Tools that provide common build infrastructure for multiple .NET Foundation projects.
chummer5a/chummer5a
Character generator for Shadowrun 5th edition
DataDog/dd-trace-dotnet
.NET Client Library for Datadog APM
Version Downloads Last Updated
2.0.161401 4 3/8/2021
2.0.156101 2 3/8/2021
2.0.151903 2 3/8/2021
2.0.145301 2 3/8/2021
2.0.142701 3 3/8/2021
2.0.142501 3 3/8/2021
2.0.142103 4 3/8/2021
2.0.141902 3 3/8/2021
2.0.137201 3 3/8/2021
2.0.130507 3 3/8/2021
2.0.0-rc.20303.6 2 3/8/2021
2.0.0-rc.20278.6 2 3/8/2021
2.0.0-beta.20276.4 3 3/8/2021
2.0.0-beta.20273.1 2 3/8/2021
2.0.0-beta.20272.2 5 3/8/2021
2.0.0-beta.20272.1 2 3/8/2021
2.0.0-beta.20268.2 2 3/8/2021
2.0.0-beta.20230.2 2 3/8/2021
2.0.0-beta.20230.1 3 3/8/2021
2.0.0-beta.20229.3 2 3/8/2021
2.0.0-beta.20223.2 3 3/8/2021
2.0.0-beta.20222.8 2 3/8/2021
2.0.0-beta.20222.7 2 3/8/2021
2.0.0-beta.20222.5 3 3/8/2021
2.0.0-beta.20220.3 2 3/8/2021
2.0.0-beta.20213.1 3 3/8/2021
2.0.0-beta.20174.2 4 3/8/2021
2.0.0-beta.20072.5 2 3/8/2021
2.0.0-beta.19618.7 3 3/8/2021
2.0.0-beta.19612.8 2 3/8/2021
1.1.142101 4 3/8/2021
1.1.132302 3 3/8/2021
1.1.127808 2 3/8/2021
1.1.126102 134 3/8/2021
1.1.122004 2 3/8/2021
1.1.116301 3 3/8/2021
1.1.61812 3 3/8/2021
1.1.61810 2 3/8/2021
1.1.57604 32,426 3/8/2021
1.1.57004 2 3/8/2021
1.1.46104 2 3/8/2021
1.1.37504 3 3/8/2021
1.1.35902 3 3/8/2021
1.1.35504 3 3/8/2021
1.0.5 2 3/8/2021
1.0.3 3 3/8/2021
1.0.2 3 3/8/2021
1.0.1-dev 5 3/8/2021
1.0.0 5 3/8/2021
0.9.180305.1 2 3/8/2021
0.9.170809.3 5 3/8/2021
0.9.170626.1 3 3/8/2021

Since the last release, I have made two major changes to the API.

First, I have reworked the SymbolLocator class.  I had to rush out the last version so that we could ship sources, and that class was in an incomplete state.  It has been subsequently reworked into a new design.

Second, as part of the effort to (finally) release 1.0 of the library and get it out of beta (which hasn't happened yet), I have marked some commonly used APIs with the [Obsolete] attribute.  Virtually no functionality has been removed, only that APIs have been renamed or moved within the runtime.  The one exception is that ClrMD is moving away from doing symbol resolution (File and Line number).  This means GetSourceLocationForOffset and related functions no longer work.  Instead, I have implemented a sample you can find here:  https://github.com/Microsoft/clrmd/blob/master/src/FileAndLineNumbers/Program.cs

Note that all methods marked [Obsolete] will be removed in the next NuGet release (but I do not plan to do another release for a little while).  I appologize in advance for any incovenience this causes.  After years of active development, some API dead-ends have inevitably crept into the library, and need to be removed before 1.0 is released.

Aside from various bugfixes, here are some noteworthy changes in this release:

1.  I've added Async APIs for symbol resolution/download, and the SymbolLocator class is now thread safe.  You can now download symbols asynchronosly and in parallel.
2.  Added basic support for converting CLR internal structures (MethodDescs, MethodTables, EEClass, etc) to and from ClrMD types and methods.
3.  Add a way to get information about the Shared and System domains.
4.  Completely remove the dependency on msdia120.dll and DiaLib.dll.  Added a managed PDB reader to do this work instead.  ClrMD currently has no dependencies on any other library (that doesn't come with windows anyway).