首页 > 编程知识 正文

sqldeveloper新建查询窗口,sqldeveloper命令窗口在哪

时间:2023-05-06 10:38:11 阅读:110814 作者:1898

列出所有进程。 必须通过调用tlhelp32.h标头中的CreateToolHelp32Snapshot函数来获取系统进程快照的句柄。 函数的具体形式如下。

handle _ winapicreatetoolhelp 32 snapshot (

DWORD dwFlags,

dword th32进程

);

各参数的含义如下。

dwFlags :指定了获取系统进程快照的类型。

th32ProcessID :指向要检索的进程的快照的ID。 0表示要获取系统中所有进程的快照;

如果函数调用成功返回了快照句柄,否则返回INVALID_HANDLE_VALUE。 获取系统进程的快照句柄后,必须调用Process32First函数来查找系统进程快照中的第一个进程。 函数的格式如下。

BOOL Process32First (

HANDLE hSnapshot,

LPROCESSENTRY32 lppe

);

调用Process32Next函数,按以下格式列出系统中的其他进程:

BOOL Process32Next (

HANDLE hSnapshot,

LPROCESSENTRY32 lppe

);

两个函数的自变量相同。 其中hSnapshot是由CreateToolHelp32Snapshot函数返回的系统进程快照的句柄。 另一方面,lppe是指向PROCESSENTRY的结构体指针,进程的详细信息被保存在结构体中。 PROCESSENTRY32结构定义如下:

typedefstructtagprocessentry 32 {

DWORD dwSize; //结构大小

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

DWORD th32ProcessID; //进程ID

DWORD th32DefaultHeapID; //进程默认堆ID

dword th32模块id; //进程模块ID

DWORD cntThreads; //此进程打开的线程数

DWORD th32ParentProcessID; //父进程ID

长pcpriclassbase; //线程优先级

DWORD dwFlags; //保留

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

} PROCESSENTRY32;

如果过程中枚举了这两个函数,则返回TRUE;否则返回FALSE。 枚举进程时,lppe参数会返回进程的详细信息,以便用户可以读取和输出这些进程的信息。

枚举完成后,必须调用CloseHandle函数关闭系统进程句柄。 具体代码如下。

# include stdio.h # include windows.h # include string.h # includetlhelp 32.hintgetprocess () {//PROCESSENTRY32结构,进程//用于拍摄系统进程快照的句柄handlehprocesssnap=create toolhelp 32 snapshot (th32 cs _ snap process,0 ); hprocess snap==invalid _ handle _ value ) printf (' create toolhelp 32 snapshot error. n ' ); 返回0; //首先获得第一个进程boolbprocess=process 32 first (hprocess snap,pe32 ); //所有进程while(bprocess )//进程名称和进程idprintf(%ls----%d(n ),pe32.szExeFile,pe32.th32ProcessID ) ) }closehandle(hprocesssnap ); 返回0; }int main () {GetProcess; 返回0; }

结果如下。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。