On a demo system, it tends to be a nuisance. Hyper-v, for example, disables Sleep and hibernate so if you have it on a laptop you have to shutdown if you’re going to be on the move for any length of time. If you’re asked Why ? every time it grates pretty quickly.
Some time ago I found how to disable it, and I was setting up a new build in the office a few days ago when a passing colleague said "I never knew how to do that… you should blog it".
It’s simple enough, you can control it through group policy if the machine is a domain, or via the local group policy object. In the latter case start the MMC and load the Group policy Snap-In and point it to the Local Computer.
Once you can see the network or local policy , navigate to Computer Configuration, then to Administrative templates, then to System. In the system container there are a number of sub-containers, scroll down past those and you’ll find some settings, you’re looking for "Display Shutdown Event Tracker". You can set it to Enabled, and display Always, on workstations only, or on Servers Only. Or you can set it to disabled. If the setting is not present it seems to be enabled/Servers Only by default.
Once it is disabled. the dialog disappears . Job done.