[ATL][ATL80][ATL100]
[reactos.git] / reactos / dll / win32 / atl / registrar.c
index 1c2207d..830328c 100644 (file)
 
 #include <precomp.h>
 
+#define NO_SHLWAPI_PATH
+#define NO_SHLWAPI_STRFCNS
+#define NO_SHLWAPI_GDI
+#define NO_SHLWAPI_STREAM
+#include <shlwapi.h>
+
 /**************************************************************
  * ATLRegistrar implementation
  */
@@ -226,10 +232,10 @@ static HRESULT do_process_key(LPCOLESTR *pstr, HKEY parent_key, strbuf *buf, BOO
                 strbuf_write(buf->str, &name, -1);
             }else if(key_type == DO_DELETE) {
                 TRACE("Deleting %s\n", debugstr_w(buf->str));
-                RegDeleteTreeW(parent_key, buf->str);
+                SHDeleteKeyW(parent_key, buf->str);
             }else {
                 if(key_type == FORCE_REMOVE)
-                    RegDeleteTreeW(parent_key, buf->str);
+                    SHDeleteKeyW(parent_key, buf->str);
                 lres = RegCreateKeyW(parent_key, buf->str, &hkey);
                 if(lres != ERROR_SUCCESS) {
                     WARN("Could not create(open) key: %08x\n", lres);