Vista goes to sleep while burning DVD

I have the computer set to sleep after 5 minutes, needs to be that way for various reasons. The burning and verification of a DVD take over 20 minutes. Is there a way to prevent sleep during this process, since it aborts the burn process?

Thanks

Acer laptop, Vista Home Premium 32 bit
 

My Computer

Yeah, go to High performance setting- the default for this is not to sleep (plugged in). If you changed it, change it back.
Use this when you burn, Watch Videos, Play games, etc.



defaults:
 

Attachments

  • Capture.GIF
    Capture.GIF
    23.6 KB · Views: 98
  • Capture1.GIF
    Capture1.GIF
    24.5 KB · Views: 76
  • Capture2.GIF
    Capture2.GIF
    24.5 KB · Views: 62

My Computer

System One

  • CPU
    T7600G Core2Duo 2.66 Ghz
    Motherboard
    Intel 945PM + ICH7 Chipset
    Memory
    4GB DDR2 PC2-5300 667MHz
    Graphics Card(s)
    Mobility Radeon x1900 256MB
    Sound Card
    Realtek HD
    Monitor(s) Displays
    WUXGA 17"
    Screen Resolution
    1920X1200
    Hard Drives
    640GB 7200RPM SATA/RAID 0 (2x320GB)
    and 320GB 7200RPM External
    Mouse
    Wireless Microsoft 3000
    Internet Speed
    10 mbps/2 mbps
    Other Info
    Optical Drive:
    Panasonic UJ-220 DL BD-RE (Blu-Ray)
Thanks for the reply.

If I am understanding you correctly, you are suggesting that I then select High Perf whenever I am about to burn a disk, and change it back after the burn? If so, that is not what I am asking for here.

I am wondering if there is a way to tell Vista that burning a disk is a priority function and not to enter sleep mode when burning is in process. Perhaps a registry change??

Thanks
 

My Computer

Thanks for the reply.

If I am understanding you correctly, you are suggesting that I then select High Perf whenever I am about to burn a disk, and change it back after the burn? If so, that is not what I am asking for here.

I am wondering if there is a way to tell Vista that burning a disk is a priority function and not to enter sleep mode when burning is in process. Perhaps a registry change??

Thanks

try these:
http://www.vistax64.com/tutorials/171042-sleep-return-timeout-unattended-wake-up.html
http://www.vistax64.com/tutorials/63567-power-options-sleep-mode-problems.html
 
Last edited:

My Computer

System One

  • CPU
    T7600G Core2Duo 2.66 Ghz
    Motherboard
    Intel 945PM + ICH7 Chipset
    Memory
    4GB DDR2 PC2-5300 667MHz
    Graphics Card(s)
    Mobility Radeon x1900 256MB
    Sound Card
    Realtek HD
    Monitor(s) Displays
    WUXGA 17"
    Screen Resolution
    1920X1200
    Hard Drives
    640GB 7200RPM SATA/RAID 0 (2x320GB)
    and 320GB 7200RPM External
    Mouse
    Wireless Microsoft 3000
    Internet Speed
    10 mbps/2 mbps
    Other Info
    Optical Drive:
    Panasonic UJ-220 DL BD-RE (Blu-Ray)
The app you're using to burn should be calling the SetThreadExecutionState() API to let the OS know not to change power state until further notice. Without that, if the processor utilisation is sufficiently low there's no particular reason not to go sleepy bye-byes.

What app are you using to burn, and why are these burns taking so long anyway? :)
 

My Computer

It just so happens I was working on something similar earlier today so I've got an idea for you if you want to continue using that app and you're not afraid of a bit of C (or other language of your choice).

You can create a wrapper process to call SetThreadExecutionState first, invoke the burn app, and then hang around until the burn app process is terminated. While the wrapper is running, the box won't go to sleep, and the wrapper will continue to run until the burn app exits. The wrapper in pseudocode:

int main(void) {
HANDLE hBurnAppHandle;
SetThreadExecutionState(STAY_AWAKE); // keeps the box awake
hBurnApp = CreateProcess("TheBurnApp"); // starts the burn app
WaitForSingleObject(hBurnAppHandle); // wait for the app process to terminate
return 0;
}
 

My Computer

I checked the threads linked to above, the first one did not address this, the second one I looked at the first 10 pages only. It seems more about not going to sleep than going to sleep when the computer is still being used.

H2S04, thanks but wrappers and programming languages are foreign languages to me.

The app you're using to burn should be calling the SetThreadExecutionState() API to let the OS know not to change power state until further notice. Without that, if the processor utilisation is sufficiently low there's no particular reason not to go sleepy bye-byes.

What app are you using to burn, and why are these burns taking so long anyway? :)

This sounds like it could be the issue here. I am using Nero Express, an older version that is said to be Vista compatible, but maybe it is missing the boat here. Any other ideas how to check this?

As far as the time needed, it is a laptop, burns DVD's at only 8x, and with verification takes close to 20 minutes.

Thanks
 

My Computer

I have encountered a few new desktop computers recently that are set to use the laptop battery power config instead of the desktop power settings. So, checking new ones could be a good idea.
 

My Computer

System One

  • Manufacturer/Model
    Acer Aspire X1700
    Motherboard
    ASUS
    Memory
    3 gigs
    Graphics Card(s)
    EVGA 1 gig GeForce 210
    Monitor(s) Displays
    Vizio 21" tv
    Screen Resolution
    1920x1080 resolution
    Hard Drives
    1 terabyte sata in 1 partition
    Cooling
    fans that came with it
    Keyboard
    basic USB
    Mouse
    basic USB
    Internet Speed
    3 megabits on a cable modem, wired
Regrettably, there's no need to check whether Nero's calling that API because the fact that the machine goes to sleep means it's not. While a process which called that API (the right way) remains running, the OS does not go to sleep.

Never versions of Nero might do it right, but unless you can find something to that effect in the documentation I wouldn't be tempted to spend money on a gamble that an upgrade would help.

If you like, I'll write a wrapper for you so that instead of starting Nero directly you start the wrapper and it in turn starts Nero. Of course, you shouldn't trust me, and the compiled wrapper binary should first be subjected to a battery of anti-virus tests at your end. I'm only semi-joking :)

It's sleep time for me presently but I'll have a play with that wrapper when I get a chance and post it back here.
 

My Computer

Here's a small wrapper executable that you can use to start any app which you want to keep the machine awake. To use it, specify the full path of the executable to start:

C:\STESwrap> STESwrap.exe c:\windows\notepad.exe

Put quotes around the entire path if there are spaces:

C:\STESwrap> STESwrap.exe "c:\Program Files\Nero\Nero.exe"

If you put the STESwrap executable in the same directory as the target, you don't need to specify the full path - only the target EXE name. You can also create a batch file on your desktop, for example, with the suitable command line as the contents of the BAT file, and then start the whole shebang by just double-clicking the batch file.

The STESwrap process will continue to run while the app it started is running, and in doing so it should keep the machine awake. Once you close the target app, STESwrap will disappear and the box should be able to sleep again.

The code (change the extension to .c) and the compiled executable:
 

Attachments

  • STESwrap.txt
    1.4 KB · Views: 443
  • STESwrap.exe
    52 KB · Views: 349

My Computer

The problem: your machine goes to sleep during long DVD burns because the processor utilisation is insufficient to convince the OS that something worth staying awake for is currently happening. The hardware is so powerful, and the act of burning a DVD so comparatively undemanding, that the OS has no reason to think anything special is happening - so it just nods off.

Code-level explanation: in order to alert the OS to activity which is so important that all thoughts of sleep should be postponed, an application ought to call SetThreadExecutionState (STES). Think of that as a button that the app should press (and hold) in order to prevent sleep. Apparently, Nero's not doing that in your case. However, it doesn't matter which app calls STES. As long as one of the currently-running apps presses and holds the STES "button", the machine should not go to sleep.

STESwrap.exe does three things...

  1. calls STES (presses the "don't go to sleep now" button)
  2. starts any application you want it to start - the name of the app is passed on the command-line.
  3. continues to run while the app it started is also running, and in doing so keeps the STES "button" pressed.
STESwrap.exe is a command-line utility. To use it, download the STESwrap.exe file, unleash every virus scanner you've got onto it (to make sure it's virus-free in case my machine has been infected with something and I'm not aware of the situation), then...

  • copy STESwrap.exe into the same folder as Nero.exe, or whatever the executable that starts Nero is called. (check the shortcut properties in the start menu)
  • create a startNero.bat file in the same location whose only contents are this...
steswrap.exe Nero.exe
Any time that batch file is invoked, STESwrap should start Nero.exe and you should be able to burn without the machine going to sleep on you. Optionally, you could create a shortcut on your desktop to the startNero.bat file so that you can simply double-click to start everything without having to open a CMD prompt every time or find startNero.bat.
 

My Computer

H2S04, thanks, I will give it try when I have some time. Thanks.

Rive, when you burn discs 2 or 3 times a day, turning sleep off/on/off/on gets old really quick.
 

My Computer

this doesn't work in windows 7. how easy would it be to make a version for windows 7. Also, could you prevent the console window from opening? maybe make the window hidden. This really is the best way to fix this bug in windows. I can't believe I have to change my power settings to play itunes music. Utorrent handles the power settings correctly so why can't itunes?
 

My Computer

Back
Top