77 lines
2 KiB
Plaintext
77 lines
2 KiB
Plaintext
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
// hashstring.idl
|
||
|
//
|
||
|
// ABSTRACT:
|
||
|
// Contains interface definition for IStringTable. This implementer maintains a
|
||
|
// key/value pair of BSTR string values for lookup by any caller.
|
||
|
//
|
||
|
// HISTORY:
|
||
|
// 05/12/00 - created (cfeller)
|
||
|
///////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
import "oaidl.idl";
|
||
|
import "ocidl.idl";
|
||
|
[
|
||
|
object,
|
||
|
uuid(20FDEBA0-E15A-42DA-9E3F-B5A5619E5229),
|
||
|
helpstring("IStringTable Interface"),
|
||
|
pointer_default(unique)
|
||
|
]
|
||
|
interface IStringTable : IUnknown
|
||
|
{
|
||
|
// Load strings from the given ini file section. Ini file must be in the form of:
|
||
|
//
|
||
|
// [THE_SECTION_NAME]
|
||
|
// Name1=Value1
|
||
|
// Name2=Value2
|
||
|
//
|
||
|
// NOTE: The total number characters in the entire section must not exceed 8192.
|
||
|
HRESULT LoadStringsFromFile([in] BSTR szConfigurationFilePath, [in] BSTR szIniSection);
|
||
|
|
||
|
// Store a new string value in the component.
|
||
|
HRESULT AddString([in] BSTR szKey, [in] BSTR szValue);
|
||
|
|
||
|
// Store a new numeric value in the component.
|
||
|
HRESULT AddNumber([in] BSTR szKey, [in] long lValue);
|
||
|
|
||
|
// Retrieve the stored value identified by the given key.
|
||
|
//
|
||
|
// NOTE: Returns a copy of the data...NOT the original. Caller is responsible for
|
||
|
// freeing the allocated copy.
|
||
|
HRESULT LookupString([in] BSTR szKey, [out,retval] BSTR* pbstrValue);
|
||
|
|
||
|
// Retrieve the stored value identified by the given key.
|
||
|
//
|
||
|
HRESULT LookupNumber([in] BSTR szKey, [out,retval] long* plValue);
|
||
|
|
||
|
// Remove all strings stored by the component
|
||
|
HRESULT ClearStrings();
|
||
|
};
|
||
|
|
||
|
[
|
||
|
uuid(D16D0A7E-DB9A-4080-8CB6-D5FD6AE17269),
|
||
|
version(1.0),
|
||
|
helpstring("HashString 1.0 Type Library")
|
||
|
]
|
||
|
library HASHSTRINGLib
|
||
|
{
|
||
|
importlib("stdole32.tlb");
|
||
|
importlib("stdole2.tlb");
|
||
|
import "passportservice.idl";
|
||
|
|
||
|
[
|
||
|
uuid(5769ACF1-99C7-45BE-BC9B-A54A6648FD05),
|
||
|
helpstring("StringTable Class")
|
||
|
]
|
||
|
coclass StringTable
|
||
|
{
|
||
|
[default] interface IStringTable;
|
||
|
interface IPassportService;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
|
||
|
////////////
|
||
|
// EOF
|
||
|
////////////
|