ussfc 1.4.1.2

dotnet tool install --global ussfc --version 1.4.1.2
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local ussfc --version 1.4.1.2
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=ussfc&version=1.4.1.2
                    
nuke :add-package ussfc --version 1.4.1.2
                    

USSF-CSharp (ussfc)

Universal Silent Setup Finder / Console — a C# port of alexandruavadanii/USSF, reimagined as a cross-platform, headless command-line tool.

Given an installer (or any binary stream), ussfc identifies the packaging format and prints the silent-install command line to use.

  • Version: 1.4.1.2 (inherited from the upstream AutoIt project)
  • Runtime: .NET 10 file-based app (single .cs source, no .csproj)
  • License: Apache-2.0

Installation

Download a prebuilt binary

Grab the archive for your platform from the Releases page:

Platform Archive
Windows x64 ussfc-win-x64.zip
Windows ARM64 ussfc-win-arm64.zip
Linux x64 ussfc-linux-x64.tar.gz
Linux ARM64 ussfc-linux-arm64.tar.gz
macOS x64 (Intel) ussfc-osx-x64.tar.gz
macOS ARM64 (M1+) ussfc-osx-arm64.tar.gz

Each archive contains a single self-contained ussfc (or ussfc.exe) binary — no .NET runtime install required.

Run from source (.NET 10 SDK required)

dotnet run ussf.cs -- setup.exe

Or, with the shebang on Unix:

chmod +x ussf.cs
./ussf.cs setup.exe

Usage

ussfc [options] <file_path>
<data> | ussfc [options]

Options

Option Description
--json Emit the result as JSON instead of human-readable text.
--help, -h Show usage information.
--version, -v Print the version and exit.

Examples

Analyze a file:

ussfc setup.exe
File: setup.exe
Extension: .exe
Type: NSIS Package
Usage: "setup.exe" /S

Emit JSON:

ussfc --json setup.msi
{
  "file": "setup.msi",
  "extension": ".msi",
  "type": "MSI File",
  "usage": "msiexec.exe /i \"setup.msi\" /qb",
  "notes": ""
}

Pipe a binary from stdin:

cat setup.exe | ussfc --json

Supported file types

Extension Type
.inf Information / Installation file
.reg Registry file
.msi Windows Installer package
.exe NSIS, Inno Setup, InstallShield, Wise, 7-Zip, WinZip, UPX, and more

Detection combines binary-signature matching (MZ, OLE Compound Document, etc.) with extension and text-content fallbacks.


Building from source

Quick run

dotnet run ussf.cs -- <args>

Publish a single-file binary

dotnet publish ussf.cs \
  -c Release \
  -r <rid> \
  --self-contained true \
  -p:PublishSingleFile=true \
  -o publish

Where <rid> is one of: win-x64, win-arm64, linux-x64, linux-arm64, osx-x64, osx-arm64.

Continuous delivery

Pushing a tag matching v* (e.g. v1.4.1.2) triggers .github/workflows/release.yml, which builds binaries for all six target platforms, bundles them with README.md / LICENSE, generates SHA-256 checksums, and publishes a GitHub Release.

The workflow is also runnable on demand via the Run workflow button (workflow_dispatch).


Credits

  • Original AutoIt implementation: Alexandru Avadanii (Apache-2.0).
  • C# port and CLI design: Jung-Hyun Nam.

The version number 1.4.1.2 is preserved from the upstream project's Version.au3 to make the lineage explicit.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.4.1.2 59 4/29/2026