指定されたオブジェクト・タイプに関する登録情報を情報カタログから検索するために使用します。
許可
管理者またはユーザー
構文
APIRET APIENTRY FLGGetReg( PSZ pszObjTypeID,
PSZ pszIconFileID,
PFLGHEADERAREA * ppObjRegStruct,
PFLGEXTCODE pExtCode );
パラメーター
出力に使用する場合には、登録されたオブジェクト・タイプの OS/2 アイコンを 保管するために情報カタログ・マネージャーが使用するファイルのファイル・パスと名前を指します。 オブジェクト・タイプ登録に関連付けられたアイコンがない場合には、 このポインターは NULL にセットされます。
この出力構造には、要求されたオブジェクト・タイプの登録情報に関する 特性の仕様と値が入ります。 FLGGetReg が失敗した場合には、このポインターは NULL にセットされます。
戻された理由コードの説明については、付録 D, 情報カタログ・マネージャーの理由コードを参照してくだ さい。
出力構造
FLGGetReg が作成する出力構造には、図 76 に示すように、 要求されたオブジェクト・タイプ登録の特性の仕様および値が含まれています。
この出力構造のオブジェクト域には、要求されたオブジェクト・タイプの 登録特性の値が入ります。
バイト・オフセットの意味については、情報カタログ・マネージャーの API 出力構造を参照してくだ さい。
使用方法
制約事項
FLGGetReg を使うと、OS/2 アイコンしか検索できません。 Windows アイコンを検索するには、FLGManageIcons を使用します (FLGManageIconsを参照)。
前提条件
pszObjTypeID パラメーターの値は、情報カタログに登録された既存の オブジェクト・タイプ ID を参照するものでなければなりません。
出力構造に割り振られたメモリーの解放
FLGGetReg が出力構造にあるデータを戻した場合、出力構造に戻された データを保管してから、FLGFreeMem を呼び出さなくてはなりません (FLGFreeMem参照)。 メモリーを解放するのに、たとえば C 言語指示のような他の方式は使用しないで ください。
図 77 は、FLGGetReg API 呼び出しを出すために必要な C 言語コード を示しています。 このサンプル・コードは、MYIMAGE オブジェクト・タイプに関する登録情報 を情報カタログから検索します。
図 77. C 言語による FLGGetReg の呼び出しのサンプル
APIRET rc; // Declare reason code UCHAR pszObjTypeID[FLG_OBJTYPID_LEN+1]; // Unique ID for MYIMAGE ObjType UCHAR pszIconFileID[FLG_ICON_FILE_ID_MAXLEN+1]; // Path/File name for ICON PFLGHEADERAREA * ppObjRegStruct; // Ptr to pointer to the output structure FLGEXTCODE ExtCode = 0; // Declare extended code . . /* Retrieving an object Type Registration Instance */ . strcpy (pszObjTypeID,"000044"); strcpy (pszIconFileID,"Y:\\FLGICON2.ICO"); rc = FLGGetReg (pszObjTypeID, // id of the object type pszIconFileID,// Path/File name of file to contain ICON ppObjRegStruct,// Structure pointer where out put will be returned &ExtCode); // Pass pointer to extended code |
図 78 は、MYIMAGE オブジェクト・タイプの登録に関する 特性と値の情報が入っている出力構造を示しています。
この例で、ヘッダー・レコードの 33 桁目から 38 桁目までには、 登録情報の検索対象となったオブジェクト・タイプの オブジェクト・タイプ ID (000044) が入っています。 この ID は、pszObjTypeID パラメーターで入力として指定した オブジェクト・タイプ ID と一致しています。