GETOBJECTOPTIONS
/// <summary>
/// 获取对象的选项
/// </summary>
public enum GETOBJECTOPTIONS
{
/// <summary>
/// 选举事务处得到obj没有接口
/// </summary>
REO_GETOBJ_NO_INTERFACES = 0x00000000, /// <summary>
/// 选举事务处得到的obj poleobj
/// </summary>
REO_GETOBJ_POLEOBJ = 0x00000001, /// <summary>
/// 研究
/// </summary>
REO_GETOBJ_PSTG = 0x00000002, /// <summary>
/// 选举事务处得到的obj polesite
/// </summary>
REO_GETOBJ_POLESITE = 0x00000004, /// <summary>
/// 选举事务处得到的obj所有的接口
/// </summary>
REO_GETOBJ_ALL_INTERFACES = 0x00000007,
}
/// <summary>
/// 如需向CRichEditCtrl里面插入Ole对象,
/// /需要调用 GetIRichEditOle 获得此CRichEditCtrl的IRichEditOle接口
/// </summary>
[ComImport,
InterfaceType(ComInterfaceType.InterfaceIsIUnknown),
Guid("00020D00-0000-0000-c000-000000000046")]
public interface IRichEditOle
{
// 接口下面几个重要的方法
// InsertObject:插入一个对象到CRichEditCtrl
// GetObject:返回一个CRichEditCtrl里面的REOBJECT对象
// ImportDataObject: 导入一个剪切板对象并替换当前选中内容
// GetClientSite:返回IOleClientSite接口用于创建新的对象。
// GetClipboardData:返回一个Clipboard对象。 /// <summary>
/// 返回 IOleClientSite 接口用于创建新的对象。
/// </summary>
/// <param name="site"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int GetClientSite(out IOleClientSite site); [return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int GetObjectCount(); [return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int GetLinkCount(); /// <summary>
/// 返回一个CRichEditCtrl里面的REOBJECT对象
/// </summary>
/// <param name="iob"></param>
/// <param name="lpreobject"></param>
/// <param name="flags"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int GetObject(int iob, [In, Out] REOBJECT lpreobject, [MarshalAs(UnmanagedType.U4)] GETOBJECTOPTIONS flags); /// <summary>
/// 插入一个对象到 CRichEditCtrl
/// </summary>
/// <param name="lpreobject"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int InsertObject(REOBJECT lpreobject);
/// <summary>
/// 转换对象
/// </summary>
/// <param name="iob"></param>
/// <param name="rclsidNew"></param>
/// <param name="lpstrUserTypeNew"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int ConvertObject(int iob, Guid rclsidNew, string lpstrUserTypeNew); /// <summary>
/// 激活
/// </summary>
/// <param name="rclsid"></param>
/// <param name="rclsidAs"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int ActivateAs(Guid rclsid, Guid rclsidAs); /// <summary>
/// 设置主机名
/// </summary>
/// <param name="lpstrContainerApp"></param>
/// <param name="lpstrContainerObj"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int SetHostNames(string lpstrContainerApp, string lpstrContainerObj); /// <summary>
/// 设置链接可用
/// </summary>
/// <param name="iob"></param>
/// <param name="fAvailable"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int SetLinkAvailable(int iob, bool fAvailable);
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int SetDvaspect(int iob, uint dvaspect);
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int HandsOffStorage(int iob); /// <summary>
/// 保存完毕
/// </summary>
/// <param name="iob"></param>
/// <param name="lpstg"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int SaveCompleted(int iob, IStorage lpstg); /// <summary>
/// 在关闭
/// </summary>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int InPlaceDeactivate(); /// <summary>
/// 上下文相关的帮助
/// </summary>
/// <param name="fEnterMode"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int ContextSensitiveHelp(bool fEnterMode); /// <summary>
/// 获取剪贴板数据 返回一个 Clipboard 对象
/// </summary>
/// <param name="lpchrg"></param>
/// <param name="reco"></param>
/// <param name="lplpdataobj"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int GetClipboardData([In, Out] ref CHARRANGE lpchrg, [MarshalAs(UnmanagedType.U4)] GETCLIPBOARDDATAFLAGS reco, out IDataObject lplpdataobj); /// <summary>
/// 导入数据对象 导入一个剪切板对象并替换当前选中内容
/// </summary>
/// <param name="lpdataobj"></param>
/// <param name="cf"></param>
/// <param name="hMetaPict"></param>
/// <returns></returns>
[return: MarshalAs(UnmanagedType.I4)]
[PreserveSig]
int ImportDataObject(IDataObject lpdataobj, int cf, IntPtr hMetaPict);
}
GETOBJECTOPTIONS的更多相关文章
- ChatRichTextBox : RichTextBox
using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; using ...
随机推荐
- silverlight中Combox绑定数据以及动态绑定默认选定项的用法
在Sliverlight中,经常要用到下拉框Combox,然而Combox的数据绑定却是一件令初学者很头疼的事情.今天就来总结一下下拉框的使用方法: 下面写一个简单的例子吧.先写一个日期的Model, ...
- Macaca-iOS入门那些事2
Macaca-iOS入门那些事2 一. 前言 上文<Macaca-iOS入门那些事>讲到Macaca环境部署及运行了第一个案例,本文将讲解其案例编写. 二. 测试案例解析 iOS案例:ma ...
- 每天一个linux命令(55):traceroute命令
通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径.当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不 ...
- jQuery监听文本框值改变触发事件(propertychange)
完整代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...
- Jasmine入门(上)
什么是Jasmine Jasmine是一个Javascript的BDD(Behavior-Driven Development)测试框架,不依赖任何其他框架. 如何使用Jasmine 从Github上 ...
- Enterprise Solution 开发框架功能点
1. 通用查询模块,可以通过关联数据库表,存储过程或程序代码开发查询,多个查询之间也可构成主从关联查询. 2. 业务异常处理 支持统一的异常处理. 3. 内置一个简单的SQL Server查询分析器, ...
- 深入理解PHP内核(五)函数的内部结构
php的函数包括用户定义的函数.内部函数(print_r count...).匿名函数.变量函数($func = 'print_r'; $func(array('a','b'));) PHP内核源码中 ...
- 深入理解CSS中的长度单位
前面的话 本文分为绝对长度单位和相对长度单位来介绍CSS中的长度单位的主要知识 绝对长度单位 绝对长度单位代表一个物理测量 像素px(pixels) 在web上,像素px是典型的度量单位,很多其他长度 ...
- ASP.NET 5中的那些K
ASP.NET 5最大的变化是什么?首当其冲的就是多了很多K,K表示的是ASP.NET vNext的项目代号“Project K”,但很容易让人想到一个汉字——“坑”,希望K不要成为“坑”的缩写. K ...
- java.lang.Long cannot be cast to java.lang.Integer解决办法
情景: mybatis连接oracle 报错: 测试增的时候,报错 Java.lang.Long cannot be cast to java.lang.Integer:删改没有报错. 排查过程: ...