A forum for reverse engineering, OS internals and malware analysis 

Forum for discussion about user-mode development.
 #16471  by kmd
 Tue Nov 06, 2012 1:54 pm
hi guys

working out on program managing some desktops, lets say it have primary and secondary desktop

algo

CreateDesktop
CreateProcess + Desktop in STARTUP_INFO
SetThreadDesktop
SwitchDesktop

everything working fine from 2k to 7

but today i tried this on windows 8 rtm

desktop created, switched wll and...
explorer stuck :? :? impossible to do anything with it - it looks like suspended a half

any1 got the same issue? how to fix this?

tia
 #16472  by EP_X0FF
 Tue Nov 06, 2012 2:42 pm
Code: Select all
if (IsWindows8) {
	hTrayWnd = FindWindow("ShellTray_Wnd", NULL);
	if (hTrayWnd) {
		PostMessage(hTrayWnd, 0x574, 2, 0);
	}
}
Put this after creating Explorer process and switching desktop. ShellTray_Wnd window also must be created. Thanks to Mark.