📄 hlink.idl
字号:
//------------------------------------------------------------------------------------------
//
// Copyright (C) Microsoft Corporation, 1995-1997.
//
// Contents: Hyperlinking interfaces
//
//------------------------------------------------------------------------------------------
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("// HLInk.h")
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("// (C) Copyright 1995 - 1998 Microsoft Corporation. All Rights Reserved.")
cpp_quote("//")
cpp_quote("// THIS CODE AND INFORMATION IS PROVIDED \"AS IS\" WITHOUT WARRANTY OF")
cpp_quote("// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO")
cpp_quote("// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A")
cpp_quote("// PARTICULAR PURPOSE.")
cpp_quote("//=--------------------------------------------------------------------------=")
cpp_quote("")
cpp_quote("#pragma comment(lib,\"uuid.lib\")")
cpp_quote("")
cpp_quote("//--------------------------------------------------------------------------")
cpp_quote("// OLE Hyperlinking Interfaces.")
cpp_quote(" ")
cpp_quote("#ifndef HLINK_H ")
cpp_quote("#define HLINK_H ")
cpp_quote(" ")
import "urlmon.idl";
interface IHlinkSite;
interface IHlink;
interface IHlinkTarget;
interface IHlinkFrame;
interface IEnumHLITEM;
interface IHlinkBrowseContext;
cpp_quote("// We temporarily support the old 'source' names ")
cpp_quote("#define SID_SHlinkFrame IID_IHlinkFrame")
cpp_quote("#define IID_IHlinkSource IID_IHlinkTarget ")
cpp_quote("#define IHlinkSource IHlinkTarget ")
cpp_quote("#define IHlinkSourceVtbl IHlinkTargetVtbl ")
cpp_quote("#define LPHLINKSOURCE LPHLINKTARGET ")
cpp_quote(" ")
cpp_quote("/****************************************************************************/")
cpp_quote("/**** Error codes ****/")
cpp_quote("/****************************************************************************/")
cpp_quote("#ifndef _HLINK_ERRORS_DEFINED ")
cpp_quote("#define _HLINK_ERRORS_DEFINED ")
cpp_quote("#define HLINK_E_FIRST (OLE_E_LAST+1) ")
cpp_quote("#define HLINK_S_FIRST (OLE_S_LAST+1) ")
cpp_quote("#define HLINK_S_DONTHIDE (HLINK_S_FIRST) ")
cpp_quote("#endif //_HLINK_ERRORS_DEFINED ")
cpp_quote(" ")
cpp_quote(" ")
cpp_quote("/****************************************************************************/")
cpp_quote("/**** Hyperlink APIs ****/")
cpp_quote("/****************************************************************************/")
cpp_quote(" ")
// Hyperlink Clipboard Format: On MAC it is 'HLNK', and on windows it is the
// the value returned from RegisterClipboardFormat(CFSTR_HYPERLINK).
cpp_quote("#if MAC || defined(_MAC) ")
cpp_quote("#define cfHyperlink 'HLNK' ")
cpp_quote("#else ")
cpp_quote("#define CFSTR_HYPERLINK (TEXT(\"Hyperlink\")) ")
cpp_quote("#endif ")
cpp_quote(" ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateFromMoniker( ")
cpp_quote(" IMoniker * pimkTrgt, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" LPCWSTR pwzFriendlyName, ")
cpp_quote(" IHlinkSite * pihlsite, ")
cpp_quote(" DWORD dwSiteData, ")
cpp_quote(" IUnknown * piunkOuter, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateFromString( ")
cpp_quote(" LPCWSTR pwzTarget, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" LPCWSTR pwzFriendlyName, ")
cpp_quote(" IHlinkSite * pihlsite, ")
cpp_quote(" DWORD dwSiteData, ")
cpp_quote(" IUnknown * piunkOuter, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateFromData( ")
cpp_quote(" IDataObject *piDataObj, ")
cpp_quote(" IHlinkSite * pihlsite, ")
cpp_quote(" DWORD dwSiteData, ")
cpp_quote(" IUnknown * piunkOuter, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
// Returns S_OK if a hyperlink can be created from piDataObj, S_FALSE if not.
cpp_quote("STDAPI HlinkQueryCreateFromData(IDataObject *piDataObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkClone( ")
cpp_quote(" IHlink * pihl, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" IHlinkSite * pihlsiteForClone, ")
cpp_quote(" DWORD dwSiteData, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateBrowseContext( ")
cpp_quote(" IUnknown * piunkOuter, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkNavigateToStringReference( ")
cpp_quote(" LPCWSTR pwzTarget, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" IHlinkSite * pihlsite, ")
cpp_quote(" DWORD dwSiteData, ")
cpp_quote(" IHlinkFrame *pihlframe, ")
cpp_quote(" DWORD grfHLNF, ")
cpp_quote(" LPBC pibc, ")
cpp_quote(" IBindStatusCallback * pibsc, ")
cpp_quote(" IHlinkBrowseContext *pihlbc); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkNavigate( ")
cpp_quote(" IHlink * pihl, ")
cpp_quote(" IHlinkFrame * pihlframe, ")
cpp_quote(" DWORD grfHLNF, ")
cpp_quote(" LPBC pbc, ")
cpp_quote(" IBindStatusCallback * pibsc, ")
cpp_quote(" IHlinkBrowseContext *pihlbc); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkOnNavigate( ")
cpp_quote(" IHlinkFrame * pihlframe, ")
cpp_quote(" IHlinkBrowseContext * pihlbc, ")
cpp_quote(" DWORD grfHLNF, ")
cpp_quote(" IMoniker * pimkTarget, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" LPCWSTR pwzFriendlyName, ")
cpp_quote(" ULONG * puHLID); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkUpdateStackItem( ")
cpp_quote(" IHlinkFrame * pihlframe, ")
cpp_quote(" IHlinkBrowseContext * pihlbc, ")
cpp_quote(" ULONG uHLID, ")
cpp_quote(" IMoniker * pimkTrgt, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" LPCWSTR pwzFriendlyName); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkOnRenameDocument( ")
cpp_quote(" DWORD dwReserved, ")
cpp_quote(" IHlinkBrowseContext * pihlbc, ")
cpp_quote(" IMoniker * pimkOld, ")
cpp_quote(" IMoniker * pimkNew); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkResolveMonikerForData( ")
cpp_quote(" LPMONIKER pimkReference, ")
cpp_quote(" DWORD reserved, ")
cpp_quote(" LPBC pibc, ")
cpp_quote(" ULONG cFmtetc, ")
cpp_quote(" FORMATETC * rgFmtetc, ")
cpp_quote(" IBindStatusCallback * pibsc, ")
cpp_quote(" LPMONIKER pimkBase); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkResolveStringForData( ")
cpp_quote(" LPCWSTR pwzReference, ")
cpp_quote(" DWORD reserved, ")
cpp_quote(" LPBC pibc, ")
cpp_quote(" ULONG cFmtetc, ")
cpp_quote(" FORMATETC * rgFmtetc, ")
cpp_quote(" IBindStatusCallback * pibsc, ")
cpp_quote(" LPMONIKER pimkBase); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkParseDisplayName( ")
cpp_quote(" LPBC pibc, ")
cpp_quote(" LPCWSTR pwzDisplayName, ")
cpp_quote(" BOOL fNoForceAbs, ")
cpp_quote(" ULONG * pcchEaten, ")
cpp_quote(" IMoniker ** ppimk); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateExtensionServices( ")
cpp_quote(" LPCWSTR pwzAdditionalHeaders, ")
cpp_quote(" HWND phwnd, ")
cpp_quote(" LPCWSTR pszUsername, ")
cpp_quote(" LPCWSTR pszPassword, ")
cpp_quote(" IUnknown * piunkOuter, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkPreprocessMoniker( ")
cpp_quote(" LPBC pibc, ")
cpp_quote(" IMoniker *pimkIn, ")
cpp_quote(" IMoniker **ppimkOut); ")
cpp_quote(" ")
cpp_quote("STDAPI OleSaveToStreamEx( ")
cpp_quote(" IUnknown * piunk, ")
cpp_quote(" IStream * pistm, ")
cpp_quote(" BOOL fClearDirty); ")
cpp_quote(" ")
// hlink special reference ids used in HlinkSetSpecialReference and HlinkGetSpecialReference
typedef enum _HLSR_NOREDEF10
{
HLSR_HOME = 0,
HLSR_SEARCHPAGE = 1,
HLSR_HISTORYFOLDER = 2,
} HLSR;
cpp_quote(" ")
cpp_quote("STDAPI HlinkSetSpecialReference( ")
cpp_quote(" ULONG uReference, ")
cpp_quote(" LPCWSTR pwzReference); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkGetSpecialReference( ")
cpp_quote(" ULONG uReference, ")
cpp_quote(" LPWSTR *ppwzReference); ")
cpp_quote(" ")
typedef enum _HLSHORTCUTF__NOREDEF10
{
HLSHORTCUTF_DEFAULT = 0x00000000,
HLSHORTCUTF_DONTACTUALLYCREATE = 0x00000001,
HLSHORTCUTF_USEFILENAMEFROMFRIENDLYNAME = 0x00000002,
HLSHORTCUTF_USEUNIQUEFILENAME = 0x00000004,
HLSHORTCUTF_MAYUSEEXISTINGSHORTCUT = 0x00000008,
} HLSHORTCUTF;
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateShortcut( ")
cpp_quote(" DWORD grfHLSHORTCUTF, ")
cpp_quote(" IHlink *pihl, ")
cpp_quote(" LPCWSTR pwzDir, ")
cpp_quote(" LPCWSTR pwzFileName, ")
cpp_quote(" LPWSTR *ppwzShortcutFile, ")
cpp_quote(" DWORD dwReserved); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateShortcutFromMoniker( ")
cpp_quote(" DWORD grfHLSHORTCUTF, ")
cpp_quote(" IMoniker *pimkTarget, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" LPCWSTR pwzDir, ")
cpp_quote(" LPCWSTR pwzFileName, ")
cpp_quote(" LPWSTR *ppwzShortcutFile, ")
cpp_quote(" DWORD dwReserved); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkCreateShortcutFromString( ")
cpp_quote(" DWORD grfHLSHORTCUTF, ")
cpp_quote(" LPCWSTR pwzTarget, ")
cpp_quote(" LPCWSTR pwzLocation, ")
cpp_quote(" LPCWSTR pwzDir, ")
cpp_quote(" LPCWSTR pwzFileName, ")
cpp_quote(" LPWSTR *ppwzShortcutFile, ")
cpp_quote(" DWORD dwReserved); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkResolveShortcut( ")
cpp_quote(" LPCWSTR pwzShortcutFileName, ")
cpp_quote(" IHlinkSite * pihlsite, ")
cpp_quote(" DWORD dwSiteData, ")
cpp_quote(" IUnknown * piunkOuter, ")
cpp_quote(" REFIID riid, ")
cpp_quote(" void ** ppvObj); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkResolveShortcutToMoniker( ")
cpp_quote(" LPCWSTR pwzShortcutFileName, ")
cpp_quote(" IMoniker **ppimkTarget, ")
cpp_quote(" LPWSTR *ppwzLocation); ")
cpp_quote(" ")
cpp_quote("STDAPI HlinkResolveShortcutToString( ")
cpp_quote(" LPCWSTR pwzShortcutFileName, ")
cpp_quote(" LPWSTR *ppwzTarget, ")
cpp_quote(" LPWSTR *ppwzLocation); ")
cpp_quote(" ")
// Returns S_OK if pwzFileName is a hlink shortcut file.
// Currently, this succeeds for Internet Shortcut (.url) files.
cpp_quote(" ")
cpp_quote(" STDAPI HlinkIsShortcut(LPCWSTR pwzFileName); ")
cpp_quote(" ")
// Find pwzName within pwzParams and return the associated value.
// The syntax of pwzParams is < ID1 = "value1" > < ID2 = "value2" > with
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -