首页
社区
课程
招聘
[原创]不注册使用 COM 组件
2006-10-27 13:39 11169

[原创]不注册使用 COM 组件

dummy 活跃值
23
2006-10-27 13:39
11169
下面的源码是在一个在没有注册 flash 组件的情况下,使用 flash 组件播放 flash 的例子

com_proxy.h 是关键。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

上传的附件:
收藏
点赞7
打赏
分享
最新回复 (14)
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
dummy 23 2006-10-27 13:40
2
0
flash.part2.rar
上传的附件:
雪    币: 1852
活跃值: (504)
能力值: (RANK:1010 )
在线值:
发帖
回帖
粉丝
北极星2003 25 2006-10-27 19:26
3
0
学习
雪    币: 179
活跃值: (131)
能力值: ( LV12,RANK:290 )
在线值:
发帖
回帖
粉丝
WAKU 7 2006-10-27 20:05
4
0
留名,以后用得着
雪    币: 441
活跃值: (149)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
rockhard 4 2006-10-27 23:54
5
0
最初由 WAKU 发布
留名,以后用得着


学习
雪    币: 466
活跃值: (119)
能力值: ( LV9,RANK:190 )
在线值:
发帖
回帖
粉丝
kusky 4 2006-10-29 02:05
6
0
这个东西好。研究了好长时间没有收获呢
雪    币: 223
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
lengie 2006-10-29 19:07
7
0
代码我已经收藏,先学一下

不过很是郁闷,我直接用你的release版本播放一个swf文件,出现这样的错误,是不是你的这个程序有系统要求的??我的是XP-SP2,我又VC重新编译了一下,错误依旧.



雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
dummy 23 2006-10-30 07:37
8
0
抱歉这个问题,我没有遇到过,不知道是什么原因导致的
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
chinawash 2006-10-30 11:50
9
0
的确会有七楼所说的问题,楼主做事不仔细啊
你在user权限下试试
我的系统Win2K,user权限,也出现七楼的问题!
下班回家用自己的机子再试试。
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
dummy 23 2006-10-30 12:09
10
0
哦,不好意思
雪    币: 1852
活跃值: (504)
能力值: (RANK:1010 )
在线值:
发帖
回帖
粉丝
北极星2003 25 2006-10-30 13:09
11
0
最初由 chinawash 发布
的确会有七楼所说的问题,楼主做事不仔细啊
你在user权限下试试
我的系统Win2K,user权限,也出现七楼的问题!
下班回家用自己的机子再试试。


LZ能够拿出来分享已经很好了。
况且软件有BUG是很正常的事,光凭这样一个BUG就说LZ做事不仔细,太武断了。

大家应该也都看到,最近论坛的交流氛围出现了问题,
所以这个时候在心直口快的同时,考虑下是否合适。

一点建议,请谅解!
雪    币: 466
活跃值: (119)
能力值: ( LV9,RANK:190 )
在线值:
发帖
回帖
粉丝
kusky 4 2006-11-4 19:21
12
0
楼主能索引一下实现的思路就好了
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
dummy 23 2006-11-4 19:43
13
0
实行方法就是 hook api(主要 hook 了 CoGetClassObject 之类的 api...), 过滤传递过来的 CLSID
,如果发现是自己代理的 CLSID, 那么就仿照系统的操作方式(详细可以看看 wine)

我对 COM 也不太了解,所以无法了解这种硬操作会有什么样的后果
雪    币: 150
活跃值: (116)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
乱乱 1 2006-11-15 11:00
14
0
com的dll不是导出有4个函数么
其中有个函数
STDAPI DllGetClassObject(
REFCLSID rclsid,  //CLSID for the class object
REFIID riid,//Reference to the identifier of the interface
// that communicates with the class object
LPVOID * ppv //Address of output variable that receives the
// interface pointer requested in riid
);
给他rclsid以及riid就可以创建出相应的com对象了。
所谓的注册就是给出一些信息让操作系统调用。
其实你只要load这个dll然后调用DllGetClassObject就可以得到这个对象的接口,但要自己实现套间之类的东西(也可以不管,不过会有线程问题的)
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
shiny 2007-3-25 13:05
15
0
好东西!
游客
登录 | 注册 方可回帖
返回