Amcache 2026.10.0

dotnet add package Amcache --version 2026.10.0
                    
NuGet\Install-Package Amcache -Version 2026.10.0
                    
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="Amcache" Version="2026.10.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Amcache" Version="2026.10.0" />
                    
Directory.Packages.props
<PackageReference Include="Amcache" />
                    
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 Amcache --version 2026.10.0
                    
#r "nuget: Amcache, 2026.10.0"
                    
#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 Amcache@2026.10.0
                    
#: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=Amcache&version=2026.10.0
                    
Install as a Cake Addin
#tool nuget:?package=Amcache&version=2026.10.0
                    
Install as a Cake Tool

AmcacheParser

Command Line Interface

Description:
  AmcacheParser version 2026.10.0
  
  Author: Eric Zimmerman (saericzimmerman@gmail.com)
  https://github.com/EricZimmerman/AmcacheParser
  
  Examples: AmcacheParser.exe -f "C:\Temp\amcache\AmcacheWin10.hve" --csv C:\temp
          AmcacheParser.exe -f "C:\Temp\amcache\AmcacheWin10.hve" -i --csv C:\temp --csvf foo.csv
          AmcacheParser.exe -f "C:\Temp\amcache\AmcacheWin10.hve" -w "c:\temp\whitelist.txt" --csv C:\temp
          AmcacheParser.exe -f "C:\Temp\Programs" -i --csv C:\temp    (Amcache.hve and the Inventory*.db databases)
      
          Short options (single letter) are prefixed with a single dash. Long commands are prefixed with two dashes

Usage:
  AmcacheParser [options]

Options:
  -f <f>          Amcache.hve to parse (Windows 7 to 11), the folder it's in (C:\Windows\AppCompat\Programs), or one of the Inventory*.db SQLite databases there (Windows 11 26H1 and later). The databases next to a hive are read too
  -i              Include file entries for Programs entries
  -w <w>          Path to file containing SHA-1 hashes to *exclude* from the results. Blacklisting overrides whitelisting
  -b <b>          Path to file containing SHA-1 hashes to *include* from the results. Blacklisting overrides whitelisting
  --csv <csv>     Directory to save CSV formatted results to. Be sure to include the full path in double quotes
  --csvf <csvf>   File name to save CSV formatted results to. When present, overrides default name
  --dt <dt>       The custom date/time format to use when displaying time stamps. See https://goo.gl/CNVq0k for options [default: yyyy-MM-dd HH:mm:ss]
  --mp            When true, display higher precision for timestamps
  --nl            When true, ignore transaction log files for dirty hives. Default is FALSE
  --debug         Show debug information during processing
  --trace         Show trace information during processing
  -?, -h, --help  Show help and usage information
  --version       Show version information

Documentation

This program is different from other Amcache parsers in that it does not dump everything available. Rather, it looks at both File entries and Program entries.

There are three kinds of Amcache data, and AmcacheParser reads each it finds (the console says which):

  • Old format (Windows 7 and 8): Program entries are under Root\Programs and File entries under Root\File in Amcache.hve.
  • New format (Windows 10 and 11): Root\InventoryApplication, Root\InventoryApplicationFile and the other Root\Inventory* keys in Amcache.hve. A hive upgraded from Windows 8 can have old format entries too; they are written to the _OldFormat CSVs.
  • SQLite databases (Windows 11 26H1 and later): Inventory*.db next to Amcache.hve (C:\Windows\AppCompat\Programs) hold what the Root\Inventory* keys did. A row is read like the key of the same name (ItemKey), its columns like the key's values, and LastModified like the key's last write time, so the same CSVs come out (_Databases in their names), with every column the databases have. Every other database (InventoryInstaller, InventoryMiscellaneous, Mare, ...) gets a CSV with its columns as they are, and the Metadata tables of all of them one more. -f can be Amcache.hve, the folder, or one of the databases. The databases are copied (with any -wal and -journal) to a temporary folder and only the copies are opened, so nothing is written next to the evidence.

AmcacheParser gathers information about all the Program entries, then looks at all the File entries. In each file entry is a pointer to a Program ID (value 100). If this Program ID exists in Program entries, the File entry is associated with the Program entry.

At the end of this process you are left with things that didn't come from some kind of installed application.

Using the minimum options, AmcacheParser will only export Unassociated file entries.

If you use the -i option, AmcacheParser will export a Programs entry list and its associated File entry list.

With whitelisting and blacklisting you can further reduce the output by excluding certain File entries (whitelisting) or including only File entries whose SHA-1 is found in a blacklist file.

Note that AmcacheParser strips the extra 0s from the front of the SHA-1 value, so you can use the SHA-1s as shown in the output files for generating whitelists or blacklists.

AmcacheParser returns exit code 0 on success and 1 for bad arguments, a hive or database that could not be read (for example a dirty hive without its transaction logs, unless --nl is used), or no Amcache data.

Registry Explorer and RECmd 1.2.0.0 released!

(Am)cache still rules everything around me (part 2 of 1)

Updates to the left of me, updates to the right of me, version 1 releases are here (for the most part)

AmcacheParser: Reducing the noise, finding the signal

Everything gets an update, Sept 2018 edition

Locked file support added to AmcacheParser, AppCompatCacheParser, MFTECmd, ShellBags Explorer (and SBECmd), and Registry Explorer (and RECmd)

Download Eric Zimmerman's Tools

All of Eric Zimmerman's tools can be downloaded here.

Special Thanks

Open Source Development funding and support provided by the following contributors: SANS Institute and SANS DFIR.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2026.10.0 49 10/16/2026
2026.5.3 1,383 5/22/2026
2026.5.1 256 5/21/2026
1.3.1 40,648 1/10/2025
1.3.0 40,503 1/8/2025
1.2.0 40,814 7/7/2023
1.0.0.6 40,902 6/15/2021
1.0.0.5 40,866 6/8/2021
1.0.0.4 40,869 5/24/2021