设为首页 加入收藏

TOP

1.8.2 无人广角自动监控技术分析
2013-10-07 00:18:44 来源: 作者: 【 】 浏览:65
Tags:1.8.2 无人 广角 自动 监控 技术 分析

1.8.2  无人广角自动监控技术分析

在无人广角自动监控时需要使用进程,进程的创建通过CreateProcess函数来实现,CreateProcess函数通过创建一个新的进程及在其地址空间内运行的主线程来启动并运行一个新的程序。具体在执行CreateProcess函数时,首先由操作系统负责创建一个进程内核对象,初始计数为1,并立即为新进程创建一块虚拟地址空间。随后将可执行文件或其他任何必要的动态链接库文件的代码和数据装载到该地址空间中。在创建主线程时,也是首先由系统负责创建一个线程内核对象,并初始化为1。最后启动主线程并执行进程的入口函数WinMain,完成对进程和执行线程的创建。

CreateProcess函数用于创建一个新进程。

语法:

 BOOL CreateProcess(LPCTSTR lpApplicationName,LPTSTR lpCommandLine,
LPSECURITY_ATTRIBUTES lpProcessAttributes,
LPSECURITY_ATTRIBUTES lpThreadAttributes,
BOOL bInheritHandles,DWORD dwCreationFlags, LPVOID lpEnvironment,
LPCTSTR lpCurrentDirectory,LPSTARTUPINFO lpStarupInfo,
LPPROCESS_INFORMATION lpProcessInformation );

CreateProcess函数语法中各参数的说明如表1.5所示。

表1.5  CreateProcess函数语法中的参数说明

   

   

lpCommandLine< xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

命令行字符串

lpProcessAttributes

进程的安全属性

lpThreadAttributes

线程的安全属性

bInheritHandles

句柄继承标志

dwCreationFlags

创建标志,具体值参照表1.6

lpEnvironment

指向新的环境块的指针

lpCurrentDirectory

指向当前目录名的指针

lpStarupInfo

指向启动STARTUPINFO结构的指针

lpProcessInformation

指向PROCERSS_INFORMATION结构的指针

1.6  参数dwCreationFlags具体值

   

   

CREATE_DEFAULT_ERROR_MODE

指定新进程不继承父进程的错误模式,而采用自身的
默认错误模式

CREATE_NEW_CONSOLE

为新进程创建一个新的控制台窗口,如果同时设置了
ETACHED
_PROCESS标志,将会产生错误

续表

   

   

CREATE_NEW_PROCESS_GROUP

用于修改进程列表。将进程作为一个新的进程组的根进程。
此进程组包括了所有由此根进程继承的进程。新的进
程组标识与返回到pProcess_Information参数中的进程的
标识相同。进程组可以通过GenerateConsoleCtrlEvent
函数来向一组控制台进程发送Ctrl+CCtrl+Break通知

CREATE_SEPARATE_WOW_VDM

指定新的进程在自己的DOS虚拟机(VDM)上运行
(只针对在Windows NT架构操作系统下运行的16
应用程序而言)。该标志将占据过多的内存空间,
如果没有必要一般,则不使用此标志

CREATE_SHARED_WOW_VDM

指定进程使用一个公共的VDM(只针对在Windows
 NT
架构操作系统下运行的16位应用程序而言)

CREATE_SUSPENDED

导致新进程被创建,但是主线程被挂起。此时父进
程可以进行修改子进程地址空间中的内存、设置子
进程和主线程的优先级等操作。在父进程修改
子进程后,允许子进程使用ResumeThread函数来
继续执行代码

CREATE_UNICODE_ENVIRONMENT

指出子线程的环境块包含有Unicode字节

DEBUG_PROCESS

指出父进程想要调试子进程和子进程将来生成
的任何进程。被调试进程中发生的事件,将会
通知给调试程序(通常是父进程)

DEBUG_ONLY_THIS_PROCESS

DEBUG_PROCESS标志类似,但只有最接近
调试程序的子进程才会向其报告所发生的事件

DETACHED_PROCESS

用于限制子进程对父进程的访问权限


【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇1.8.3 无人广角自动监控实现过程 下一篇1.10 开发技巧与难点分析(3)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: