我在windows 7上的visual studio 2008中有一个C++项目,我尝试启动一项新服务。 我以管理员身份运行visual studio。 我无法启动服务(serviceMain甚至没有被调用)。Windows 7上的StartServiceCtrlDispatcher访问被拒绝
这是我的主要功能:
wchar_t str[] = {'s','e','s','m'};
int _tmain(int argc, _TCHAR* argv[])
{
SERVICE_TABLE_ENTRY dispTable[] =
{
{(wchar_t*)str, ServiceWork::ServiceMain},
{NULL, NULL}
};
int i = StartServiceCtrlDispatcher(dispTable);
int j = GetLastError();
return 0;
}
输出为:
。 。 。
'SessionMonitor.exe':已加载 'C:\ WINDOWS \ Syswow64资料\ cryptbase.dll'
'SessionMonitor.exe':已加载 'C:\ WINDOWS \ Syswow64资料\ imm32.dll'
'SessionMonitor.exe':加载'C:\ Windows \ SysWOW64 \ msctf.dll'
SessionMonitor.exe中0x7638b9bc的第一次机会异常:0x00000005:访问被拒绝。 线程'Win32 Thread'(0x129c)已退出,代码为0(0x0)。 程序'[2492] SessionMonitor.exe:Native'已退出,代码为0(0x0)。
上调试,j为1063 - ERROR_FAILED_SERVICE_CONTROLLER_CONNECT
有没有人遇到过这个问题吗? 任何解决方案?
谢谢你, Liron
嗨,我改变了它,我仍然得到同样的错误.. – lironda 2012-07-26 05:24:38