DosX-dev/BatchToApp
48.0
Weak · 28 September 2026
1.4k
lines of production code
VB.NET
primary language
4
measurements over time
What this system is
This system is a desktop application that compiles Windows batch scripts into standalone executables or hidden batch files. It provides capabilities for optimizing script size, obfuscating logic to hide source code, and embedding the script within a compiled binary for secure execution. The tool includes a graphical interface and supports configuration for window visibility and target architecture.
Features
Batch-to-EXE compiler with obfuscation and optimization
The application now compiles .bat and .cmd scripts into standalone Windows executables (.exe, .com) or fake batch files (.bat, .cmd). Users can configure the output to run as a console or hidden window, target x86 or x64 architectures, and apply batch script optimizations such as removing comments and trimming unnecessary characters. The tool also includes an obfuscation engine that mutates label names and command calls to hide the original script logic, along with an option to mark the output file with system attributes for protection.
source · high confidence
Initial project metadata and resource configuration for BatchToApp
The application project is initialized with core configuration files defining the assembly identity (BatchToApp v1.8.0.0), application behavior (Windows authentication, single-instance disabled, visual styles enabled), and embedded resources. These resources include a logo, help documentation, build headers, and a C\# code stub, which are integrated into the application via the generated resource manager.
source/My Project · high confidence
New stub and header script for batch-to-app conversion
The Builder now includes a new C\# stub (stub.cs) and a header script (headers.cmd) that handle the runtime execution of converted applications. The stub embeds a compressed batch script, decompresses it to a temporary file, sets specific file attributes (including hidden and read-only flags), executes it, and then cleans up the temporary file. This change introduces a new mechanism for launching the generated batch scripts as standalone applications.
source/Builder · high confidence
Test coverage
Added regression test harness for batch file obfuscator
Added a new test project (Obfuscator.RegressionTests) that validates the batch file obfuscator's behavior. The tests verify that only definitions and real references are mutated, conditional and dynamic GOTO targets remain functional, complex labels and EOF prefixes are handled correctly, state does not leak between runs, line endings are preserved, and V2 mode keeps continuations and blocks intact without inserting fake labels.
source/tests · high confidence
Dependencies
Initial project structure and test harness added
The repository now includes the main application project (BatchToApp.vbproj) targeting .NET Framework 4.7.2, which contains the core logic for batch optimization, compression, and obfuscation, along with a Windows Forms UI. Additionally, a new regression test project (Obfuscator.RegressionTests.vbproj) has been added, targeting .NET 8.0, to verify the obfuscator component.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 40 → 48 (+8.1)
- Rubric changed (rubric-2026.08.15 → rubric-2026.09.16) — scores are not directly comparable.
Lenses
- Code Health 88 → 86 (-2.1)
- Architecture 69 → 69 (+0.0)
- Maturity 41 → 43 (+1.6)
- Readiness 17 → 33 (+16.6)
- Security 100 → 100 (+0.0)
Resolved (12)
- Build did not complete in the analyzer
- Change coupling: MainWindow.vb ↔ Obfuscator.vb (source/MainWindow.vb)
- Duplicated block (6 lines × 2) (source/BonfireUI.vb)
- Duplicated block (9 lines × 2) (source/BonfireUI.vb)
- No automated tests
- No exposed public API
- No tests found
- Shell project: BatchToApp (source/BatchToApp.vbproj)
- Test reliability not included
- XML-doc coverage: BatchToApp (source/BatchToApp.vbproj)
- early-stage repository — too few commits for a meaningful bus factor
- early-stage repository — too little history to judge knowledge freshness
New (12)
- Coverage not measured — no coverage collector is wired up
- Duplicated block (10 lines × 2) (source/BonfireUI.vb)
- Duplicated block (7 lines × 3) (source/BonfireUI.vb)
- FileTooLong: source/Obfuscator.vb (source/Obfuscator.vb)
- Hotspot: source/Obfuscator.vb (source/Obfuscator.vb)
- No ADRs found
- Obfuscator.FindIfActionStart (cognitive 18) (source/Obfuscator.vb)
- Obfuscator.FindIfActionStart (cyclomatic 17) (source/Obfuscator.vb)
- Obfuscator.ObfuscateBatchLabels (cognitive 18) (source/Obfuscator.vb)
- Obfuscator.ParseLabelReference (cognitive 23) (source/Obfuscator.vb)
- Obfuscator.ParseLabelReference (cyclomatic 19) (source/Obfuscator.vb)
- TooManyMethods: Obfuscator (source/Obfuscator.vb)
Changes since last survey
- 7 commits — 6 feature/other, 1 fixes
By area
- source/MainWindow.vb — 2 commits
- source/Obfuscator.vb — 2 commits
- (root) — 1 commit
- source/Builder — 1 commit
- source/tests — 1 commit
Notable commits
- fix: Add obfuscator regression test harness
- change: Add BAT/CMD output options in save dialog
- change: Add gitignore for build artifacts
- change: Enable optimized stub builds without debug info
- change: Harden batch obfuscation and compile flow
- change: Use I/l names for obfuscator internals
- change: Use safe rotating env vars for noise
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
DosX-dev/BatchToApp was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 28 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit a2e3907468f17f532b78d937c1ded06b027f3d10 — the exact code this score is about.
- Scored under rubric-2026.09.16 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-2d9048c36d26.