当前位置: 首页 > 编程笔记 >

VC实现获取当前正在运行的进程

刘博雅
2023-03-14
本文向大家介绍VC实现获取当前正在运行的进程,包括了VC实现获取当前正在运行的进程的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了VC实现获取当前正在运行的进程。分享给大家供大家参考。具体实现方法如下:

#include <windows.h>
#include <tlhelp32.h>
#include <stdio.h>
int main(int argc,char* argv[])
{
PROCESSENTRY32 pe32;
//再使用这个结构体前先定义它的大小
pe32.dwSize=sizeof(pe32);
//给系统内的所有进程拍一个快照
HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if (hProcessSnap==INVALID_HANDLE_VALUE)
{
  printf("Create ToolHelp32Snaphhot调用失败!\n");
  return -1;
}
BOOL bMore=::Process32First(hProcessSnap,&pe32);
while(bMore)
{
  printf("进程名称:%s\n",pe32.szExeFile);
  printf("进程ID号:%u\nn",pe32.th32ProcessID);
  bMore=::Process32Next(hProcessSnap,&pe32);
}
printf("不要忘记清楚掉snapshot");
::CloseHandle(hProcessSnap);
return 0;
}

希望本文所述对大家的VC程序设计有所帮助。

 类似资料:
  • 我使用(全局声明)同时运行多线程。需要一个小时才能完成任务。因此,我需要获得当前运行的线程详细信息,如活动线程,排队线程和完成线程。 但事情是我需要停止在15分钟内发送新的请求到服务器或调用一些方法。 这里shutdown或shutdowNow停止执行器,但不停止这5个线程。这就是问题所在。所以我需要手动杀死那些线程。如何杀死executor服务中手动附加的线程?

  • 问题内容: 如何获取Go中当前正在运行的进程的列表? 该OS软件包提供了一些功能:http : //golang.org/pkg/os/, 但没有提供任何内容来查看正在运行的进程的列表。 问题答案: 标准库中没有这样的功能,很可能永远不会。 在大多数情况下,程序不需要进程列表。Go程序通常希望等待一个或更少数量的进程,而不是所有进程。进程的PID通常通过除搜索所有进程的列表之外的其他方式获得。 如

  • 在nodejs中,我使用__dirname。在戈兰,这相当于什么? 我在谷歌上找到了这篇文章http://andrewbrookins.com/tech/golang-get-directory-of-the-current-file/.他使用下面的代码 但是,这是正确的方式还是习惯的方式做在戈朗?

  • 问题内容: 我正在尝试获取Windows机器上所有当前正在运行的进程的列表。 我正在尝试通过JNA的winapi调用EnumProcesses-> OpenProcess-> GetModuleBaseNameW-> CloseHandle尝试OpenProcess调用时失败。GetLastError返回5(ERROR_ACCESS_DENIED)。 这是我的代码: 问题答案: 调用with 表示

  • 问题内容: 有什么方法可以获取当前JVM中所有正在运行的线程的列表(包括不是由我的类启动的线程)? 是否还可以获取列表中所有线程的和对象? 我希望能够通过代码做到这一点。 问题答案: 要获得一个可迭代的集合:

  • 问题内容: 标准方法如下: 在这种情况下,如果跟踪当前进程(例如,使用gdb运行或附加到该进程),则ptrace返回错误。 但这有一个严重的问题:如果调用成功返回,则gdb稍后可能不会附加到它。这是一个问题,因为我没有尝试实现反调试的东西。我的目的是在满足条件(即断言失败)并且gdb正在运行时发出“ int 3”(否则,我会得到SIGTRAP来停止应用程序)。 禁用SIGTRAP并每次发出’int

  • 问题内容: 我有一个命令,该命令使用git从Linux Shell将文件上传到远程服务器,这将需要许多小时才能完成。 如何将正在运行的程序放在后台?这样我仍然可以在Shell上工作并且该过程也可以完成? 问题答案: 使用CTRL + Z暂停该过程,然后使用命令在后台将其恢复。例如: 手册页中有关作业控制和使用的更多信息: 作业控制在进程运行时 键入 暂停 字符(通常为^ Z,Control-Z)将