On Saturday, 14 November 2015 at 05:44:44 UTC, Anonymous wrote:
Then running 'rdmd templOpDispatch.d' produces:
std.process.ProcessException@std\process.d(568): Failed to
spawn new process (The requested operation requires elevation.)
This is a Windows quirk. When they introduced UAC in Windows
Vista, several programs required admin elevation to be run, but a
lot of old programs didn't request it. So Microsoft put in a bit
of a hack to keep things working: programs named things like
setup.exe or patch.exe, which typically need to write to
installed programs, are assumed to need elevation.
There's ways around it:
http://stackoverflow.com/questions/533939/how-to-prevent-vista-from-requiring-elevation-on-patch-exe
But it isn't a D thing per se, it is Windows seeing the
"patch.exe" at the end of the "templOpDispatch.exe" filename
(default name is to replace the .d with .exe) and assuming it is
some installed application updater.
Easiest thing to do is to just not call your program that.