调用C r e a t e *函数与调用O p e n *函数之间的主要差别
2012-07-05 19:35
387 查看
按名字共享对象的另一种方法是,进程不调用C r e a t e *函数,而是调用下面显示的O p e n *函
数中的某一个:
注意,所有这些函数都拥有相同的原型。最后一个参数p s z N a m e用于指明内核对象的名字。
不能为该参数传递N U L L,必须传递以0结尾的地址。这些函数要搜索内核对象的单个名空间,
以便找出匹配的空间。如果不存在带有指定名字的内核对象,该函数返回N U L L,G e t L a s t E r r o r
返回2(E R R O R F I L E N O T F O U N D)。但是,如果存在带有指定名字的内核对象,并且它是
相同类型的对象,那么系统就要查看是否允许执行所需的访问(通过d w D e s i r e d A c c e s s参数进
行访问)。如果拥有该访问权,调用进程的句柄表就被更新,对象的使用计数被递增。如果为
b I n h e r i t H a n d l e参数传递T R U E,那么返回的句柄将是可继承的。
调用C r e a t e *函数与调用O p e n *函数之间的主要差别是,如果对象并不存在,那么C r e a t e *函
数将创建该对象,而O p e n *函数则运行失败。
数中的某一个:
注意,所有这些函数都拥有相同的原型。最后一个参数p s z N a m e用于指明内核对象的名字。
不能为该参数传递N U L L,必须传递以0结尾的地址。这些函数要搜索内核对象的单个名空间,
以便找出匹配的空间。如果不存在带有指定名字的内核对象,该函数返回N U L L,G e t L a s t E r r o r
返回2(E R R O R F I L E N O T F O U N D)。但是,如果存在带有指定名字的内核对象,并且它是
相同类型的对象,那么系统就要查看是否允许执行所需的访问(通过d w D e s i r e d A c c e s s参数进
行访问)。如果拥有该访问权,调用进程的句柄表就被更新,对象的使用计数被递增。如果为
b I n h e r i t H a n d l e参数传递T R U E,那么返回的句柄将是可继承的。
调用C r e a t e *函数与调用O p e n *函数之间的主要差别是,如果对象并不存在,那么C r e a t e *函
数将创建该对象,而O p e n *函数则运行失败。
相关文章推荐
- JavaScript 与jquery 之间不同的函数调用方式
- [初级水准]windows form与其他类函数之间的相互调用(C3673解决)
- 卓越和优秀的销售精英之间存在的11个主要差别
- 《程序员实用算法》试读:1.2.2主要的优化:函数调用
- .NET webBrowser 与 html js脚本之间的数据互传及函数调用
- 应用程序调用dll组件,及dll组件之间的关系,dll中类及函数的导入导出;dll的导出方式和链接方式分析(一)
- frameset,iframe框架之间如何互相调用变量、函数
- C++继承类和基类之间成员函数和虚函数调用机制
- MFC单文档应用程序中各个类之间相互调用的函数方法
- RTMPDump源代码分析 0: 主要函数调用分析
- js函数之间调用可以有返回值
- MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数 计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过MySql内置的函数 TimeStampDiff()
- 【OpenGL】OpenGL基本库,OpenGL实用库及OpenGL实用函数工具包之间的差别
- Html之frameset,iframe框架之间如何互相调用变量、函数-yellowcong
- react 父子组件之间的通信和函数调用
- python两个类之间变量和函数的调用
- 父类与子类之间静态函数的调用以及函数参数的传递
- RTMPDump源代码分析 0: 主要函数调用分析
- Linux内核协议栈-主要函数调用栈
- setTimeout和setInterval的一些区别(浏览器之间参数的差别,函数本身的一些差别)(1)