在2000下,我建立了一个服务,改服务中使用了
HWND hwnd = FindWindow("Shell_trawnd", NULL);
ShowWindow(hwnd, SW_HIDE);
来隐藏任务栏,可不知道为什么,单独运行该代码有效,可是开机自动由服务运行则
不能达到禁止的目的,希望高手指点一二
HWND hwnd = FindWindow("Shell_trawnd", NULL);
ShowWindow(hwnd, SW_HIDE);
来隐藏任务栏,可不知道为什么,单独运行该代码有效,可是开机自动由服务运行则
不能达到禁止的目的,希望高手指点一二
if (NULL == hwnd )
{
TRACE("FindWindow Error %d",GetLastError());
}
else
{
ShowWindow(hwnd, SW_HIDE);
}
在创建服务时,确保你的服务具有与桌面交互的属性,即SERVICE_INTERACTIVE_PROCESS属性SC_HANDLE hService = ::CreateService(
hSCM,
m_szServiceName,
m_szServiceName,
SERVICE_ALL_ACCESS,
SERVICE_WIN32_OWN_PROCESS | SERVICE_INTERACTIVE_PROCESS ,//Note here
SERVICE_DEMAND_START,
SERVICE_ERROR_NORMAL,
szFilePath,
NULL, NULL,
_T("RPCSS\0"),
NULL, NULL);