I could not find any clean solution to disable this message and the solution propose in the link is a hack that is difficult to make it work across different languages.
His idea is to wait for a dialog to be displayed that has the title "Microsoft Windows" and which contains a button with a specific label depending on the language of the machine ( it is "Format Disk" in English, "Datenträger formatieren"
in German...) and then close this Window.
The first difficulty is to dynamically load the correct value of the label depending on the language of the machine. I'm not sure we can encode in VeraCrypt all possible values of this label.
The other difficulty is that we have to implement a monitoring thread in VeraCrypt that will enumerate all top-level windows on the screen (EnumWindows
order to find if the prompt message we are targeting is displayed. This enumerating must be done periodically with a short period time and this will consume a lot of the machine resources.
Of course, there is a less resource extensive solution by using a global system hook (SetWindowsHookEx
) but this will definitely make the Antivirus bells ringing
and we don't want that.
As a conclusion, while this feature is very interesting, for now there is no acceptable technical solution to implement it.