MikoĊaj Zalewski wrote:
- /* Windows function 0x14 must be using a different prototype - not compatible */
- DWORD svcctl_GetServiceDisplayNameW(
SvcCtlRpcHandle rpc_handle,
[in] POLICY_HANDLE *hSCManager,
[in] LPCWSTR lpServiceName,
[in,out,size_is(cchBufSize)] WCHAR lpBuffer[],
[in] DWORD cchBufSize,
[out] DWORD *cchLength);
- /* Windows function 0x15 must be using a different prototype - not compatible */
- DWORD svcctl_GetServiceKeyNameW(
SvcCtlRpcHandle rpc_handle,
[in] POLICY_HANDLE *hSCManager,
[in] LPCWSTR lpServiceDisplayName,
[in,out,size_is(cchBufSize)] WCHAR lpBuffer[],
[in] DWORD cchBufSize,
[out] DWORD *cchLength);
}
The lpBuffer parameter should be out-only instead of in and out. I believe this will make the prototype compatible.