Desktop.
This commit is contained in:
parent
f23c5dffb9
commit
8ca4b9a99a
|
@ -196,8 +196,16 @@ _FX BOOL WINAPI DllMain(
|
|||
|
||||
Dll_InitGeneric(hInstance);
|
||||
SbieDll_HookInit();
|
||||
if (SbieApi_QueryConfBool(NULL, "UseSandboxDesktop", FALSE)) {
|
||||
wchar_t* boxName = { L'\0' },*Temp=L"Desktop_";
|
||||
SbieApi_QueryBoxPath(&boxName, NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
lstrcat(Temp, boxName);
|
||||
HDESK hDesk = OpenDesktopA(Temp, 0, FALSE, GENERIC_ALL);
|
||||
if(hDesk)
|
||||
SetThreadDesktop(hDesk);
|
||||
}
|
||||
|
||||
} else if (dwReason == DLL_PROCESS_DETACH) {
|
||||
} else if (dwReason == DLL_PROCESS_DETACH) {
|
||||
|
||||
if (Dll_InitComplete && Dll_BoxName) {
|
||||
|
||||
|
|
|
@ -246,6 +246,7 @@ static HWND Gui_CreateWindowExA(
|
|||
HINSTANCE hInstance,
|
||||
LPVOID lpParam);
|
||||
|
||||
|
||||
static HWND Gui_CreateWindowExW(
|
||||
DWORD dwExStyle,
|
||||
void *lpClassName,
|
||||
|
@ -1337,6 +1338,8 @@ _FX HWND Gui_CreateWindowExW(
|
|||
HINSTANCE hInstance,
|
||||
LPVOID lpParam)
|
||||
{
|
||||
SetDesktop();
|
||||
|
||||
THREAD_DATA *TlsData = Dll_GetTlsData(NULL);
|
||||
void *new_WindowName;
|
||||
WCHAR *clsnm;
|
||||
|
@ -1472,6 +1475,8 @@ _FX HWND Gui_CreateWindowExA(
|
|||
HINSTANCE hInstance,
|
||||
LPVOID lpParam)
|
||||
{
|
||||
SetDesktop();
|
||||
|
||||
THREAD_DATA *TlsData = Dll_GetTlsData(NULL);
|
||||
void *new_WindowName;
|
||||
UCHAR *clsnm;
|
||||
|
@ -2842,3 +2847,13 @@ _FX BOOLEAN ComDlg32_Init(HMODULE module)
|
|||
|
||||
return TRUE;
|
||||
}
|
||||
void SetDesktop() {
|
||||
if (SbieApi_QueryConfBool(NULL, "UseSandboxDesktop", FALSE)) {
|
||||
wchar_t* boxName = { L'\0' }, * Temp = L"Desktop_";
|
||||
SbieApi_QueryBoxPath(&boxName, NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
lstrcat(Temp, boxName);
|
||||
HDESK hDesk = OpenDesktopA(Temp, 0, FALSE, GENERIC_ALL);
|
||||
if (hDesk)
|
||||
SetThreadDesktop(hDesk);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -940,6 +940,7 @@ BOOLEAN Ole_DoDragDrop(HWND hWnd, WPARAM wParam, LPARAM lParam);
|
|||
|
||||
BOOLEAN Gui_InitMisc(HMODULE module);
|
||||
|
||||
static void SetDesktop();
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -176,7 +176,7 @@ _FX HHOOK Gui_SetWindowsHookExA(
|
|||
int idHook, HOOKPROC lpfn, HINSTANCE hMod, DWORD dwThreadId)
|
||||
{
|
||||
HHOOK hhook;
|
||||
|
||||
SetDesktop();
|
||||
if ( idHook == WH_JOURNALRECORD || idHook == WH_JOURNALPLAYBACK ||
|
||||
idHook == WH_KEYBOARD_LL || idHook == WH_MOUSE_LL ||
|
||||
//Gui_IsThreadInThisProcess(dwThreadId)
|
||||
|
@ -241,7 +241,7 @@ _FX HHOOK Gui_SetWindowsHookExW(
|
|||
//
|
||||
|
||||
HHOOK hhook;
|
||||
|
||||
SetDesktop();
|
||||
if ( idHook == WH_JOURNALRECORD || idHook == WH_JOURNALPLAYBACK ||
|
||||
idHook == WH_KEYBOARD_LL || idHook == WH_MOUSE_LL ||
|
||||
//Gui_IsThreadInThisProcess(dwThreadId)
|
||||
|
|
Loading…
Reference in New Issue