我需要从 C# 调用 Microsoft Office Protector (OpcIrmProtector) 的功能。这个保护器实现了I_IrmProtector
接口(详情:http: //msdn.microsoft.com/en-us/library/ms475158%28v=office.14%29.aspx)。打电话HrInit()
是没有问题的。
但是例如,HrIsProtected()
我需要提供ILockBytes
. 有没有人体验过如何ILockBytes
在托管代码中正确实现?对于这里的预期,我有点不知所措。
对于非托管代码,我找到了一个使用CreateILockBytesOnHGlobal()
. 这将返回 的非托管实例ILockBytes
。有没有机会从托管代码中使用这个非托管实例(可能不是......)或将其编组到托管结构中?或者C#有类似的方法吗?在这种情况下,我不必实施ILockBytes
,这将为我节省大量时间。
当然,我可以在非托管代码中实现这部分,但如果可能的话,我更喜欢托管代码中的解决方案......
谢谢!