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.