18DEFINE_GUID(CLSID_MscExtractIcon, 0x7A80E4A8,0x8005,0x11D2,0xBC,0xF8,0x00,0xC0,0x4F,0x72,0xC7,0x17);
23 public CComCoClass<CMscExtractIcon, &CLSID_MscExtractIcon>,
24 public CComObjectRootEx<CComMultiThreadModelNoCS>,
60 *GilOut = GIL_PERINSTANCE;
62 if (GilIn & GIL_ASYNC)
121 return pDoc->setProperty(
const_cast<PWSTR>(
L"SelectionLanguage"),
v);
126 CComPtr<IXMLDOMNamedNodeMap> pMap;
136 hr = pNode->get_text(pOut);
150 IID_IXMLDOMDocument, (
void**)ppDoc);
153 else if (
SUCCEEDED(
hr = (*ppDoc)->load(*pVar, &succ)) && succ)
164 CComPtr<IStream> pStream;
172 CComPtr<IXMLDOMDocument2> pDoc;
177 CComPtr<IXMLDOMNode> pDomNode;
178 hr = pDoc->selectSingleNode(
const_cast<PWSTR>(
L"/MMC_ConsoleFile/VisualAttributes/Icon"), &pDomNode);
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, IUnknown *outer, DWORD cls_context, REFIID riid, void **obj)
INT WINAPI StrToIntW(LPCWSTR lpString)
#define DLL_PROCESS_ATTACH
BOOL WINAPI DisableThreadLibraryCalls(IN HMODULE hLibModule)
HRESULT WINAPI SHStrDupW(const WCHAR *src, WCHAR **dest)
HRESULT WINAPI SHCreateStreamOnFileW(const WCHAR *path, DWORD mode, IStream **stream)
void WINAPI SHFree(LPVOID pv)
#define COM_INTERFACE_ENTRY_IID(iid, x)
#define OBJECT_ENTRY(clsid, class)
#define DECLARE_NOT_AGGREGATABLE(x)
#define DECLARE_REGISTRY_RESOURCEID(x)
#define BEGIN_OBJECT_MAP(x)
STDAPI DllGetClassObject(_In_ REFCLSID rclsid, _In_ REFIID riid, _Out_ LPVOID *ppv)
static HRESULT LoadXmlFromVariant(_In_ VARIANT *pVar, _Out_ IXMLDOMDocument2 **ppDoc)
STDAPI DllRegisterServer()
STDAPI DllUnregisterServer()
static HRESULT SetXPathSelectionLanguage(_In_ IXMLDOMDocument2 *pDoc)
static HRESULT GetAttributeValue(_In_ IXMLDOMNode *pNode, _In_ LPCWSTR pszName, _Out_ BSTR *pOut)
EXTERN_C BOOL WINAPI DllMain(_In_ HINSTANCE hInstance, _In_ DWORD dwReason, _In_ LPVOID lpReserved)
#define STGM_SHARE_DENY_WRITE
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
const GUID IID_IPersistFile
#define PathAddBackslashW
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
STRSAFEAPI StringCchCopyW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszSrc)
WORD WORD PSZ PSZ pszFileName
#define GetSystemDirectory
static HRESULT HRESULT_FROM_WIN32(unsigned int x)
_In_ DWORD _In_ int _In_ int _In_opt_ LPNLSVERSIONINFO _In_opt_ LPVOID lpReserved