October 4, 201213 yr I've been working on porting my app installer program to work on Windows 8. I'm just about done but there is left one little issue which is mainly cosmetic. In previous version of Windows, I run a program at first boot by putting it in here:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceWindows 8 is different because it isn't supposed to boot to the Desktop, but instead show the ModernUI/Start Screen instead. It seems that if you put a program in that registry key, Windows will "sort-of" boot to the desktop. My program puts up a messagebox on the screen saying that it is done working and clicking OK will exit the program. But the screen is black with a blue (unpopulated) taskbar on the screen. I can get back to the Start Screen by pressing the Windows key, but I would rather be able to send some sort of command that puts that back up instead. So is there any other way to open/close the Start Screen without sending keypresses?EDIT: it appears that registry key is not erased at boot like in Windows 7 and earlier OSes. Edited October 5, 201213 yr by Tripredacus
October 5, 201213 yr So is there any other way to open/close the Start Screen without sending keypresses?Call programmatically PostMessage(HWND_BROADCAST,RegisterWindowMessage("SHELLHOOK"),HSHELL_TASKMAN,GetDesktopWindow()); after closing your messagebox. That won't work however if other windows are open on desktop.EDIT: it appears that registry key is not erased at boot like in Windows 7 and earlier OSes.It is for me.
October 5, 201213 yr Author So is there any other way to open/close the Start Screen without sending keypresses?Call programmatically PostMessage(HWND_BROADCAST,RegisterWindowMessage("SHELLHOOK"),HSHELL_TASKMAN,GetDesktopWindow()); after closing your messagebox. That won't work however if other windows are open on desktop.EDIT: it appears that registry key is not erased at boot like in Windows 7 and earlier OSes.It is for me.Thanks, I'll try that. I could even just not show the messagebox I guess.You are right about the reg key, I found the issue....
October 5, 201213 yr Author Why not just send a WM_KEYDOWN message specifying the Win key to the shell?I'm going to try that too, but with some OS detection since all my apps are designed to run on multiple OSes. We'll see which is the easiest to handle.Hmmm does even sending the Windows key cause a problem if another application is open? In my case there is.... sysprep.exe. Does the problem sending the key occur because that program is in focus? Edited October 5, 201213 yr by Tripredacus
Create an account or sign in to comment