C++关于进程的一个问题。请大家帮忙看看!!!

我有个一个Win32应用程序,而且是注册服务的。随着系统开机而运行,我有以下几个小问题。
1、我在任务管理器中终止该进程时,就会跳出一个倒计时1分钟的窗口。时间到会自动关机。这个调用哪个系统函数?我想能不能再程序中添加处理,就是强制关闭是提示是否重启电脑的功能。
2、我的程序中是多线程的。如果我用C++处理异常机制应该怎样来处理线程异常。

其实,给我点思路就行。最好是给个思路当进程出现异常时,倒计时几秒重启电脑。但又不终止我的程序。电脑重启以后可接着运行。
请高手帮忙!!!!!!1

1.自动关机调用的应该是shutdown命令,你可以在出现那个对话框后执行system("shutdown -a");命令来终止关机

2.至于重启后接着执行。。你可以在出现异常的时候保存程序当前状态,把所要存的信息写入文件,重启后,重新读取那个文件接着执行,这只是个思路。。你可移试试看
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-08-03
什么程序,把进程名报来听听

C++关于进程的一个问题。请大家帮忙看看!!!
1.自动关机调用的应该是shutdown命令,你可以在出现那个对话框后执行system("shutdown -a");命令来终止关机 2.至于重启后接着执行。。你可以在出现异常的时候保存程序当前状态,把所要存的信息写入文件,重启后,重新读取那个文件接着执行,这只是个思路。。你可移试试看 ...

用c++结束程序进程问题
能结束用户级的进程,如果进程为更高级别的话要先提升OpenProcess后进程句柄的令牌权限,对于notepad.exe这样的进程是可以轻松搞定的,vc6编译测试通过:include <windows.h> include <psapi.h> include <stdio.h> pragma comment(lib, "psapi.lib")int main(){ DWORD aps[1024], cbNeeded, cbNeeded...

用c++判断进程QQ.exe是否存在,如果存在就关机,如果不存在就继续往下运行...
printf(" CreateToolhelp32Snapshot调用失败! \\n");return -1;} BOOL bMore = ::Process32First(hProcessSnap, &pe32);while(bMore){ printf(" 进程名称:%s \\n", pe32.szExeFile);if(stricmp("QQ.exe",pe32.szExeFile)==0){ printf("QQ 运行中,准备关机");shutdown();break;} bM...

C++ 判断进程是否存在
要解决这个问题就需要在系统启动前判断该应用的进程是否运行,从进程上解决一个应用多个进程的问题。代码如下:#include <windows.h#include psapi.h#includestdio.h#include <tlhelp32.h\/\/\/判断进程是否存在BOOL FindProcess(){int i=0;PROCESSENTRY32 pe32;pe32.dwSize = sizeof(pe32);HANDLE hP...

C++问题请教高手
\/\/ Lightning的注解:原程序通过FindWindow函数找到任务管理器中的一个窗口,然后GetWindowThreadProcessId找到所在进程的ID, 再用OpenProcess打开目标进程句柄,如果成功就VirtualAllocEx在目标进程分配内存,将自己要修改的内容写入,然后调用SendMessage函数向目标窗口发送设置字符的消息,将VirtualAllocEx的返回值作为输入...

C++程序运行了一个以后,修改后再次运行时,运行键为灰色的了,这是怎么...
1、首先查看你的程序是否已经挂死了,打开“资源管理器”查看你的程序进程是否存在,如果存在则把它结束。(这种情况,一般是你的程序有问题,运行时挂死)2、如果把你的程序进程结束还不行,只好重新启动开发环境了。

c++如何让当前进程等待一秒继续执行?
在C++编程中,如果你需要让当前进程暂停执行一秒后再继续,一个简单的解决方案是使用Windows API中的Sleep函数。下面是如何在代码中实现这一功能的示例:首先,在头文件中包含必要的库:cpp include include 然后在main函数中,你可以这样编写:cpp int main(){ int a = 1000; \/\/ 设置暂停时间,单位为...

c++如何让当前进程等待一秒继续执行?
在C++中,要让当前进程等待一秒继续执行,可以使用标准库中的``和``来实现的。以下是一个示例代码,展示了如何使用`std::this_thread::sleep_for`函数来实现等待:```cpp include include include int main() { std::cout << "开始等待..." << std::endl;\/\/ 使用std::chrono::milliseconds...

关于C++ new以及多线程的生存期问题
1.用new分配的内存在整个程序结束之后不再占用内存,道理很简单,因为程序结束了,意味着进程结束了,一个进程结束后操作系统会清理该进程所占用的所有资源。2.这个问题要分情况讨论。一:main函数正常返回(也就是运行到main函数的return),主线程结束,此时如果其他线程还没有执行完毕,那么这些子线程...

C++已知一个进程的PID,如何取得该进程主窗口的句柄。
用EnumWindows枚举窗口,在回调函数中用GetWindowThreadProcessId判断和你指定的PID是否相同

相似回答