これは共通のメソッドです。プラットフォーム固有の実装上の制限がある場合は、このメソッドを使用するオブジェクトのトピックに記載されています。
このプロパティを使用すると、ユーザー定義の任意の情報をオブジェクトに関連付けることができます。この情報は VARIANT として渡され、格納できるのは単純な型 (String、整数型) のみです。この VARIANT の中に SAFEARRAY 型または VARIANT 型を含めることはできません。より正確には、使用できる variant 型は次のとおりです: VT_EMPTY, VT_UI1, VT_I2, VT_I4, VT_R4, VT_R8, VT_CY, VT_BSTR, VT_NULL, VT_ERROR, VT_BOOL, VT_DATE.
HRESULT get_UserProperty(
BSTR name,
VARIANT* result
);
HRESULT put_UserProperty(
BSTR name,
VARIANT value
);
object get_UserProperty( string name );
void set_UserProperty(
string name,
object value
);
Property UserProperty(name As String) As Object
name
[in] この変数には、たとえば “MyProperty” のように、ほかのプロパティと区別して識別するための任意の string 値を指定します。
result
[out, retval] ユーザー定義プロパティの値を受け取る VARIANT 変数へのポインター。
value
[in] プロパティの新しい値を格納する VARIANT 変数。
このプロパティに固有の戻り値はありません。ABBYY FineReader Engine 関数の標準戻り値が返されます。
プロパティは名前で識別されます。したがって、1 つのオブジェクトに対して、指定した名前のプロパティを複数持つことはできません。オブジェクトに指定した名前のユーザープロパティがない場合は、そのプロパティに最初に値を代入した時点で作成されます。オブジェクトに存在しないプロパティの値を取得しようとすると、空の VARIANT が返されます。CopyFrom メソッドでオブジェクトをコピーすると、ユーザー定義プロパティもコピーされます。オブジェクトが永続化される場合、ユーザー定義プロパティも永続化されます。
このプロパティは、次のオブジェクトで使用できます。
Properties の使用