windows update agent api

jkluolin3000 2010-03-24 11:05:26
我是新手 急求各位大哥哥指教!我去http://msdn.microsoft.com/en-us/library/aa387286(VS.85).aspx下载了wuapi的库文件和头文件,但是我加入工程的时候把#include<wuapi.h>一个类文件(cpp文件)最前面定义没错如果放在#include "stafx.h"后面就有102个错误。另外不知道怎么调用Windows Update Agent API 里面的接口类和方法。简单的说就是不知道怎么用这个com组件比如我用IUpdateSesson se;然后CreateInstense ,然后出现错误是IUpdateSesson未定义。等等我一头雾水 谁帮我解决下 做个调用这个COM组件并调用接口方法例子包括头文件定义及其库文件引入。我QQ是125709266.邮件是jkluolin2008@126.com 急求 (注:我是新手强烈的想解决这个问题)
...全文
289 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuzl32 2010-03-25
  • 打赏
  • 举报
回复
没特别情况不要去理会#include "stafx.h",直接去掉。
#include <Wuapi.h>
#pragma comment(lib,"Wuguid.lib")
...
HRESULT hr = CoInitialize(NULL);
hr = CoCreateInstance (CLSID_UpdateSession ,NULL,CLSCTX_ALL,IID_IUpdateSession2 ,(void**)&lpSession);
...
The_facE 2010-03-25
  • 打赏
  • 举报
回复
http://msdn.microsoft.com/en-us/library/aa387292(VS.85).aspx
看这个吧,微软出的库不可能没有文档的,你看看吧,然后上网搜一个WUA学习什么的看看
The_facE 2010-03-25
  • 打赏
  • 举报
回复
你可以研究一下stdafx.h里面引入的头文件有哪个或哪些与wuapi.h冲突,一般都是重定义或预编译宏冲突。

至于接口的用法,微软的网上有说明的,不过我忘记地址了。这个东西挺复杂的,里面的接口很多,但是逻辑上理解起来不算难,前段时间弄过,最后放弃了,因为系统是盗版的,装上某些补丁会出问题,筛选补丁又非常复杂。
AlanBruce 2010-03-25
  • 打赏
  • 举报
回复
LZ你怎么???
菜鸟多少号? 2010-03-25
  • 打赏
  • 举报
回复
接分 帮你顶上去
jkluolin3000 2010-03-25
  • 打赏
  • 举报
回复
该+得库文件也加了 。dll文件不导入因为有lib会自动调用系统wuapi.dll要不然换个系统DLL就变了
对于这个COM组件用到.idl文件所以只有加入.idl文件生成的头文件才能实现实例化COM组件所以这里我先结贴了。以后再来散分
jkluolin3000 2010-03-25
  • 打赏
  • 举报
回复
#include "wuapi_h.h" 这是个idl生成的文件,然后就可以了
cattycat 2010-03-25
  • 打赏
  • 举报
回复
把那个库的目录加到vc的Tools->options->Directories中的include flie和lib flie都得加进来。
另外,你的环境还是没设对,看msdn上如何说明的。
yuzl32 2010-03-25
  • 打赏
  • 举报
回复
lpSession未定义,它是用于接收IUpdateSession2接口实例的变量。
jkluolin3000 2010-03-25
  • 打赏
  • 举报
回复
#pragma comment(lib,"wuguid.lib")
#include"wuapi.h"
#include "StdAfx.h"
#include "testclassmend.h"这是我的头文件

下面是方法
HRESULT hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_UpdateSession ,NULL,CLSCTX_ALL,IID_IUpdateSession2 ,(void**)&lpSession); 。。。
下面是错误:
e:\c++练习\testmend\testmend\testclassmend.cpp(16) : error C2065: 'CLSID_UpdateSession' : undeclared identifier
e:\c++练习\testmend\testmend\testclassmend.cpp(16) : error C2065: 'IID_IUpdateSession2' : undeclared identifier
e:\c++练习\testmend\testmend\testclassmend.cpp(16) : error C2065: 'lpSession' : undeclared identifier

然后我这样定义:
IUpdateSession sesson;
然后错误是:
e:\c++练习\testmend\testmend\testclassmend.cpp(15) : error C2065: 'IUpdateSession' : undeclared identifier
e:\c++练习\testmend\testmend\testclassmend.cpp(15) : error C2146: syntax error : missing ';' before identifier 'sesson'
到底该怎么用这个库啊 我偶看微软提供的那个网站介绍这样用差不多把但为什么有错误啊

64,635

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧