|
|
/*++
Copyright (c) 2000 Microsoft Corporation
Module Name:
HideTaskBar.cpp
Abstract:
The WS_EX_CLIENTEDGE flag means that the taskbar gets shown on NT. This isn't always what's desirable.
Notes:
This is a general purpose shim.
History:
04/07/2000 linstev Created
--*/
#include "precomp.h"
IMPLEMENT_SHIM_BEGIN(HideTaskBar) #include "ShimHookMacro.h"
APIHOOK_ENUM_BEGIN APIHOOK_ENUM_ENTRY(CreateWindowExA) APIHOOK_ENUM_ENTRY(CreateWindowExW) APIHOOK_ENUM_END
/*++
Remove invalid Windows 2000 style bits from dwExStyle mask before calling CreateWindowEx.
--*/
HWND APIHOOK(CreateWindowExA)( DWORD dwExStyle, LPCSTR lpClassName, LPCSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam ) { // Remove the client edge style.
dwExStyle &= ~WS_EX_CLIENTEDGE;
return ORIGINAL_API(CreateWindowExA)( dwExStyle, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); }
/*++
Remove invalid Windows 2000 style bits from dwExStyle mask before calling CreateWindowEx.
--*/
HWND APIHOOK(CreateWindowExW)( DWORD dwExStyle, LPCWSTR lpClassName, LPCWSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam ) { dwExStyle &= ~WS_EX_CLIENTEDGE; // Call the original API
return ORIGINAL_API(CreateWindowExW)( dwExStyle, lpClassName, lpWindowName, dwStyle, x, y, nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam); }
/*++
Register hooked functions
--*/
HOOK_BEGIN
APIHOOK_ENTRY(USER32.DLL, CreateWindowExA) APIHOOK_ENTRY(USER32.DLL, CreateWindowExW)
HOOK_END
IMPLEMENT_SHIM_END
|