Add some missing prototypes, fix AssocIsDangerous.
Implement StrRetToBSTR, delay-import oleaut32.
diff --git a/include/shlwapi.h b/include/shlwapi.h
index 209db2f..9c9102f 100644
--- a/include/shlwapi.h
+++ b/include/shlwapi.h
@@ -22,6 +22,7 @@
#define __WINE_SHLWAPI_H
#include <objbase.h>
+#include <shtypes.h>
#ifdef __cplusplus
extern "C" {
@@ -279,6 +280,8 @@
HRESULT WINAPI AssocQueryKeyW(ASSOCF,ASSOCKEY,LPCWSTR,LPCWSTR,PHKEY);
#define AssocQueryKey WINELIB_NAME_AW(AssocQueryKey)
+BOOL WINAPI AssocIsDangerous(LPCWSTR);
+
#endif /* NO_SHLWAPI_REG */
@@ -819,18 +822,16 @@
#define IntlStrEqNIW(s1,s2,n) IntlStrEqWorkerW(FALSE,s1,s2,n)
#define IntlStrEqNI WINELIB_NAME_AW(IntlStrEqNI)
-/* Undocumented */
-struct _STRRET;
-struct _ITEMIDLIST;
-
-HRESULT WINAPI StrRetToStrA(struct _STRRET*,const struct _ITEMIDLIST*,LPSTR*);
-HRESULT WINAPI StrRetToStrW(struct _STRRET*,const struct _ITEMIDLIST*,LPWSTR*);
+HRESULT WINAPI StrRetToStrA(STRRET*,LPCITEMIDLIST,LPSTR*);
+HRESULT WINAPI StrRetToStrW(STRRET*,LPCITEMIDLIST,LPWSTR*);
#define StrRetToStr WINELIB_NAME_AW(StrRetToStr)
-HRESULT WINAPI StrRetToBufA(struct _STRRET*,const struct _ITEMIDLIST*,LPSTR,UINT);
-HRESULT WINAPI StrRetToBufW(struct _STRRET*,const struct _ITEMIDLIST*,LPWSTR,UINT);
+HRESULT WINAPI StrRetToBufA(STRRET*,LPCITEMIDLIST,LPSTR,UINT);
+HRESULT WINAPI StrRetToBufW(STRRET*,LPCITEMIDLIST,LPWSTR,UINT);
#define StrRetToBuf WINELIB_NAME_AW(StrRetToBuf)
+HRESULT WINAPI StrRetToBSTR(STRRET*,LPCITEMIDLIST,BSTR*);
+
#endif /* NO_SHLWAPI_STRFCNS */