Symbian 使用CEComFilter捕获系统HTTP请求
2010-07-21 04:24:00 来源:WEB开发网37 }
38 39 void CFelixHttpFilter::MHFRunL(RHTTPTransaction aTransaction, const THTTPEvent& aEvent)
40 {
41 if (aEvent == THTTPEvent::ESubmit)
42 {
43 // 在此处拦截到请求的Url44 const TDesC8& url = aTransaction.Request().URI().UriDes();
45 TBuf
46 url16.Copy(url);
47
48 // 效果:将url打印到屏幕上49 CEikonEnv::Static()->InfoWinL(url16, KNullDesC16);
50 }
51 }
52 53 const TImplementationProxy kImplementationTable[]=54 {
55 IMPLEMENTATION_PROXY_ENTRY(0xA00133E9,CFelixHttpFilter::NewL)
56 };
57 58 EXPORT_C const TImplementationProxy*ImplementationGroupProxy(TInt& aTableCount)
59 {
60 aTableCount = sizeof(kImplementationTable) /sizeof(TImplementationProxy);
61 return kImplementationTable;
62 }
63
注意,代码第55行中的0xA00133E9是我们ECOM实现的implementation_uid。
3、我们的程序UID3为0xA00133E8,ECOM资源文件名:A00133E8.rss,内容如下:
1 RESOURCE REGISTRY_INFO filterinfo
2 {
3 dll_uid = _UID3;
4 interfaces= 5 {
6 INTERFACE_INFO
7 {
8 interface_uid = 0x101F446D;
9 implementations =
10 {
11 IMPLEMENTATION_INFO
12 {
13 implementation_uid = 0xA00133E9;
14 version_no = 1;
15 display_name = "Felix Filter";
16 default_data = "HTTP/+FELIXFILTER";
17 opaque_data = "";
18 }
19 };
20 }
21 };
22 }
23
以上资源文件第16行,default_data的作用:
HTTP监视器能够“主动的”加载或者“被动的”加载,这取决于你资源文件中IMPLEMENTATION_INFO小节中的“default_data”字段(以上代码第16行)所设定的值,有如下三个加载选项被支持:
Tags:Symbian 使用 CEComFilter
编辑录入:coldstar [复制链接] [打 印]更多精彩
赞助商链接