提供一个在逻辑上与更复杂的结构等效的标准 FORMATETC 结构。使用此方法来确定两个不同 FORMATETC 结构是否返回相同的数据,不再需要对复制呈现。
命名空间: Microsoft.VisualStudio.Data.Framework
程序集: Microsoft.VisualStudio.Data.Framework(在 Microsoft.VisualStudio.Data.Framework.dll 中)
语法
声明
Private Function GetCanonicalFormatEtc ( _
pformatectIn As FORMATETC(), _
pformatetcOut As FORMATETC() _
) As Integer Implements IDataObject.GetCanonicalFormatEtc
int IDataObject.GetCanonicalFormatEtc(
FORMATETC[] pformatectIn,
FORMATETC[] pformatetcOut
)
private:
virtual int GetCanonicalFormatEtc(
array<FORMATETC>^ pformatectIn,
array<FORMATETC>^ pformatetcOut
) sealed = IDataObject::GetCanonicalFormatEtc
private abstract GetCanonicalFormatEtc :
pformatectIn:FORMATETC[] *
pformatetcOut:FORMATETC[] -> int
private override GetCanonicalFormatEtc :
pformatectIn:FORMATETC[] *
pformatetcOut:FORMATETC[] -> int
JScript 不支持显式接口实现。
参数
- pformatectIn
类型:array<Microsoft.VisualStudio.OLE.Interop.FORMATETC[]
为 FORMATETC 结构的引用,通过引用,定义布局,即,并且,目标设备调用方希望使用检索中的数据对的调用,如 IDataObject.GetData。在此情况下,tymed 成员并无意义,应将其忽略。
- pformatetcOut
类型:array<Microsoft.VisualStudio.OLE.Interop.FORMATETC[]
此方法返回时,包含指向 FORMATETC 结构的指针(该结构中包含可能用于特定呈现的最常规信息),使其规范地等效于 pformatectIn。调用方必须分配此结构,并且 GetCanonicalFormatEtc 方法必须填充数据。除非所提供的值是 nullnull 引用(在 Visual Basic 中为 Nothing),若要检索中的数据对的调用,如 IDataObject.GetData,调用方使用 pformatetcOut中提供的值。如果方法返回 DATA_S_SAMEFORMATETC,此值为null。在此情况下,tymed 成员并无意义,应将其忽略。该参数未经初始化即被传递。
返回值
类型:System.Int32
此方法支持该条件返回值 E_INVALIDARG、 E_FAIL、 E_UNEXPECTED和 E_OUTOFMEMORY,以及示:
值 |
说明 |
---|---|
S_OK |
返回的FORMATETC结构与传递的一个不同。 |
DATA_S_SAMEFORMATETC |
FORMATETC的结构相同,并且空在 pformatetcOut 参数引用返回。 |
DV_E_LINDEX |
lindex 有一个无效值;当前,只支持 -1。 |
DV_E_FORMATETC |
pformatectIn 参数有一个无效值。 |
OLE_E_NOTRUNNING |
应用程序未运行。 |
实现
IDataObject.GetCanonicalFormatEtc(array<FORMATETC[], array<FORMATETC[])
备注
如果剪贴板对象包装现有 IDataObject (从 Microsoft.VisualStudio.OLE.Interop 命名空间),此方法委托传递给相应的 GetCanonicalFormatEtc 的调用来自该命名空间。否则,但是,如果剪贴板对象可以包装现有 IDataObject,它尝试将调用为从 System.Runtime.InteropServices.ComTypes 命名空间的 GetCanonicalFormatEtc。
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。