157 |
static LRESULT CALLBACK |
static LRESULT CALLBACK |
158 |
cbt_hook_proc(int code, WPARAM wparam, LPARAM lparam) |
cbt_hook_proc(int code, WPARAM wparam, LPARAM lparam) |
159 |
{ |
{ |
|
char title[150]; |
|
|
|
|
160 |
if (code < 0) |
if (code < 0) |
161 |
goto end; |
goto end; |
162 |
|
|
168 |
|
|
169 |
show = LOWORD(lparam); |
show = LOWORD(lparam); |
170 |
|
|
|
if ((show == SW_SHOWMINIMIZED) || (show == SW_MINIMIZE)) |
|
|
{ |
|
|
MessageBox(0, |
|
|
"Minimizing windows is not allowed in this version. Sorry!", |
|
|
"SeamlessRDP", MB_OK); |
|
|
return 1; |
|
|
} |
|
|
|
|
|
GetWindowText((HWND) wparam, title, sizeof(title)); |
|
|
|
|
|
/* FIXME: Strip title of dangerous characters */ |
|
|
|
|
171 |
if (show == SW_SHOWNORMAL) |
if (show == SW_SHOWNORMAL) |
172 |
state = 0; |
state = 0; |
173 |
else if (show == SW_SHOWMINIMIZED) |
else if (show == SW_SHOWMINIMIZED) |
174 |
state = 1; |
state = 1; |
175 |
else if (show == SW_SHOWMAXIMIZED) |
else if (show == SW_SHOWMAXIMIZED) |
176 |
state = 2; |
state = 2; |
177 |
vchannel_write("SETSTATE,0x%p,%s,0x%x,0x%x", |
vchannel_write("STATE,0x%p,0x%x,0x%x", (HWND) wparam, state, 0); |
|
(HWND) wparam, title, state, 0); |
|
178 |
break; |
break; |
179 |
} |
} |
180 |
|
|