c语言vc是什么意思,这个VC语句是什么意思

int iLen = { sizeof( int ) };

这样是可以的!iLen = 4;

PROCESSENTRY32 pe32 = { sizeof(PROCESSENTRY32) }; 比较奇怪!

除非PROCESSENTRY32是int型的!否则会出错的!

但查询的结果是:

typedef struct tagPROCESSENTRY32 {

DWORD dwSize; // 结构大小;

DWORD cntUsage; // 此进程的引用计数;

DWORD th32ProcessID; // 进程ID;

DWORD th32DefaultHeapID; // 进程默认堆ID;

DWORD th32ModuleID; // 进程模块ID;

DWORD cntThreads; // 此进程开启的线程计数;

DWORD th32ParentProcessID; // 父进程ID;

LONG pcPriClassBase; // 线程优先权;

DWORD dwFlags; // 保留;

char szExeFile[MAX_PATH]; // 进程全名;

} PROCESSENTRY32;

你上面的那段代码不知是要做什么?如果得到长度的话是:

int iPE32len = sizeof( PROCESSENTRY32 );

以上的结构的用法如下:

得到相关的进程信息。 两个函数原型声明如下:

BOOL WINAPI Process32First(HANDLE hSnapshot, LPPROCESSENTRY32 lppe);

BOOL WINAPI Process32Next(HANDLE hSnapshot,LPPROCESSENTRY32 lppe);

下面给出一个简单的应用示例。在此示例中将枚举出系统的所有进程,并获取各进程的标识号和相应程序的绝对路径,进程标识号在下一步对进程的管理中将要用到,程序路径则直接通过列表控件显示出来:

// PROCESSENTRY32结构对象

PROCESSENTRY32 pe;

// 创建快照句柄

HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);

// 先搜索系统中第一个进程的信息

Process32First(hSnapshot, &pe);

// 下面对系统中的所有进程进行枚举,并保存其信息

do{

// 把进程对应的文件路径名填入列表框

int index = m_ctlwndList.AddString(pe.szExeFile);

// 设置列表框中该项的Data相应的进程的ID号,利于以后终止该进程

m_ctlwndList.SetItemData(index, pe.th32ProcessID);

} while (Process32Next(hSnapshot, &pe));

// 关闭快照句柄

CloseHandle(hSnapshot);

BTW:提问题前先想清楚:所提的问题是什么?别人能不能从你的问题中获取到足够的信息?同时最好能把你的思路写出来!这样方便别人分析你的问题!

xstar38777.5097106481

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值