getConvertStg 函数 (coml2api.h)

GetConvertStg 函数返回指定存储对象的转换位的当前值。

语法

HRESULT GetConvertStg(
  [in] LPSTORAGE pStg
);

参数

[in] pStg

指向要从中检索转换位的存储对象的 IStorage 指针。

返回值

IStorage::OpenStreamIStorage::OpenStorageISequentialStream::读取 存储和流访问错误。

注解

GetConvertStg 函数由支持将对象从一种格式转换为另一种格式的对象服务器调用。 服务器必须能够使用其上一个类标识符的格式读取存储对象, (CLSID) 并使用其新 CLSID 的格式写入对象,以支持对象的转换。 例如,一个应用程序创建的电子表格可以转换为其他应用程序使用的格式。

转换位是通过调用 SetConvertStg 函数设置的。 容器应用程序可以根据最终用户的请求调用此函数,或者安装程序可以在安装新版本的应用程序时调用它。 最终用户通过“ 转换为 ”对话框请求转换对象。 转换对象时,新的 CLSID 将永久分配给该对象,因此该对象随后与新的 CLSID 相关联。

然后,当对象激活时,其服务器会调用 GetConvertStg 函数,以从存储对象中检索转换位的值。 如果设置了位,则对象的 CLSID 已更改,服务器必须读取旧格式并为存储对象写入新格式。

检索位值后,对象应用程序应通过调用 SetConvertStg 函数将其 fConvert 参数设置为 FALSE 来清除转换位。

要求

要求
最低受支持的客户端 Windows 2000 专业版 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows 2000 Server [桌面应用 |UWP 应用]
目标平台 Windows
标头 coml2api.h (包括 Ole2.h)
Library Ole32.lib
DLL Ole32.dll

另请参阅

SetConvertStg