InfoTip Interfaces
InfoTip handlers implement two interfaces:
IPersistFile and IQueryInfo. We
have discussed IPersistFile several times already,
most notably in Chapter 5, so we will jump
straight into IQueryInfo. Let’s examine the
interface definition, which is shown in Example 10.1.
Table 10.1 gives a brief description of each of the
methods.
Example 10-1. IQueryInfo
//------------------------------------------------------
// IQueryInfo
//------------------------------------------------------
[
uuid(00021500-0000-0000-C000-000000000046),
helpstring("IQueryInfo Interface"),
odl
]
interface IQueryInfo : IUnknown
{
HRESULT GetInfoTip([in] DWORD dwFlags,
[in,out] LPWSTRVB *ppwszTip);
HRESULT GetInfoFlags([in,out] DWORD *pdwFlags);
}Table 10-1. IQueryInfo
IQueryInfo is a very basic interface that contains
two methods: GetInfoTip and
GetInfoFlags. GetInfoFlags is
not currently used by the shell, so it will not be discussed. That
leaves GetInfoTip.
GetInfoTip
GetInfoTip
is called by the shell to request an InfoTip string from the handler.
Its syntax is:
HRESULT GetInfoTip( DWORD dwFlags, LPWSTR *ppwszTip );
with the following parameters:
-
dwFlags [in]This parameter is not used currently by the shell.-
ppwszTip [in,out]The address of a wide-character ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access