Captured memory dump of MSIX packaged app, doesn't contain threads and call stack information (again)
メンテナーはふだん 1 日以内に返信
@tommcdon がすでに取り組んでいます。
2026年5月5日 から。
評価
この issue はまだ評価されていません。
説明
I am reproducing the same issue as https://github.com/dotnet/diagnostics/issues/4833 (cc @ekalchev):
Mini memory dumps captured with different tools (CrashRpt, dotnet-dump.exe both using MiniDumpWriteDump WINAPI call) of a .NET self-contained MSIX packaged process doesn't have managed thread and managed callstack information, unless Full memory dump is captured.
My 5 cents: I fear this is due to a MSIX "security limitation" that disallows other packaged or unpackaged processes to LoadLibrary DLLs from the MSIX app directory. AFAIK MiniDumpWriteDump tries to load some "DAC DLL" from the app directory, which would normally enrich the dump with the necessary information. If that DLL cannot be loaded, the dump will not get any managed information etc. That's just my first guess, which I hope is not true, because it would mean that is a Windows limitation.
Steps to reproduce:
- Install and run a .NET MSIX packaged app
easy to reproduce: download WinUI 3 Gallery app from Microsoft Store
otherwise: Deploy the packaged application (do not run it from Visual Studio). It must be deployed in WindowsApp directory - Capture a memory dump with dotnet-dump.exe using any of the following commands
dotnet-dump collect -p <pid> --type mini
dotnet-dump collect -p <pid> --type triage
dotnet-dump collect -p <pid> --type heap
Expected:
Generated memory dumps to show CLR threads and call stacks when loaded in Visual Studio or WinDbg
Actual:
Generated memory dumps doesn't show CLR threads and call stacks
Notes:
This problem is only present when the app is packaged as MSIX. I ran multiple test setups for the same app and the packing type is what triggers this issue. Same app packaged as MSI doesn't have those problems.
Also using dotnet-dump collect -p <pid> --type full resolve the problem but it creates dumps, that are very big andunpractical to use for diagnostic for crashes from client machines.
When I run WinDbg command on one of the memory dumps that suffer from the bug i see this error
!clrthreads
Failed to request ThreadStore
Visual Studio show this error message in the console
The minidump has no heap. Managed minidump debugging will have limited data inspection.
- 主要言語
- C++
- スター
- 1.3k
- フォーク
- 407
- 平均マージ
- 21時間 5分
- マージ済み PR(30日)
- 78
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
dotnet/diagnostics のほかの issue
-
Fix StackAndOtherTests.script line number verification for .NET 11 and Windows x64再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
dotnet/diagnostics#5884 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
dotnet/diagnostics#6225 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
dotnet/diagnostics#6213 ·
メンテナーはふだん 1 日以内に返信
-
Isolate SOS hosting from other debugger extensions that use managed code対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープンbug
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
dotnet/diagnostics#6207 ·
メンテナーはふだん 1 日以内に返信
-
Known Build Error
難易度 4/5 3〜5日 初心者へのやさしさ 49/100
dotnet/diagnostics#6190 ·
メンテナーはふだん 1 日以内に返信
dotnet/diagnostics の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
AutoHotkey/AutoHotkey#380 ·
-
documentation
難易度 1/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 69/100
grumpycoders/pcsx-redux#2667 ·
-
GCC 15.2: -Wcast-qual warning - cast discards const qualifier from pointer target type (H5trace.c)オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
google/tensorstore#305 ·