「WMI」-WMI-For-C COM-调用方法


           Win32 Provider仅仅提供类实例信息Provider会提供方法供户调调方法流程:
    1) 取Provider实例象
            调IWbemServicesGetObject方法取想调Provider类型实例IWbemClassObject 类型指针返回
        BSTR MethodName  SysAllocString(LCreate)
        BSTR ClassName  SysAllocString(LWin32_Process)
        IWbemClassObject* pClass  NULL
        hres  pSvc>GetObject(ClassName 0 NULL &pClass NULL)
    2)取Provider提供方法参数
            调IWbemClassObjectGetMethod方法取想调方法参数IWbemClassObject类型指针返 回
        IWbemClassObject* pInParamsDefinition  NULL
        hres  pClass>GetMethod(MethodName 0 
            &pInParamsDefinition NULL)
    3)生成Provider提供方法参数象
            调IWbemClassObjectSpawnInstance方法生成调方法参数实例需第二步参数类型指针调 SpawnInstance方法传递该方法IWbemClassObject指针作生成参数象指针
        IWbemClassObject* pClassInstance  NULL
        hres  pInParamsDefinition>SpawnInstance(0 &pClassInstance)
    4)设置参数象属性
            调IWbemClassObjectPut方法设置参数象类型
        VARIANT varCommand
        varCommandvt  VT_BSTR
        varCommandbstrVal  Lnotepadexe
        hres  pClassInstance>Put(LCommandLine 0
            &varCommand 0)
        wprintf(LThe command is s  V_BSTR(&varCommand))
    5)调方法
            查询信息相调方法分步方式异步方式步方式等执行进程结束继续执行异步方式利实现IWbemObjectSink 接口类型创建新线程继续运行前线程新创建线程完成调方法然回调IWbemObjectSink Indicate函数处理函数返回值
            步方式调IWbemServicesExecMethod方法调Provider提供方法前生成关参数实例传该方法
        IWbemClassObject* pOutParams  NULL
        hres  pSvc>ExecMethod(ClassName MethodName 0
            NULL pClassInstance &pOutParams NULL)
            异步方式调样Provider函数步方式异步方式调IWbemServicesExecMethodAsync方法 第三参数IFlag设置WBEM_FLAG_SEND_STATUS接受调时中间状态信息没输出参数(例中pOutParams) 参数实现IWbemObjectSink接口类型
        QuerySink *pSink  new QuerySink()
        hres  pSvc>ExecMethodAsync(ClassName MethodName WBEM_FLAG_SEND_STATUS
            NULL pClassInstance pSink)
            调方法查询信息出种半步方式步方法调者线程等方法执行完异步方法需编程员继承IWbemObjectSink接 口进行线程编程半步方式种折中方法进行IWbemServices实例中方法调创建线程查询然写入 IWbemCallResult接口实例中线程查询
        IWbemCallResult *pCallRes  0
        IWbemClassObject *pObj  0
        hres  pSvc>ExecMethod(ClassName MethodName WBEM_FLAG_RETURN_IMMEDIATELY
            NULL pClassInstanceNULL &pCallRes)

        while (true)
        {
            LONG lStatus  0
            HRESULT hRes  pCallRes>GetCallStatus(5000 &lStatus)
            if ((hRes  WBEM_S_NO_ERROR))
                break
            if ((hRes  WBEM_S_TIMEDOUT))
                continue
        }

        hres  pCallRes>GetResultObject(5000 &pObj)
        if (hres)
        {
            pCallRes>Release()
            return 1
        }

        VARIANT varReturnValue
        hres  pObj>Get(_bstr_t(LReturnValue) 0 
            &varReturnValue NULL 0)

        cout << varReturnValuelVal << endl
        pCallRes>Release()
        pObj>Release()

           通WMI调方法基形式XP调方法功较少VistaWindowsroot\wmi命名空间中提供 Provider方法代驱动做事情
           较遗憾MSDN文档MS提供WMI Tool实际体现数致WmiSetBrightnessMethods类SetBrightness方法两参数样情 况uint8uint64dotNet台准备样Put进两参数hres 返回S_OK execMethod时会出现类型匹配错误较挠头~希果朋友路恰巧知道C++COM调方法留言者加 QQ十分感谢
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 10 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    「WMI」WMI-For-C COM-查询信息

    查询信息        WMI最主要的一个功能就是在WMI储备库里查询一些类和实例的信息,我们可以调用一个同步查询,也可以调用一个异步查询。        同步查询是在当前进行下执行的查询;异...

    3年前   
    408    0

    「WMI」WMI-For-C COM基础知识

    知识背景        WBEM——Web Based Enterprise Management是一种行业规范,建立了在企业网络中访问和共享管理信息的标准。        WMI——Wind...

    3年前   
    327    0

    SQL中调用ORACLE存储过程

    SQL Server 调用Oracle的存储过程 收藏 原文如下:通过SQL  Linked  Server 执行Oracle 存储过程小结1 举例我们可以通过下面的方法在SQL Server...

    1个月前   
    116    0

    空调用制冷技术课程设计

    XX 学 院 设计说明书 空调用制冷技术 设计计算书专 业 班 级 ...

    3年前   
    478    0

    聚焦问题解决 发展计算思维—《过程调用》教学案例

    聚焦问题解决 发展计算思维—《过程调用》教学案例一、教学内容分析算法与程序设计是信息技术学科的核心内容之一,是发展学生计算思维的重要载体。《过程调用》是浙江省小学信息技术五年级下册第12课,位...

    1年前   
    309    1

    调查方法及论文写作方法

    调查方法及论文写作方法调查方法及论文写作方法——课堂笔记整理时间:2009年4月17日星期五地点:工业设计系西二西205记录人:工设71 杨增耀 070120061. 调查方法1.1学生求教学...

    12年前   
    665    0

    案例方法

    企业经营战略课程中的 案例方法 清华大学经济管理学院 石永恒 ·这份电子文件具有知识产权。未经许可,不得以任何形式进行传播。 ·这份电子文件提供的信息是不完整的。...

    9年前   
    25619    0

    民法学研习方法与大型论文写作方法

    民法学研习方法与大型论文写作方法)民法学研习方法与大型论文写作方法演讲人:王泽鉴教授时间:2006年9月14日读其书知其人,知其人读其书。1960年代我在台大念书的时候,台大和德国考试的内容完...

    11年前   
    548    0

    小学语文学习方法及记忆方法大全

    小学语文有哪些好的学习方法?为什么小学生的作文水平总是提不上去?这些都是困扰孩子、老师、家长的话题,下面就为大家整理了小学语文学习方法及记忆方法大全,让我们一起来常识一下。

    2年前   
    450    0

    「招聘方法」内部选拔的方法

    内部选拔的方法人员招聘与选拔是根据工作需要,运用相关方法和技术,吸引并选择最适合人选的过程。其任务是确保企业能够获得充足的职位候选人,并能以合理的成本从职位申请人中选拔出最符合企业需要的员工。...

    11年前   
    724    0

    关于小学数学学习方法及复习方法

    关于小学数学学习方法及复习方法   小学数学学习方法  观察法  观察法,是通过观察题目中数字的变化规律及位置特点,条件与结论之间的关系,题目的结构特点及图形的特征,从而发现题目中的数量关系,...

    4年前   
    809    0

    写日记的方法

    写日记的方法写日记的方法步骤/方法1、写好一句话一年级学生学完汉语拼音后,就可以开始有意识地教给他们一些简单句式。如:“什么时候,谁在什么地方干什么”、“什么时候,什么怎么样了”、“什么时候,...

    9年前   
    571    0

    人事职责管理的方法

    人事职责管理的方法1、 员工的招聘、面试、招退工手续、试用期评估、劳动合同续订及其他异动作业;2、 员工的薪资、奖金的计算和发放;3、 负责社会保险、住房公积金、外劳力综合保险的申报和变更;4...

    2年前   
    457    0

    物资工作职责及方法

      物资工作职责及方法   物资管理始终要以严格控制材料采购价格,严格控制材料消耗,坚决把材料消耗控制到合理损耗范围之内,把材料成本降到最低作为原则;把保证物资正常供应,同时降低材料采购...

    7年前   
    3798    0

    拟办的方法

    拟办的方法  拟办的方法,应具体问题具体分析,不能千篇一律地写为:“请“秘书工作”同志批示”,应针对不同情况有区别的提出拟办意见:  (1)对上级来文的拟办,应提出要求办理、贯彻落实的具体人员...

    10年前   
    763    0

    教学评价的方法

    教学评价的方法  教学评价是依据教学目标对教学过程及结果进行价值判断并为教学决策服务的活动。  教学评价是研究教师的教和学生的学的价值 的过程。教学评价一般包括对教学过程中教师、学生、教学内容...

    10年前   
    567    0

    论文修改方法

    论文修改方法  古今作家在修改文章方面,积累了丰富的经验,值得我们在修改论文中借鉴和参考。  一、虚心征求别人的意见   在初稿完成后,请他人帮助修改的方法,是一种较好的方法。俗话说:“旁观者...

    9年前   
    788    0

    指示的写作方法

    指示的写作方法  指示的写作方法  1.指示的概念  指示是领导机关对下级机关布置工作,阐明工作活动要点及要求、步骤和方法时所使用的一种具有指导原则的下行公文。  指示具有较强的指导性、政策性...

    9年前   
    756    0

    开题报告的方法指导

    开题报告的方法指导  临近毕业了,大家的论文写好了吗,下文是开题报告的方法,希望大家有所收获!  一、如何选择问题  我一起萦绕于怀的,是在写博士论文开题报告的一年多时间里,导师薛澜教授反复追...

    9年前   
    710    0

    细则的写作方法

    细则的写作方法细则的写作方法1.细则的概念 细则是有关机关根据下发公文的规定或实施需要,为了贯彻执行某一法律、法规或其中的部分条文、个别条文, 结合实际情况,制定出具体的实施办法,或作出补充、...

    9年前   
    527    0

    文档贡献者

    奋斗不止500年

    贡献于2021-07-17

    下载需要 10 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档