Win32 API 日本語リファレンス
ホームStorage.Xps › IXpsOMObjectFactory1

IXpsOMObjectFactory1

COM
IID0a91b617-d612-4181-bf7c-be5824e9cc8f継承元IXpsOMObjectFactory自前メソッド開始 vtbl40

公式ドキュメント

IXpsOMObjectFactory を継承します。

解説(Remarks)

関連情報

基底インターフェースは Windows 7 SDK で定義され、ドキュメント化されています。

IXpsOMObjectFactory インターフェース

メソッド 12

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 40 HRESULT GetDocumentTypeFromFile(LPWSTR filename, XPS_DOCUMENT_TYPE* documentType)

指定されたファイルに格納されている XPS ドキュメントの種類を検出します。

filenameLPWSTRin[in] 種類を取得する対象の XPS ファイルの名前。
documentTypeXPS_DOCUMENT_TYPE*out[out, retval] ドキュメントの種類。

戻り値

戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: ドキュメントの種類は XPS_DOCUMENT_TYPE_ XPS または XPS_DOCUMENT_TYPE_ OPENXPS です。

解説(Remarks)

このメソッドは、ドキュメントの種類を検出するのに必要な範囲でのみデータを解析します。コンテンツの検証は行いません。したがって、戻り値が S_OK であっても、そのファイルに有効なドキュメントが含まれていることを意味するわけではありません。

vtbl 41 HRESULT GetDocumentTypeFromStream(IStream* xpsDocumentStream, XPS_DOCUMENT_TYPE* documentType)

指定されたストリームに格納されている XPS ドキュメントの種類を検出します。

xpsDocumentStreamIStream*in[in] XPS OM データを含むストリーム。ストリームは順次読み取りをサポートしている必要があり、ストリームの読み取り位置は XPS データの先頭に設定されている必要があります。
documentTypeXPS_DOCUMENT_TYPE*out[out, retval] ストリーム内で見つかった XPS データのドキュメントの種類。

戻り値

戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: ドキュメントの種類は XPS_DOCUMENT_TYPE_ XPS または XPS_DOCUMENT_TYPE_ OPENXPS です。

解説(Remarks)

このメソッドは、ドキュメントの種類を検出するのに必要な範囲でのみデータを解析します。コンテンツの検証は行いません。したがって、戻り値が S_OK であっても、そのストリームに有効なドキュメントが含まれていることを意味するわけではありません。

vtbl 42 HRESULT ConvertHDPhotoToJpegXR(IXpsOMImageResource* imageResource)

イメージリソースを HD Photo から JpegXR に変換します。

imageResourceIXpsOMImageResource*in

[in, out] 変換するイメージリソース。

メソッドから戻ると、変換後のイメージリソースが格納されます。

戻り値

戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功しました。

XPS_E_INVALID_CONTENT_TYPE: イメージの種類が XPS_IMAGE_TYPE_WDP ではありません。

E_INVALIDARG: イメージリソースが WDP デコーダーで認識されないか、その他の一般的なエラーが発生しました。

解説(Remarks)

imageResource が参照するイメージは、XPS_IMAGE_TYPE_WDP イメージ型から XPS_IMAGE_TYPE_JPEGXR イメージ型に変更されます。このメソッドはイメージリソースのデータストリームを変換しますが、リソースのパート名は変更されません。

vtbl 43 HRESULT ConvertJpegXRToHDPhoto(IXpsOMImageResource* imageResource)

イメージリソースを JpegXR から HD Photo に変換します。

imageResourceIXpsOMImageResource*in

[in, out] 変換するイメージリソース。

メソッドから戻ると、変換後のイメージリソースが格納されます。

戻り値

戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功しました。

XPS_E_INVALID_CONTENT_TYPE: イメージの種類が XPS_IMAGE_TYPE_JXR ではありません。

データが WDP デコーダーで認識されない場合、またはその他のエラーが発生した場合は E_INVALIDARG

解説(Remarks)

imageResource が参照するイメージは、XPS_IMAGE_TYPE_JPEGXR イメージ型から XPS_IMAGE_TYPE_WDP イメージ型に変更されます。このメソッドはイメージリソースのデータストリームを変換しますが、リソースのパート名は変更されません。

vtbl 44 HRESULT CreatePackageWriterOnFile1(LPWSTR fileName, SECURITY_ATTRIBUTES* securityAttributes, DWORD flagsAndAttributes, BOOL optimizeMarkupSize, XPS_INTERLEAVING interleaving, IOpcPartUri* documentSequencePartName, IXpsOMCoreProperties* coreProperties, IXpsOMImageResource* packageThumbnail, IXpsOMPrintTicketResource* documentSequencePrintTicket, IOpcPartUri* discardControlPartName, XPS_DOCUMENT_TYPE documentType, IXpsOMPackageWriter** packageWriter)

XPS OM の内容を指定された種類の XPS パッケージに書き込むためのファイルを開きます。このメソッドは、MSXPS ドキュメントまたは OpenXPS ドキュメントのいずれかに対応するパッケージライターを生成します。

fileNameLPWSTRin[in] 作成するファイルの名前。
securityAttributesSECURITY_ATTRIBUTES*in

[in, unique] SECURITY_ATTRIBUTES 構造体。次の 2 つの独立した、しかし関連するメンバーを含みます。

  • lpSecurityDescriptor: 省略可能なセキュリティ記述子
  • bInheritHandle: 返されるハンドルを子プロセスが継承できるかどうかを決定するブール値
lpSecurityDescriptorNULL の場合、返されるハンドルに関連付けられたファイルまたはデバイスには既定のセキュリティ記述子が割り当てられます。

securityAttributes の詳細については、CreateFile を参照してください。

flagsAndAttributesDWORDin

[in] 作成するファイルの設定と属性を指定します。ほとんどのファイルでは FILE_ATTRIBUTE_NORMAL の値を使用できます。

このパラメーターの詳細については、CreateFile を参照してください。

optimizeMarkupSizeBOOLin

[in] XPS OM の内容を XPS パッケージに書き込む際に、ドキュメントのマークアップをサイズの面で最適化するかどうかを示すブール値。

意味
TRUE
パッケージライターは、マークアップのサイズが最小になるように最適化を試みます。
FALSE
パッケージライターは最適化を行いません。
interleavingXPS_INTERLEAVINGin[in] XPS OM の内容をファイルに書き込む際にインターリーブするかどうかを指定します。
documentSequencePartNameIOpcPartUri*in[in] 新しいファイル内のドキュメントシーケンスのパート名を含む IOpcPartUri インターフェース。
corePropertiesIXpsOMCoreProperties*in[in] 新しいファイルに設定するコアドキュメントプロパティを含む IXpsOMCoreProperties インターフェース。このパラメーターには NULL を設定できます。
packageThumbnailIXpsOMImageResource*in[in] 新しいファイルに割り当てるサムネイル画像を含む IXpsOMImageResource インターフェース。このパラメーターには NULL を設定できます。
documentSequencePrintTicketIXpsOMPrintTicketResource*in[in] 新しいファイルに割り当てるパッケージレベルのプリントチケットを含む IXpsOMPrintTicketResource インターフェース。このパラメーターには NULL を設定できます。
discardControlPartNameIOpcPartUri*in[in] 破棄制御パートの名前を含む IOpcPartUri インターフェース。このパラメーターには NULL を設定できます。
documentTypeXPS_DOCUMENT_TYPEin[in] パッケージライターのドキュメントの種類を指定します。このパラメーターに XPS_DOCUMENT_TYPE_UNSPECIFIED を指定することはできません。
packageWriterIXpsOMPackageWriter**out[out, retval] このメソッドによって作成された新しい IXpsOMPackageWriter インターフェースへのポインター。

戻り値

戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功し、packageWriter が正しく設定されました。

E_INVALIDARG: ドキュメントの種類が有効な XPS ドキュメント形式ではありませんでした。

解説(Remarks)

MSXPS ドキュメントまたは OpenXPS ドキュメントのいずれかに対応するパッケージライターを生成するには、このメソッドを使用します。Windows 7 でリリースされた CreatePackageWriterOnFile は、MSXPS 形式の XPS ドキュメントファイルしか作成できません。

関連情報

関連情報: 従来のメソッドの説明
vtbl 45 HRESULT CreatePackageWriterOnStream1(ISequentialStream* outputStream, BOOL optimizeMarkupSize, XPS_INTERLEAVING interleaving, IOpcPartUri* documentSequencePartName, IXpsOMCoreProperties* coreProperties, IXpsOMImageResource* packageThumbnail, IXpsOMPrintTicketResource* documentSequencePrintTicket, IOpcPartUri* discardControlPartName, XPS_DOCUMENT_TYPE documentType, IXpsOMPackageWriter** packageWriter)

XPS OM の内容を指定された種類の XPS パッケージに書き込むためのストリームを開きます。

outputStreamISequentialStream*in[in] 書き込みに使用するストリーム。
optimizeMarkupSizeBOOLin

ドキュメントをストリームに書き込む際に、ドキュメントのマークアップをサイズの面で最適化するかどうかを示すブール値。

意味
TRUE
ストリームへの書き込み時に、パッケージライターはマークアップのサイズが最小になるように最適化を試みます。
FALSE
パッケージへの書き込み時に、パッケージライターは最適化を行いません。
interleavingXPS_INTERLEAVINGin[in] XPS OM の内容をストリームに書き込む際にインターリーブするかどうかを指定します。
documentSequencePartNameIOpcPartUri*in[in] 新しいファイル内のドキュメントシーケンスのパート名を含む IOpcPartUri インターフェース。
corePropertiesIXpsOMCoreProperties*in[in] 新しいファイルに設定するコアドキュメントプロパティを含む IXpsOMCoreProperties インターフェース。このパラメーターには NULL を設定できます。
packageThumbnailIXpsOMImageResource*in[in] 新しいファイルに割り当てるサムネイル画像を含む IXpsOMImageResource インターフェース。 このパラメーターには NULL を設定できます。
documentSequencePrintTicketIXpsOMPrintTicketResource*in[in] 新しいファイルに割り当てるパッケージレベルのプリントチケットを含む IXpsOMPrintTicketResource インターフェース。 このパラメーターには NULL を設定できます。
discardControlPartNameIOpcPartUri*in[in] 破棄制御パートの名前を含む IOpcPartUri インターフェース。 このパラメーターには NULL を設定できます。
documentTypeXPS_DOCUMENT_TYPEin[in] パッケージライターのドキュメントの種類。このパラメーターに XPS_DOCUMENT_TYPE_UNSPECIFIED を指定することはできません。
packageWriterIXpsOMPackageWriter**out[out, retval] このメソッドによって作成された新しい IXpsOMPackageWriter インターフェースへのポインター。

戻り値

戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功し、packageWriter が正しく設定されました。

E_INVALIDARG: ドキュメントの種類が有効な XPS ドキュメント形式ではありませんでした。

解説(Remarks)

MSXPS ドキュメントまたは OpenXPS ドキュメントのいずれかに対応するパッケージライターを生成するには、このメソッドを使用します。Windows 7 でリリースされた CreatePackageWriterOnStream は、MSXPS 形式の XPS ドキュメントファイルしか作成できません。

vtbl 46 HRESULT CreatePackage1(IXpsOMPackage1** package)

IXpsOMObjectFactory1::CreatePackage1 メソッド (xpsobjectmodel_1.h) は、XPS オブジェクトモデルのドキュメントツリーのルートノードとなる IXpsOMPackage1 インターフェースを作成します。

packageIXpsOMPackage1**out新しい IXpsOMPackage1 インターフェースへのポインター。

戻り値

このメソッドは HRESULT を返します。戻り値には次の表に示すものが含まれますが、これらに限定されません。この表に記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

戻り値 説明
S_OK メソッドは成功しました。
E_POINTER package が NULL です。
vtbl 47 HRESULT CreatePackageFromStream1(IStream* stream, BOOL reuseObjects, IXpsOMPackage1** package)

XPS パッケージを含むストリームを開き、インスタンス化された XPS ドキュメントオブジェクトツリーを返します。

streamIStream*in[in] XPS パッケージを含むストリーム。
reuseObjectsBOOLin

[in] すべてのプロパティと子が同一のオブジェクトを共有することで、ドキュメントオブジェクトツリーの最適化を試みるかどうかを示すブール値。

TRUE: オブジェクトツリーの最適化を試みます。

FALSE: オブジェクトツリーの最適化を試みません。

packageIXpsOMPackage1**out[out, retval] 生成された XPS ドキュメントオブジェクトツリーを含む、新しい IXpsOMPackage1 インターフェースへのポインター。

戻り値

このメソッドは HRESULT を返します。戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功しました。

XPS_E_UNEXPECTED_NAMESPACE: パッケージのマークアップが、そのドキュメントの種類ではサポートされない名前空間を使用しています。

XPS_E_ABSOLUTE_REFERENCE: OpenXPS ドキュメントに、ドキュメント内の他のパートを絶対 URI で参照する XML 要素が含まれています。

解説(Remarks)

XPS_DOCUMENT_TYPE_ XPS または XPS_DOCUMENT_TYPE_ OPENXPS のいずれかの種類である可能性のある XPS ドキュメントを含むストリームを読み取るには、このメソッドを使用します。 Windows 7 でリリースされた CreatePackageFromStream は、XPS_DOCUMENT_TYPE_ XPS の種類の XPS ドキュメントを含むストリームしか開くことができません。

vtbl 48 HRESULT CreatePackageFromFile1(LPWSTR filename, BOOL reuseObjects, IXpsOMPackage1** package)

XPS パッケージファイルを開き、インスタンス化された XPS ドキュメントオブジェクトツリーを返します。このメソッドは、XPS_DOCUMENT_TYPE_ XPS または XPS_DOCUMENT_TYPE_ OPENXPS の種類の XPS ドキュメントを含むファイルを読み取ります。

filenameLPWSTRin[in, string] XPS パッケージファイルの名前。
reuseObjectsBOOLin

[in] すべてのプロパティと子が同一のオブジェクトを共有することで、ドキュメントオブジェクトツリーの最適化を試みるかどうかを示すブール値。

TRUE: オブジェクトツリーの最適化を試みます。

FALSE: オブジェクトツリーの最適化を試みません。

packageIXpsOMPackage1**out[out, retval] filename から読み取られた XPS ドキュメントオブジェクトツリーを含む、新しい IXpsOMPackage1 インターフェースへのポインター。

戻り値

このメソッドは HRESULT を返します。戻り値には次のものが含まれますが、これらに限定されません。ここに記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功しました。

XPS_E_UNEXPECTED_NAMESPACE: パッケージのマークアップが、そのドキュメントの種類ではサポートされない名前空間を使用しています

XPS_E_ABSOLUTE_REFERENCE: OpenXPS ドキュメントに、ドキュメント内の他のパートを絶対 URI で参照する XML 要素が含まれています。

解説(Remarks)

XPS_DOCUMENT_TYPE_ XPS または XPS_DOCUMENT_TYPE_ OPENXPS のいずれかの種類である可能性のある XPS ドキュメントを含むファイルを読み取るには、このメソッドを使用します。 Windows 7 でリリースされた CreatePackageFromFile は、XPS_DOCUMENT_TYPE_ XPS の種類の XPS ドキュメントを含むファイルしか開くことができません。

vtbl 49 HRESULT CreatePage1(XPS_SIZE* pageDimensions, LPWSTR language, IOpcPartUri* partUri, IXpsOMPage1** page)

IXpsOMObjectFactory1::CreatePage1 メソッド (xpsobjectmodel_1.h) は、1 ページ分の内容を表すオブジェクトツリーのルートノードを提供する IXpsOMPage インターフェースを作成します。

pageDimensionsXPS_SIZE*in

作成するページのサイズを指定する XPS_SIZE 構造体。

サイズは XPS 単位で表されます。1 インチは 96 XPS 単位です。 たとえば、8.5 インチ × 11.0 インチのページの寸法は 816 × 1,056 XPS 単位です。

languageLPWSTRin

作成するページの既定の言語を示す文字列。

[!ALERT] 重要 言語文字列は RFC 3066 の構文に従う必要があります。

partUriIOpcPartUri*inこのリソースに割り当てるパート名を含む IOpcPartUri インターフェース。
pageIXpsOMPage1**out新しい IXpsOMPage インターフェースへのポインター。

戻り値

このメソッドは HRESULT を返します。戻り値には次の表に示すものが含まれますが、これらに限定されません。この表に記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

戻り値 説明
S_OK メソッドは成功しました。
E_POINTER pageDimensionspartUri、または pageNULL です。
XPS_E_INVALID_LANGUAGE language に有効な言語文字列が含まれていません。
XPS_E_INVALID_PAGE_SIZE pageDimensions に無効なページサイズ、または無効なページサイズの値が含まれています。
vtbl 50 HRESULT CreatePageFromStream1(IStream* pageMarkupStream, IOpcPartUri* partUri, IXpsOMPartResources* resources, BOOL reuseObjects, IXpsOMPage1** page)

指定されたストリームからページのマークアップを読み取り、IXpsOMPage1 インターフェースを作成して内容を設定します。

pageMarkupStreamIStream*in[in] ページのマークアップを含むストリーム。
partUriIOpcPartUri*in[in] ページの URI を含む IOpcPartUri インターフェース。
resourcesIXpsOMPartResources*in[in] ページで使用されるリソースを含む IXpsOMPartResources インターフェース。
reuseObjectsBOOLin

[in] すべてのプロパティと子が同一のオブジェクトを共有することで、ドキュメントオブジェクトツリーの最適化を試みるかどうかを示すブール値。

TRUE: オブジェクトツリーの最適化を試みます。

FALSE: オブジェクトツリーの最適化を試みません。

pageIXpsOMPage1**out[out, retval] このメソッドによって作成された新しい IXpsOMPage1 インターフェースへのポインター。 -

戻り値

このメソッドは HRESULT を返します。戻り値には次の表に示すものが含まれますが、これらに限定されません。この表に記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功しました。

XPS_E_INVALID_CONTENT_TYPE: イメージリソースの種類が、ページのマークアップで使用されている名前空間と一致しません。たとえば、resources コレクション内の要素の 1 つが JpegXR であるにもかかわらず、名前空間が MSXPS 仕様に従っている場合などです。

E_POINTER: pageMarkupStream、partUri、resources、または page が NULL です。

XPS_E_NO_CUSTOM_OBJECTS: resource が、認識されるインターフェース実装を指していません。XPS ドキュメント API のインターフェースを独自に実装することはサポートされていません。

解説(Remarks)

このメソッドが返す IXpsOMPage1 インターフェースは GetDocumentType メソッドを提供しており、これを使用してストリーム内のソース XML マークアップの XPS ドキュメントの種類を識別できます。XPS ドキュメントの種類の判定は、ソースマークアップで使用されている XML 名前空間に基づいて行われます。

XPS_DOCUMENT_TYPE_ OPENXPS のドキュメントの種類を持つ IXpsOMPage1 インターフェースは、そのすべてのイメージリソースが XPS_DOCUMENT_TYPE_ XPS のドキュメント形式と互換性がある場合、XPS_DOCUMENT_TYPE_ XPS のドキュメントの種類としてシリアル化できます。

vtbl 51 HRESULT CreateRemoteDictionaryResourceFromStream1(IStream* dictionaryMarkupStream, IOpcPartUri* partUri, IXpsOMPartResources* resources, IXpsOMRemoteDictionaryResource** dictionaryResource)

リモートリソースディクショナリのマークアップを、ルートに接続されていない IXpsOMRemoteDictionaryResource インターフェースに読み込みます。dictionaryMarkupStream パラメーターで参照されるディクショナリには、OpenXPS または MSXPS のいずれかの名前空間のマークアップを含めることができます。

dictionaryMarkupStreamIStream*in[in] リモートリソースディクショナリのマークアップを含む IStream インターフェース。
partUriIOpcPartUri*in[in] このリソースに割り当てるパート名を含む IOpcPartUri インターフェース。
resourcesIXpsOMPartResources*inストリームを持つディクショナリリソースオブジェクトのパートリソースを表す IXpsOMPartResources インターフェース。
dictionaryResourceIXpsOMRemoteDictionaryResource**out[in] 新しい IXpsOMRemoteDictionaryResource インターフェースへのポインター。

戻り値

このメソッドは HRESULT を返します。戻り値には次の表に示すものが含まれますが、これらに限定されません。この表に記載されていない XPS ドキュメント API の戻り値については、XPS Document Errors を参照してください。

S_OK: メソッドは成功しました。

XPS_E_INVALID_CONTENT_TYPE: イメージリソースの種類が、マークアップで使用されている名前空間と一致しません。たとえば、resources 内の要素の 1 つが JpegXR であるにもかかわらず、名前空間が MSXPS 仕様に従っている場合などです。

E_POINTER: dictionaryMarkupStream、dictionaryPartUri、resources、または dictionaryResource が NULL です。

XPS_E_NO_CUSTOM_OBJECTS: resource が、認識されるインターフェース実装を指していません。XPS ドキュメント API のインターフェースを独自に実装することはサポートされていません。

解説(Remarks)

内容が XPS_DOCUMENT_TYPE_ XPS または XPS_DOCUMENT_TYPE_ OPENXPS のいずれかの種類である可能性のあるストリームからリモートディクショナリを作成するには、このメソッドを使用します。 Windows 7 でリリースされた CreateRemoteDictionaryResourceFromStream は、XPS_DOCUMENT_TYPE_ XPS の種類のストリームしか読み取ることができません。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IXpsOMObjectFactory1 "{0A91B617-D612-4181-BF7C-BE5824E9CC8F}"
#usecom global IXpsOMObjectFactory1 IID_IXpsOMObjectFactory1 "{E974D26D-3D9B-4D47-88CC-3872F2DC3585}"
#comfunc global IXpsOMObjectFactory1_GetDocumentTypeFromFile                    40 wstr,var
#comfunc global IXpsOMObjectFactory1_GetDocumentTypeFromStream                  41 sptr,var
#comfunc global IXpsOMObjectFactory1_ConvertHDPhotoToJpegXR                     42 sptr
#comfunc global IXpsOMObjectFactory1_ConvertJpegXRToHDPhoto                     43 sptr
#comfunc global IXpsOMObjectFactory1_CreatePackageWriterOnFile1                 44 wstr,var,int,int,int,sptr,sptr,sptr,sptr,sptr,int,sptr
#comfunc global IXpsOMObjectFactory1_CreatePackageWriterOnStream1               45 sptr,int,int,sptr,sptr,sptr,sptr,sptr,int,sptr
#comfunc global IXpsOMObjectFactory1_CreatePackage1                             46 sptr
#comfunc global IXpsOMObjectFactory1_CreatePackageFromStream1                   47 sptr,int,sptr
#comfunc global IXpsOMObjectFactory1_CreatePackageFromFile1                     48 wstr,int,sptr
#comfunc global IXpsOMObjectFactory1_CreatePage1                                49 var,wstr,sptr,sptr
#comfunc global IXpsOMObjectFactory1_CreatePageFromStream1                      50 sptr,sptr,sptr,int,sptr
#comfunc global IXpsOMObjectFactory1_CreateRemoteDictionaryResourceFromStream1  51 sptr,sptr,sptr,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。