mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
3.1 KiB
75 lines
3.1 KiB
#include <objbase.h>
|
|
|
|
class CHWDeviceInst;
|
|
|
|
//=============================================================================
|
|
HRESULT _GetEventHandlerFromDeviceHandler(LPCWSTR pszDeviceHandler,
|
|
LPCWSTR pszEventType, LPWSTR pszEventHandler, DWORD cchEventHandler);
|
|
|
|
//=============================================================================
|
|
HRESULT _GetActionFromHandler(LPCWSTR pszHandler, LPWSTR pszAction,
|
|
DWORD cchAction);
|
|
|
|
HRESULT _GetProviderFromHandler(LPCWSTR pszHandler, LPWSTR pszProvider,
|
|
DWORD cchProvider);
|
|
|
|
HRESULT _GetIconLocationFromHandler(LPCWSTR pszHandler,
|
|
LPWSTR pszIconLocation, DWORD cchIconLocation);
|
|
|
|
HRESULT _GetInvokeProgIDFromHandler(LPCWSTR pszHandler,
|
|
LPWSTR pszInvokeProgID, DWORD cchInvokeProgID);
|
|
|
|
HRESULT _GetInvokeVerbFromHandler(LPCWSTR pszHandler,
|
|
LPWSTR pszInvokeVerb, DWORD cchInvokeVerb);
|
|
|
|
// Uses the CTSTR_ flags in shpriv.idl
|
|
HRESULT _GetEventFriendlyName(LPCWSTR pszDeviceID, LPCWSTR pszEventType,
|
|
LPWSTR pszFriendlyName, DWORD cchFriendlyName);
|
|
|
|
HRESULT _GetEventIconLocation(LPCWSTR pszDeviceID, LPCWSTR pszEventType,
|
|
LPWSTR pszIconLocation, DWORD cchIconLocation);
|
|
|
|
//=============================================================================
|
|
HRESULT _GetDeviceHandler(CHWDeviceInst* phwdevinst,
|
|
LPWSTR pszDeviceHandler, DWORD cchDeviceHandler);
|
|
|
|
//=============================================================================
|
|
HRESULT _GetHandlerCLSID(LPCWSTR pszEventHandler, CLSID* pclsid);
|
|
HRESULT _GetHandlerCancelCLSID(LPCWSTR pszHandler, CLSID* pclsid);
|
|
HRESULT _GetInitCmdLine(LPCWSTR pszEventHandler, LPWSTR* ppsz);
|
|
|
|
//=============================================================================
|
|
#define GUH_IMPERSONATEUSER TRUE
|
|
#define GUH_USEWINSTA0USER FALSE
|
|
|
|
HRESULT _GetUserDefaultHandler(LPCWSTR pszDeviceID, LPCWSTR pszEventHandler,
|
|
LPWSTR pszHandler, DWORD cchHandler, BOOL fImpersonateCaller);
|
|
HRESULT _SetUserDefaultHandler(LPCWSTR pszDeviceID, LPCWSTR pszEventHandler,
|
|
LPCWSTR pszHandler);
|
|
HRESULT _SetSoftUserDefaultHandler(LPCWSTR pszDeviceID,
|
|
LPCWSTR pszEventHandler, LPCWSTR pszHandler);
|
|
|
|
HRESULT _GetHandlerForNoContent(LPCWSTR pszEventHandler, LPWSTR pszHandler,
|
|
DWORD cchHandler);
|
|
|
|
//=============================================================================
|
|
HRESULT _FindDeepestSubkeyName(LPCWSTR pszSubKey, CHWDeviceInst* phwdevinst,
|
|
LPWSTR pszKey, DWORD cchKey);
|
|
|
|
//=============================================================================
|
|
HRESULT _GetDevicePropertyAsString(CHWDeviceInst* phwdevinst,
|
|
LPCWSTR pszPropName, LPCWSTR psz, DWORD cch);
|
|
|
|
HRESULT _GetDevicePropertyStringNoBuf(CHWDeviceInst* phwdevinst,
|
|
LPCWSTR pszPropName, BOOL fUseMergeMultiSz, DWORD* pdwType,
|
|
LPWSTR* ppszProp);
|
|
|
|
HRESULT _GetDevicePropertyGenericAsBlob(CHWDeviceInst* phwdevinst,
|
|
LPCWSTR pszPropName, BYTE_BLOB** ppblob);
|
|
|
|
HRESULT _GetDevicePropertyGenericAsMultiSz(CHWDeviceInst* phwdevinst,
|
|
LPCWSTR pszPropName, BOOL fUseMergeMultiSz, WORD_BLOB** ppblob);
|
|
|
|
HRESULT _GetDevicePropertyGeneric(CHWDeviceInst* phwdevinst,
|
|
LPCWSTR pszPropName, BOOL fUseMergeMultiSz, DWORD* pdwType, LPBYTE pbData,
|
|
DWORD cbData);
|