WinXP Pro+VC6 编译说找不到CreateJobObject()函数问题求教! WinXp +VC6 编译竟然说找不到CreateJobObject()函数以及相关变量!头文件包含了应该没问题,难道说是WinXP不支持这个函数了???还是需要下某个扩展SDK??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参看csdn。看看这个函数需要的版本是多少。再看看自己的vc工程里环境变量(_WIN32_WINNT 和 WINVER)是多少.比较函数需要的版本号!自己定义_WIN32_WINNT 和 WINVER值 Windows NT/2000: Requires Windows 2000.Windows 95/98: Unsupported.一般情况下,如果你的vc工程都是缺省设置的话,那么编译时CreateJobObject不会参与编译,所以找不到!在stdafx.h中定义#define _WIN32_WINNT 0x0500 恩现在我通过编译了不过SetInformationJobObject()函数运行时总是不对返回错误代码是24 HANDLE hjob=CreateJobObject(NULL,NULL); if(hjob==NULL) { char* errorInfo=new char[10]; errorInfo=_itoa((int)GetLastError(),errorInfo,10); ::MessageBox(NULL,errorInfo,"CreateJobObject",MB_OK); delete errorInfo; } JOBOBJECT_BASIC_LIMIT_INFORMATION jobli = {0}; jobli.PriorityClass=IDLE_PRIORITY_CLASS; jobli.PerJobUserTimeLimit.QuadPart = 1000; jobli.LimitFlags=JOB_OBJECT_LIMIT_PROCESS_TIME; if(!SetInformationJobObject(hjob,JobObjectBasicLimitInformation,&jobli,sizeof(jobli))) { char* errorInfo=new char[10]; errorInfo=_itoa((int)GetLastError(),errorInfo,10); ::MessageBox(NULL,errorInfo,"ERROR",MB_OK); delete errorInfo; } STARTUPINFO si={sizeof(si)}; PROCESS_INFORMATION pi; CreateProcess(NULL,"3DApp",NULL,NULL,FALSE,CREATE_SUSPENDED,NULL,NULL,&si,&pi); AssignProcessToJobObject(hjob,pi.hProcess); ResumeThread(pi.hThread); CloseHandle(pi.hThread); 大哥,不要什么问题都问,这样对你没有什么好处!To get extended error information, call GetLastError().上面这段话msdn上有,你有没有试过? 看过啊但是错误原因我不知道所以才问啊!The program issued a command but the command length is incorrect.??????????? 重现隐藏的非模态窗口 用 vs 2008 c++ 对 auto cad 二次开发 彩鸟问题 我的毕业设计为什么没人帮我~~关于2维傅立叶变换 55555555555555 求助:象素,毫米,和英寸间的换算关系? 准备用winvnc的方法实现屏幕监控,请问怎样才能更好地掌握winnvc的代码 请问怎么查询COM的接口函数???????? 一个小问题 关于WebBrowser的问题 求助 一个很基础的问题:为啥会"fatal error LNK1120" 如何将应用程序的默认图标替换为truecolor的? 请教MFC扩展DLL的问题,关于内存泄的
Windows 95/98: Unsupported.一般情况下,如果你的vc工程都是缺省设置的话,那么编译时CreateJobObject不会参与编译,所以找不到!
在stdafx.h中定义#define _WIN32_WINNT 0x0500
不过SetInformationJobObject()函数运行时总是不对返回错误代码是24
HANDLE hjob=CreateJobObject(NULL,NULL);
if(hjob==NULL)
{
char* errorInfo=new char[10];
errorInfo=_itoa((int)GetLastError(),errorInfo,10);
::MessageBox(NULL,errorInfo,"CreateJobObject",MB_OK);
delete errorInfo;
} JOBOBJECT_BASIC_LIMIT_INFORMATION jobli = {0}; jobli.PriorityClass=IDLE_PRIORITY_CLASS;
jobli.PerJobUserTimeLimit.QuadPart = 1000;
jobli.LimitFlags=JOB_OBJECT_LIMIT_PROCESS_TIME;
if(!SetInformationJobObject(hjob,JobObjectBasicLimitInformation,&jobli,sizeof(jobli)))
{
char* errorInfo=new char[10];
errorInfo=_itoa((int)GetLastError(),errorInfo,10);
::MessageBox(NULL,errorInfo,"ERROR",MB_OK);
delete errorInfo;
}
STARTUPINFO si={sizeof(si)};
PROCESS_INFORMATION pi;
CreateProcess(NULL,"3DApp",NULL,NULL,FALSE,CREATE_SUSPENDED,NULL,NULL,&si,&pi);
AssignProcessToJobObject(hjob,pi.hProcess); ResumeThread(pi.hThread);
CloseHandle(pi.hThread);
上面这段话msdn上有,你有没有试过?
但是错误原因我不知道所以才问啊!The program issued a command but the command length is incorrect.???????????