golang1.8使用cgo获取进程是否假死
来源:互联网 发布:软件研发团队介绍 编辑:程序博客网 时间:2024/04/29 20:28
package mainimport ( "flag")/*#include <stdio.h>#include <windows.h>#include <Winuser.h>typedef struct EnumFunArg{ HWND hWND; DWORD dwProcessId;}EnumFunArg,*LPEnumFunArg;BOOL CALLBACK lpEnumFunc(HWND hwnd, LPARAM lParam){ EnumFunArg *pArg = (LPEnumFunArg)lParam; DWORD processId; GetWindowThreadProcessId(hwnd, &processId); if( processId == pArg->dwProcessId) { pArg->hWND = hwnd; return FALSE; } return TRUE;}int ReturnWnd(DWORD processID){ BOOL re = FALSE; EnumFunArg wi; wi.dwProcessId = processID; wi.hWND = NULL; EnumWindows(lpEnumFunc,(LPARAM)&wi); if(wi.hWND) { if (IsHungAppWindow(wi.hWND)) { return 1; } } else { return -1; } return 0;}*/import "C"func main() { pid := flag.Int("p", 0, "-p 1001") flag.Parse() h := C.ReturnWnd(C.DWORD(*pid)) switch h { case 0: println("程序有响应") case 1: println("程序无响应") case -1: println("无法获取窗口") }}
1 0
- golang1.8使用cgo获取进程是否假死
- golang1.7 关于CGO的一个小问题:C.free使用.
- Golang1.7使用CGO在Go代码中定义C函数
- Go语言使用CGO获取Windows的CPU使用率
- Golang1.8获取Windows硬件信息小实例.
- Golang1.8使用slice实现先进进出功能
- Golang1.8编译静态库给C使用
- cgo
- cgo
- 使用CGO封装Windows API
- Golang1.7.4标准库sql使用
- Go语言 使用CGo进行优化
- W3WP多个进程假死
- mac 软件假死杀进程
- Android获取进程是否在后台注意事项
- Golang1.7 Http和Tcp使用同一个端口做服务
- python 判断进程是否存在+获取进程占用内存值
- 假死
- 数据库——发展
- java-正则表达式
- django学习6 orm模型
- 【龙芯1c库】封装硬件pwm接口和使用示例
- 浅谈 gulp安装&less插件(缺陷请指出)
- golang1.8使用cgo获取进程是否假死
- SQL Server 触发器
- 关于一句话的修改:storm集成kafka
- QT 图形绘制
- 为什么javascript是单线程?
- CEF方面的研究(三) 将CEF嵌入MFC对话框程序
- android学习笔记之ImageView的scaleType属性
- 一堂课玩转rpm包的制作
- 引用