現在、私は C# 言語を使用して毎日アプリケーションを開発するプログラマーです。アプリケーションを作成しましたが、今日、実際のアセンブリ コードがどのようになるかを確認するために、アプリケーションを逆アセンブルすることにしました。
Microsoft のドキュメントを見て、これを行うためのツールがあることを知りました。これは、アセンブリ コードを中央コードとして表示するために使用される Visual Studio のインストール時にプレインストールされる「ildasm.exe」です。IL 時間 (C# は C++ や C または Pascal とは異なります、私は知っています)
Visual Studio のコマンド ライン ツールを使用しました。その名前は「x64 Native Tools Command Prompt for VS 2019」で、管理者として実行してこれを行いました。
次に、新しく開いたウィンドウに ildasm と入力すると、グラフィカル ウィンドウが表示されます。アプリケーションを選択して開きますが、任意のメソッドをクリックしてそのアセンブリ コードを表示すると、ildasm プログラムがすぐに終了します。
メモ帳で表示できるように「.il」ファイルをダンプして再試行しましたが、それでもildasmは進行状況ウィンドウを表示し、すぐに終了しました。
「.il」ファイルも生成されますが、それを表示すると、アセンブリ セクションにのみ書き込まれます (これにより、アプリケーションを右クリックして [プロパティ] を選択し、[詳細] タブを選択したときに表示される内容が決まります)。
コマンド入力で試しました:
ildasm "E:\Projects_MSVS\AESEncryptDecyptFile\AESEncryptDecyptFile\bin\Debug\AESEncryptDecryptFile.exe" /out="E:\Projects_MSVS\AESEncryptDecyptFile\AESEncryptDecyptFile\bin\Debug\AESEncryptDecryptFile.exe.il"
そして前回と変わらずildasmは即退出
共通点は、このエラーを報告するメッセージが表示されず、単にアプリケーションを停止して終了することです。
私はそれが異常なことだとはまったく信じていなかったので、Diagnostic Data Viewer ツールを使用して調査しました。[問題レポート] タブでしばらく検索した後、ようやく見つけました。プログラムをレンダリングしようとした 7 回に対応する 7 回の Stopped Working 時間をスローします。7 番目のレポート (最初の試行を意味します) では、Stopped Working という単語の右側に、チェック アイコン ( ✓) ではなく、保留中のアイコン (次のようになります: ⟳) が表示され、[レポートの抽出] をクリックすると、 Windowsエクスプローラーウィンドウを開くだけのファイルで、空のフォルダー(このフォルダーは空です)であり、システムファイルを含むすべての隠しファイルを表示するオプションも有効にしました。
調査を容易にするために、診断データ ビューアー ツールを使用して 7 つのエラー メッセージすべてを投稿しました。
これは、診断データ ビューアー ツールを使用して調査したときに得られるものです。各試行は (N 回目の試行) でマークされ、試行ごとにエラー レポートが個別に表示されます。
(最初の試み):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:16:48 PM
Problem: Stopped working
Status: Report queued
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: (18446744073709551615)
Files that help describe the problem
minidump.mdmp
WERInternalMetadata.xml
WERInternalRequest.xml
memory.csv
sysinfo.txt
AppCompat.txt
memory.hdmp
WERDataCollectionStatus.txt
(2 回目の試行):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:17:49 PM
Problem: Stopped working
Status: Report sent
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)
(3 回目の試行):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:19:22 PM
Problem: Stopped working
Status: Report sent
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)
(4 回目の試行):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:20:14 PM
Problem: Stopped working
Status: Report sent
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)
(5 回目の試行):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:21:33 PM
Problem: Stopped working
Status: Report sent
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)
(6 回目の試行):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:26:34 PM
Problem: Stopped working
Status: Report sent
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)
(7回目の試み、これも私の最後の試み):
Microsoft .NET Framework IL disassembler
description
Faulting Application Path: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\ildasm.exe
Creation Time: 12/12/2021 4:26:59 PM
Problem: Stopped working
Status: Report sent
Problem signature
Problem Event Name: BEX64
Application Name: ildasm.exe
Application Version: 4.8.4084.0
Application Timestamp: 5dda4186
Fault Module Name: ildasm.exe
Fault Module Version: 4.8.4084.0
Fault Module Timestamp: 5dda4186
Exception Offset: 00000000000055ae7
Exception Code: c0000409
Exception Data: 0000000000000005
Extra information about the problem
Bucket ID: 8f47f513232a51a281bc646c0cbb3750 (1278006809499219792)
そして、これが私のコンピューター構成です (Windows にプリインストールされているシステム情報ツールから抜粋):
OS Name Microsoft Windows 11 Home Single Language
Version 10.0.22000 Build 22000
Other OS Description Not Available
OS Manufacturer Microsoft Corporation
System Name CYBERDAY
System Manufacturer ASUSTeK COMPUTER INC.
System Model VivoBook_ASUSLaptop X409FA_X409FA
System Type x64-based PC
System SKU
Processor Intel(R) Core(TM) i3-8145U CPU @ 2.10GHz, 2304 Mhz, 2 Core(s), 4 Logical Processor(s)
BIOS Version/Date American Megatrends Inc. X409FA.305, 1/28/2021
SMBIOS Version 3.2
Embedded Controller Version 255.255
BIOS Mode UEFI
BaseBoard Manufacturer ASUSTeK COMPUTER INC.
BaseBoard Product X409FA
BaseBoard Version 1.0
Platform Role Mobile
Secure Boot State On
PCR7 Configuration Elevation Required to View
Windows Directory C:\Windows
System Directory C:\Windows\system32
Boot Device \Device\HarddiskVolume1
Locale United States
Hardware Abstraction Layer Version = "10.0.22000.1"
Time Zone SE Asia Standard Time
Installed Physical Memory (RAM) 4.00 GB
Total Physical Memory 3.86 GB
Available Physical Memory 306 MB
Total Virtual Memory 11.4 GB
Available Virtual Memory 4.55 GB
Page File Space 7.50 GB
Page File C:\pagefile.sys
Kernel DMA Protection Off
Virtualization-based security Running
Virtualization-based security Required Security Properties
Virtualization-based security Available Security Properties Base Virtualization Support, Secure Boot, DMA Protection, Mode Based Execution Control
Virtualization-based security Services Configured
Virtualization-based security Services Running
Device Encryption Support Elevation Required to View
A hypervisor has been detected. Features required for Hyper-V will not be displayed.
私はWindows Insider Programに参加しており、新しい更新プログラムを入手するために参加しているチャネルはBeta channelです。インストールした .NET Frameworkのバージョンはバージョン 4.8 です
どんな助けでも大歓迎です。