shdocvw: Implement URLSubRegQueryA.

oldstable
Detlef Riekenberg 2008-10-23 23:05:01 +02:00 committed by Alexandre Julliard
parent 26bba27dc0
commit 507665deee
2 changed files with 28 additions and 1 deletions

View File

@ -37,7 +37,7 @@
148 stub -noname IEGetDisplayName
149 stub -noname IEBindToObjectEx
150 stub -noname _GetStdLocation
151 stub -noname URLSubRegQueryA
151 stdcall -noname URLSubRegQueryA(str str long ptr long long)
152 stub -noname CShellUIHelper_CreateInstance2
153 stub -noname IsURLChild
158 stub -noname SHRestricted2A

View File

@ -3,6 +3,7 @@
*
* Copyright 2001 John R. Sheets (for CodeWeavers)
* Copyright 2004 Mike McCormack (for CodeWeavers)
* Copyright 2008 Detlef Riekenberg
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@ -31,6 +32,7 @@
#include "winreg.h"
#include "shlwapi.h"
#include "wininet.h"
#include "initguid.h"
@ -268,3 +270,28 @@ DWORD WINAPI StopWatchAFORWARD(DWORD dwClass, LPCSTR lpszStr, DWORD dwUnknown,
return p(dwClass, lpszStr, dwUnknown, dwMode, dwTimeStamp);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************
* URLSubRegQueryA (SHDOCVW.151)
*/
HRESULT WINAPI URLSubRegQueryA(LPCSTR regpath, LPCSTR name, DWORD type,
LPSTR out, DWORD outlen, DWORD unknown)
{
CHAR buffer[INTERNET_MAX_URL_LENGTH];
DWORD len;
LONG res;
TRACE("(%s, %s, %d, %p, %d, %d)\n", debugstr_a(regpath), debugstr_a(name),
type, out, outlen, unknown);
if (!out) return S_OK;
len = sizeof(buffer);
res = SHRegGetUSValueA(regpath, name, NULL, buffer, &len, FALSE, NULL, 0);
if (!res) {
lstrcpynA(out, buffer, outlen);
return S_OK;
}
return E_FAIL;
}