Hack the declaration of RQueryServiceConfigA. This hack has already been applied to RQueryServiceConfigW.

Based on patches from Bug #3669 by bugboy <martinmnet@hotmail.com>.

svn path=/trunk/; revision=35604
This commit is contained in:
Eric Kohl 2008-08-24 18:08:17 +00:00
parent 1e3bc51e71
commit 413b6d969f
3 changed files with 4 additions and 3 deletions

View file

@ -2475,7 +2475,7 @@ DWORD ROpenServiceA(
DWORD RQueryServiceConfigA( DWORD RQueryServiceConfigA(
handle_t BindingHandle, handle_t BindingHandle,
SC_RPC_HANDLE hService, SC_RPC_HANDLE hService,
LPQUERY_SERVICE_CONFIGA lpServiceConfig, LPBYTE lpBuf, //LPQUERY_SERVICE_CONFIGA lpServiceConfig,
DWORD cbBufSize, DWORD cbBufSize,
LPBOUNDED_DWORD_8K pcbBytesNeeded) LPBOUNDED_DWORD_8K pcbBytesNeeded)
{ {

View file

@ -1461,7 +1461,7 @@ QueryServiceConfigA(SC_HANDLE hService,
/* Call to services.exe using RPC */ /* Call to services.exe using RPC */
dwError = RQueryServiceConfigA(BindingHandle, dwError = RQueryServiceConfigA(BindingHandle,
(SC_RPC_HANDLE)hService, (SC_RPC_HANDLE)hService,
lpServiceConfig, (LPBYTE)lpServiceConfig,
cbBufSize, cbBufSize,
pcbBytesNeeded); pcbBytesNeeded);
if (dwError != ERROR_SUCCESS) if (dwError != ERROR_SUCCESS)

View file

@ -578,7 +578,8 @@ interface svcctl
DWORD RQueryServiceConfigA( DWORD RQueryServiceConfigA(
[in] handle_t BindingHandle, [in] handle_t BindingHandle,
[in] SC_RPC_HANDLE hService, [in] SC_RPC_HANDLE hService,
[out] LPQUERY_SERVICE_CONFIGA lpServiceConfig, [out, unique, size_is(cbBufSize)] LPBYTE lpServiceConfig,
/* FIXME: should be [out] LPQUERY_SERVICE_CONFIGA lpServiceConfig, */
[in, range(0, 1024*8)] DWORD cbBufSize, [in, range(0, 1024*8)] DWORD cbBufSize,
[out] LPBOUNDED_DWORD_8K pcbBytesNeeded); [out] LPBOUNDED_DWORD_8K pcbBytesNeeded);