返回值是新的进程句柄的只有:打开进程()、创建进程()两个命令,创建进程()命令详解
2011-06-15 12:53
281 查看
返回值是新的进程句柄的只有:打开进程()、创建进程()两个命令。
创建进程()命令详解。
.子程序 进程_创建进程, 逻辑型, 公开, 创建运行一个新程序进程.注.若不提供 进程信息 参数时会自动关闭句柄,若提供该参数可获得进程与线程句柄,供后续内存操作方面等使用
.参数 程序文件, 文本型, , 指定一个程序的全路径名和启动参数 如 "c:\xxx\abc\a.exe" "c:\xxx\abc\a.exe -k -b -c"
.参数 运行目录, 文本型, 可空, 指定该进程的运行环境目录 如 "c:\xxx\abc\" "c:\xxx\" 若空默认为EXE文件所在的目录
.参数 隐藏窗口, 逻辑型, 可空, 如果有窗口的话,可以设定是否要隐藏.但若目标进程忽略此参数的话,那么隐藏窗口就会无效.
.参数 自动挂起, 逻辑型, 可空, 设定进程被创建后执行指令之前就暂停下来,若挂起进程,需要使用恢复线程或恢复进程来恢复运行
.参数 进程信息, 进程信息, 参考 可空, 返回被创建的进程ID,线程ID,进程句柄,线程句柄.若不用这些句柄时,需要自行关闭.
//数据类型为进程信息,这是一个结构体。可以通过诸如: 进程信息.进程ID 的方式获得进程的具体信息
.参数 注入DLL, 文本型, 可空, 可以在创建进程的时候同时注入DLL文件,该DLL接口与 安装线程DLL() 的接口一样
.参数 父进程句柄, 整数型, 可空, 可以指定将要被创建的进程的父进程句柄,默认为当前进程
-----------------------------------------------------------------------------------------------------------
.版本 2
.程序集 窗口程序集1
.子程序 __启动窗口_创建完毕
模块注册 ()
_启动窗口.标题 = “自进程ID=” + 到文本 (取自进程ID ()) + “ 主线程ID=” + 到文本 (取进程主线程 (-1))
.子程序 _按钮1_被单击
.局部变量 进程信息, 进程信息
编辑框2.内容 = “”
编辑框1.内容 = 扩展路径 (编辑框1.内容)
' 运行() 进程_运行程序 () 创建进程() 进程_创建进程()
' 创建进程的参数一为 程序文件的完整路径 支持命令行方式
' 参数二可以指定新进程的运行目录,不然新进程将继承我们进程的目录作为运行目录
.如果真 (创建进程 (编辑框1.内容, , , , 进程信息))
编辑框2.加入文本 (“进程信息.进程ID=” + 到文本 (进程信息.进程ID) + #换行符)
编辑框2.加入文本 (“进程信息.线程ID=” + 到文本 (进程信息.线程ID) + #换行符)
编辑框2.加入文本 (“进程信息.进程句柄=” + 到文本 (进程信息.进程句柄) + #换行符)
编辑框2.加入文本 (“进程信息.线程句柄=” + 到文本 (进程信息.线程句柄) + #换行符)
' 若不填 进程信息 则不会得到进程与线程的ID和句柄,当然也不必再写关闭句柄
' 填了 进程信息 这个参数就会得到进程句柄与线程句柄,若后继需要用到,可以保存到程序集或全局变量里
关闭句柄 (进程信息.进程句柄) ' 当不再使用这些句柄了要及时关闭掉
关闭句柄 (进程信息.线程句柄) ' 当不再使用这些句柄了要及时关闭掉
.如果真结束
创建进程()命令详解。
.子程序 进程_创建进程, 逻辑型, 公开, 创建运行一个新程序进程.注.若不提供 进程信息 参数时会自动关闭句柄,若提供该参数可获得进程与线程句柄,供后续内存操作方面等使用
.参数 程序文件, 文本型, , 指定一个程序的全路径名和启动参数 如 "c:\xxx\abc\a.exe" "c:\xxx\abc\a.exe -k -b -c"
.参数 运行目录, 文本型, 可空, 指定该进程的运行环境目录 如 "c:\xxx\abc\" "c:\xxx\" 若空默认为EXE文件所在的目录
.参数 隐藏窗口, 逻辑型, 可空, 如果有窗口的话,可以设定是否要隐藏.但若目标进程忽略此参数的话,那么隐藏窗口就会无效.
.参数 自动挂起, 逻辑型, 可空, 设定进程被创建后执行指令之前就暂停下来,若挂起进程,需要使用恢复线程或恢复进程来恢复运行
.参数 进程信息, 进程信息, 参考 可空, 返回被创建的进程ID,线程ID,进程句柄,线程句柄.若不用这些句柄时,需要自行关闭.
//数据类型为进程信息,这是一个结构体。可以通过诸如: 进程信息.进程ID 的方式获得进程的具体信息
.参数 注入DLL, 文本型, 可空, 可以在创建进程的时候同时注入DLL文件,该DLL接口与 安装线程DLL() 的接口一样
.参数 父进程句柄, 整数型, 可空, 可以指定将要被创建的进程的父进程句柄,默认为当前进程
-----------------------------------------------------------------------------------------------------------
.版本 2
.程序集 窗口程序集1
.子程序 __启动窗口_创建完毕
模块注册 ()
_启动窗口.标题 = “自进程ID=” + 到文本 (取自进程ID ()) + “ 主线程ID=” + 到文本 (取进程主线程 (-1))
.子程序 _按钮1_被单击
.局部变量 进程信息, 进程信息
编辑框2.内容 = “”
编辑框1.内容 = 扩展路径 (编辑框1.内容)
' 运行() 进程_运行程序 () 创建进程() 进程_创建进程()
' 创建进程的参数一为 程序文件的完整路径 支持命令行方式
' 参数二可以指定新进程的运行目录,不然新进程将继承我们进程的目录作为运行目录
.如果真 (创建进程 (编辑框1.内容, , , , 进程信息))
编辑框2.加入文本 (“进程信息.进程ID=” + 到文本 (进程信息.进程ID) + #换行符)
编辑框2.加入文本 (“进程信息.线程ID=” + 到文本 (进程信息.线程ID) + #换行符)
编辑框2.加入文本 (“进程信息.进程句柄=” + 到文本 (进程信息.进程句柄) + #换行符)
编辑框2.加入文本 (“进程信息.线程句柄=” + 到文本 (进程信息.线程句柄) + #换行符)
' 若不填 进程信息 则不会得到进程与线程的ID和句柄,当然也不必再写关闭句柄
' 填了 进程信息 这个参数就会得到进程句柄与线程句柄,若后继需要用到,可以保存到程序集或全局变量里
关闭句柄 (进程信息.进程句柄) ' 当不再使用这些句柄了要及时关闭掉
关闭句柄 (进程信息.线程句柄) ' 当不再使用这些句柄了要及时关闭掉
.如果真结束
相关文章推荐
- 小实验:用创建进程()打开计算器,然后关闭进程句柄。再用打开进程(进程ID),使用两次,得到两个进程句柄。实验目的:这两个进程句柄都能控制这个进程吗?通过该试验加深对句柄的理解!!
- WindowsAPI详解——OpenProcess 打开|获得进程句柄 - [VC++编程]
- 搜索Linux系统所有进程打开(文件)句柄的命令
- WindowAPI 详解--OpenProcess打开获得进程句柄
- 用linux命令和程序实际测试一下单进程能打开的最大的句柄数(也可以说是文件数)------并不一定是1024/2048哈
- linux lsof 命令参数详解(查看进程打开的文件)
- ★实验 8-2 1. 创建两个守候进程。每个守候进程各自创建独立的日志文件。 2. 每隔 1s 向日志文件中写入如下信息: a) 守候进程 1:未使用的内存大小(MemFree) b) 守
- mke2fs命令_Linux mke2fs 命令用法详解:创建磁盘分区上的“etc2/etc3”文件系统
- 进程的页表创建详解
- wait命令_Linux wait 命令用法详解:等待进程执行完后返回
- useradd命令_Linux useradd 命令用法详解:创建的新的系统用户
- squid命令_Linux squid 命令用法详解:squid服务器守护进程
- linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)
- 【WM】如何判断两个窗口是否由同一进程创建
- linux命令大全之ps命令详解(查看进程结果)
- Ubuntu 关机、重启、注销 命令 只有命令 没有详解
- Linux查看和结束进程命令详解
- 利用node.js如何创建子进程详解
- C语言父子进程--子进程的创建与带参返回值捕捉
- 线程练习一: 创建两个进程,和主线程交替运行