OpenProcess 取得 process handle 2CreateToolhelp32Snapshot 得到一个snapshot 3然后调 Thread32First,Thread32Next 取线程
源码:版本 2DLL命令 暂停线程, 整数型, "kernel32dll", "SuspendThread" 参数 hThread, 整数型, , 线程句柄DLL命令 恢复线程, 整数型, "kernel32dll", "ResumeThread", , 解除挂起 参数 hThread, , , 线程句柄DLL命令 创建线程, 整数型, "kernel32dll", "CreateThread" 参数 lpThreadAttributes, 整数型 参数 dwStackSize, 整数型 参数 子程序指针, 子程序指针 参数 参数, 整数型 参数 dwCreationFlags, 整数型 参数 线程ID, 整数型, 传址DLL命令 销毁线程, , "kernel32dll", "TerminateThread" 参数 线程ID, 整数型 参数 dwExitCode, 整数型
一般手机插入都会显示H盘或者是其他的
只有你判断H盘是否存在就行了。
下面是获取U盘的插入或拔除事件的代码,有dll命令和自定义类型常量。
版本 2
程序集 窗口程序集1
程序集变量 a, 子程序指针
子程序 __启动窗口_创建完毕
a = SetWindowLong (_启动窗口取窗口句柄 (), -4, &MsgProc)
子程序 MsgProc, 整数型
参数 hwnd, 整数型
参数 msg, 整数型
参数 wp, 整数型
参数 lp, 整数型
局部变量 val, PDEV_BROADCAST_VOLUME
局部变量 i, 整数型
局部变量 mask, 整数型
判断开始 (msg = 537)
判断开始 (wp = #DBT_DEVICERARRIVAL) ' 插入设备
复制结构体 (val, lp, 14)
如果真 (valdbcv_devicetype = #DBT_DEVTYP_VOLUME)
mask = valdbcv_unitmask
变量循环首 (0, 25, 1, i)
如果真 (位与 (mask, 1) = 1)
跳出循环 ()
如果真结束
mask = 右移 (mask, 1)
变量循环尾 ()
编辑框1加入文本 (“USB磁盘被插入,盘符:” + 字符 (65 + i) + #换行符)
检测 (字符 (65 + i))
如果真结束
判断 (wp = #DBT_DEVICEREMOVECOMPLETE) ' 删除设备
复制结构体 (val, lp, 14)
如果真 (valdbcv_devicetype = #DBT_DEVTYP_VOLUME)
mask = valdbcv_unitmask
变量循环首 (0, 25, 1, i)
如果真 (位与 (mask, 1) = 1)
跳出循环 ()
如果真结束
mask = 右移 (mask, 1)
变量循环尾 ()
编辑框1加入文本 (“USB磁盘被拔除,盘符:” + 字符 (65 + i) + #换行符)
如果真结束
默认
判断结束
默认
判断结束
返回 (CallWindowProc (a, hwnd, msg, wp, lp))
子程序 __启动窗口_将被销毁
a = SetWindowLong (_启动窗口取窗口句柄 (), -4, a)
子程序 检测
参数 盘符, 文本型
局部变量 fn, 文本型
fn = 寻找文件 (盘符 + “:\”, )
编辑框2内容 = “”
判断循环首 (fn ≠ “”)
编辑框2加入文本 (fn + #换行符)
fn = 寻找文件 (, )
判断循环尾 ()
≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈自定义类型≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈
数据类型 PDEV_BROADCAST_VOLUME
成员 dbcv_size, 整数型, , , 14
成员 dbcv_devicetype, 整数型
成员 dbcv_reserved, 整数型
成员 dbcv_unitmask, 整数型
成员 dbcv_flags, 短整数型
数据类型 _DEV_BROADCAST_HDR
成员 dbch_size, 整数型
成员 dbch_devicetype, 整数型
成员 dbch_reserved, 整数型
≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈常量≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈≈
常量 WM_DEVICECHANGE, "537", , 驱动盘符被改变
常量 DBT_DEVICEREMOVECOMPLETE, "32772"
常量 DBT_DEVICERARRIVAL, "32768"
常量 DBT_DEVTYP_OEM, "0"
常量 DBT_DEVTYP_DEVNODE, "1"
常量 DBT_DEVTYP_VOLUME, "2"
常量 DBT_DEVTYP_PORT, "3"
常量 DBT_DEVTYP_N, "4"
可以
在程序集里加个子程序指针变量数组
子程序指针变量数组[1]=&子程序1
子程序指针变量数组[2]=&子程序2
在子夹被单击里写
调用子程序(子程序指针变量数组[子夹索引+1])
以上就是关于易语言暂停多个进程全部的内容,包括:易语言暂停多个进程、易语言如何获取手机是否插入电脑 还有拔出、易语言选择夹能不能实现,鼠标单击第一个子夹执行子程序一,单击第二个子夹执行子程序二等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)