[Windows 11] Feature request: run local commands after mount / before dismount (per favorite volume)

Open
#1,926 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
c
Domain
desktop, security

Research direction

Start by tracing the mount and dismount paths named in the request: GUI, tray, hotkeys, auto-dismount, and command-line /d; the issue does not identify source files or tests. Determine where per-favorite settings are stored and how commands could run with a timeout and affect dismount. Done means commands run at the requested lifecycle points across those paths, with the specified cancellation behavior.

Written by the indexing model from the issue text.

Description

Desired behavior

Follow-up to #131, which was closed automatically by the stale bot in 2021 without being implemented. I need this specifically on Windows 11, where there is currently no reliable way to do it.

Please add the ability to run local commands after mount and before/after dismount, configured per favorite volume.

Use case: we keep a PostgreSQL data directory on a VeraCrypt volume (Windows service). The service must be started after the volume is mounted and, more importantly, stopped before dismount: PostgreSQL's background processes keep files open, so a normal dismount fails with "files in use", and a forced dismount (including auto-dismount on user logoff with "Force auto-dismount" enabled) makes PostgreSQL crash and run crash recovery on the next start.

Why existing Windows 11 mechanisms don't solve it:

  • Wrapper .bat/.ps1 scripts around VeraCrypt.exe /v and /d only work when the user uses them; they don't cover mounting/dismounting from the GUI, tray icon, hotkeys or auto-dismount.
  • Group Policy shutdown scripts run only after user logoff, i.e. after VeraCrypt's logoff auto-dismount has already happened, and they are skipped entirely when Fast Startup is enabled (Windows 11 default).
  • Polling for the drive letter in a scheduled task covers mount only, not dismount.

Screenshots/Mockup/Designs

In Favorites > Organize Favorite Volumes, three new fields per volume:

  • Run after mount: [ command ]
  • Run before dismount: [ command ] timeout: [ 60 ] s
  • Run after dismount: [ command ]

Additional information

  • Run "before dismount" synchronously (with the configurable timeout) before VeraCrypt checks for open files, for every dismount path: GUI, tray, hotkey, auto-dismount (logoff, power saving, inactivity), command line /d.
  • Allow the command to run elevated if needed (stopping a Windows service requires administrator rights).
  • Pass drive letter and volume path as arguments or environment variables.
  • If the pre-dismount command returns non-zero, cancel the dismount (unless forced).
  • Commands are stored locally (not inside the container), which avoids the security concern of a volume executing code on mount.

This would cover any Windows service whose data lives on an encrypted volume (databases, sync clients, backup agents).

Your Environment

VeraCrypt version: 1.26.29

Operating system and version: Windows 11 Pro, 26H2

System type: 64-bit

Dominant language
C
Stars
11.7k
Forks
1.4k
Avg merge
1d 1h
Merged PRs (30d)
28

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from veracrypt/VeraCrypt

All issues in veracrypt/VeraCrypt

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.