COM持久存储

本文介绍了COM组件如何实现持久存储,详细解析了IPersistStream、IPersistStreamInit接口的使用,以及IStream接口在内存和复合文件中的实现。通过示例代码展示了如何在组件中实现持久化,并在客户端程序中保存和恢复组件状态。
摘要由CSDN通过智能技术生成

 

COM持久存储... 1

持久存储的一般顺序... 1

IStream接口应用... 1

使用内存中预定义的IStream接口形式----. 1

使用复合文件形式----. 2

IPersistStreamInit接口... 2

 

持久存储的一般顺序

       组件实现了IPersistStream、IPersistStorage、IPersistPropertyBag接口。这些接口都提供了Load和Save方法。这些接口统称为IPersistMedium。

       当需要保存组件的属性时------

1) 客户查询组件的IPersistMedium接口;

2) 调用IPersistMedium::GetClassID方法,然后将CLSID保存到永久介质上;

3) 调用IPersistMedium::Save方法将对象属性保存到永久介质中。

当需要恢复组建对象时------

1) 客户从介质中读取CLSID,创建组件对象

2) 查询组件实现的接口IPersistMedium

3) 调用IPersistMedium::Load方法装载对象状态

 

IPersistMedium均派生自IPersist接口,由组件实现。但是他们保存/恢复数据的方式依赖于客户传递进来的IMedi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值