diff --git a/dlls/urlmon/urlmon.spec b/dlls/urlmon/urlmon.spec index 1da697d4d6..fdb94eb012 100644 --- a/dlls/urlmon/urlmon.spec +++ b/dlls/urlmon/urlmon.spec @@ -38,7 +38,7 @@ @ stub FindMediaType @ stub FindMediaTypeClass @ stdcall FindMimeFromData(long ptr ptr long ptr long ptr long) -@ stub GetClassFileOrMime +@ stdcall GetClassFileOrMime(ptr wstr ptr long wstr long ptr) @ stub GetClassURL @ stub GetComponentIDFromCLSSPEC @ stub GetMarkOfTheWeb diff --git a/dlls/urlmon/urlmon_main.c b/dlls/urlmon/urlmon_main.c index bbd7cc5920..a64d4947f6 100644 --- a/dlls/urlmon/urlmon_main.c +++ b/dlls/urlmon/urlmon_main.c @@ -408,11 +408,7 @@ void WINAPI ReleaseBindInfo(BINDINFO* pbindinfo) pbindinfo->cbSize = size; } -/*********************************************************************** - * FindMimeFromData (URLMON.@) - * - * Determines the Multipurpose Internet Mail Extensions (MIME) type from the data provided. - */ + static BOOL text_html_filter(const BYTE *b, DWORD size) { int i; @@ -522,6 +518,11 @@ static BOOL application_octet_stream_filter(const BYTE *b, DWORD size) return TRUE; } +/*********************************************************************** + * FindMimeFromData (URLMON.@) + * + * Determines the Multipurpose Internet Mail Extensions (MIME) type from the data provided. + */ HRESULT WINAPI FindMimeFromData(LPBC pBC, LPCWSTR pwzUrl, LPVOID pBuffer, DWORD cbSize, LPCWSTR pwzMimeProposed, DWORD dwMimeFlags, LPWSTR* ppwzMimeOut, DWORD dwReserved) @@ -676,6 +677,21 @@ HRESULT WINAPI FindMimeFromData(LPBC pBC, LPCWSTR pwzUrl, LPVOID pBuffer, return E_FAIL; } +/*********************************************************************** + * GetClassFileOrMime (URLMON.@) + * + * Determines the class ID from the bind context, file name or MIME type. + */ +HRESULT WINAPI GetClassFileOrMime(LPBC pBC, LPCWSTR pszFilename, + LPVOID pBuffer, DWORD cbBuffer, LPCWSTR pszMimeType, DWORD dwReserved, + CLSID *pclsid) +{ + FIXME("(%p, %s, %p, %d, %p, 0x%08x, %p): stub\n", pBC, + debugstr_w(pszFilename), pBuffer, cbBuffer, debugstr_w(pszMimeType), + dwReserved, pclsid); + return E_NOTIMPL; +} + /*********************************************************************** * Extract (URLMON.@) */ diff --git a/include/urlmon.idl b/include/urlmon.idl index 3f2b49ef4b..d84f1e762d 100644 --- a/include/urlmon.idl +++ b/include/urlmon.idl @@ -1264,6 +1264,7 @@ cpp_quote("HRESULT WINAPI CreateFormatEnumerator(UINT,FORMATETC*,IEnumFORMATETC* cpp_quote("HRESULT WINAPI GetSoftwareUpdateInfo( LPCWSTR szDistUnit, LPSOFTDISTINFO psdi);") cpp_quote("HRESULT WINAPI FaultInIEFeature(HWND,uCLSSPEC*,QUERYCONTEXT*,DWORD);") cpp_quote("HRESULT WINAPI FindMimeFromData(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,LPWSTR*,DWORD);") +cpp_quote("HRESULT WINAPI GetClassFileOrMime(LPBC,LPCWSTR,LPVOID,DWORD,LPCWSTR,DWORD,CLSID*);") cpp_quote("HRESULT WINAPI HlinkGoBack(IUnknown*);") cpp_quote("HRESULT WINAPI HlinkGoForward(IUnknown*);") cpp_quote("HRESULT WINAPI HlinkNavigateMoniker(IUnknown*,IMoniker*);")