advapi32: Add stubs for some advapi32 wmi functions.

Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
oldstable
Austin English 2016-07-01 05:08:47 +02:00 committed by Alexandre Julliard
parent 2e99bb9bed
commit ec45ce75b6
4 changed files with 197 additions and 24 deletions

View File

@ -18,7 +18,8 @@ C_SRCS = \
lsa.c \
registry.c \
security.c \
service.c
service.c \
wmi.c
IDL_SRCS = svcctl.idl

View File

@ -795,35 +795,35 @@
# @ stub WmiDevInstToInstanceNameA
# @ stub WmiDevInstToInstanceNameW
# @ stub WmiEnumerateGuids
# @ stub WmiExecuteMethodA
# @ stub WmiExecuteMethodW
@ stdcall WmiExecuteMethodA(long str long long ptr ptr ptr)
@ stdcall WmiExecuteMethodW(long wstr long long ptr ptr ptr)
# @ stub WmiFileHandleToInstanceNameA
# @ stub WmiFileHandleToInstanceNameW
# @ stub WmiFreeBuffer
@ stdcall WmiFreeBuffer(ptr)
# @ stub WmiGetFirstTraceOffset
# @ stub WmiGetNextEvent
# @ stub WmiGetTraceHeader
# @ stub WmiMofEnumerateResourcesA
# @ stub WmiMofEnumerateResourcesW
# @ stub WmiNotificationRegistrationA
# @ stub WmiNotificationRegistrationW
@ stdcall WmiMofEnumerateResourcesA(long ptr ptr)
@ stdcall WmiMofEnumerateResourcesW(long ptr ptr)
@ stdcall WmiNotificationRegistrationA(ptr long ptr long long)
@ stdcall WmiNotificationRegistrationW(ptr long ptr long long)
@ stdcall WmiOpenBlock(ptr long ptr)
# @ stub WmiOpenTraceWithCursor
# @ stub WmiParseTraceEvent
# @ stub WmiQueryAllDataA
@ stdcall WmiQueryAllDataA(long ptr ptr)
# @ stub WmiQueryAllDataMultipleA
# @ stub WmiQueryAllDataMultipleW
# @ stub WmiQueryAllDataW
# @ stub WmiQueryGuidInformation
@ stdcall WmiQueryAllDataW(long ptr ptr)
@ stdcall WmiQueryGuidInformation(long ptr)
# @ stub WmiQuerySingleInstanceA
# @ stub WmiQuerySingleInstanceMultipleA
# @ stub WmiQuerySingleInstanceMultipleW
@ stub WmiQuerySingleInstanceW
# @ stub WmiReceiveNotificationsA
# @ stub WmiReceiveNotificationsW
# @ stub WmiSetSingleInstanceA
@ stub WmiSetSingleInstanceW
# @ stub WmiSetSingleItemA
# @ stub WmiSetSingleItemW
@ stdcall WmiSetSingleInstanceA(long str long long ptr)
@ stdcall WmiSetSingleInstanceW(long wstr long long ptr)
@ stdcall WmiSetSingleItemA(long str long long long ptr)
@ stdcall WmiSetSingleItemW(long wstr long long long ptr)
# @ stub Wow64Win32ApiEntry
@ stdcall WriteEncryptedFileRaw(ptr ptr ptr)

View File

@ -964,12 +964,3 @@ ULONG WINAPI EnumerateTraceGuids(PTRACE_GUID_PROPERTIES *propertiesarray,
FIXME("%p %d %p: stub\n", propertiesarray, arraycount, guidcount);
return ERROR_INVALID_PARAMETER;
}
/******************************************************************************
* WmiOpenBlock [ADVAPI32.@]
*/
NTSTATUS WINAPI WmiOpenBlock(GUID *guid, ULONG access, PVOID *datablock)
{
FIXME("%s %d %p: stub\n", debugstr_guid(guid), access, datablock);
return ERROR_SUCCESS;
}

181
dlls/advapi32/wmi.c 100644
View File

@ -0,0 +1,181 @@
/*
* Win32 advapi/wmi functions
*
* Copyright 2016 Austin English
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "winerror.h"
#include "winternl.h"
#include "wmistr.h"
#define _WMI_SOURCE_
#include "wmium.h"
#include "wine/unicode.h"
#include "wine/debug.h"
#include "advapi32_misc.h"
WINE_DEFAULT_DEBUG_CHANNEL(wmi);
/******************************************************************************
* WmiExecuteMethodA [ADVAPI32.@]
*/
ULONG WMIAPI WmiExecuteMethodA(WMIHANDLE handle, const char *name, ULONG method, ULONG inputsize,
void *inputbuffer, ULONG *outputsize, void *outputbuffer)
{
FIXME(" %p %s %u %u %p %p %p: stub\n", handle, debugstr_a(name), method, inputsize, inputbuffer,
outputsize, outputbuffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiExecuteMethodW [ADVAPI32.@]
*/
ULONG WMIAPI WmiExecuteMethodW(WMIHANDLE handle, const WCHAR *name, ULONG method, ULONG inputsize,
void *inputbuffer, ULONG *outputsize, void *outputbuffer)
{
FIXME("%p %s %u %u %p %p %p: stub\n", handle, debugstr_w(name), method, inputsize, inputbuffer,
outputsize, outputbuffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiFreeBuffer [ADVAPI32.@]
*/
void WMIAPI WmiFreeBuffer(void *buffer)
{
FIXME("%p: stub\n", buffer);
}
/******************************************************************************
* WmiMofEnumerateResourcesA [ADVAPI32.@]
*/
ULONG WMIAPI WmiMofEnumerateResourcesA(MOFHANDLE handle, ULONG *count, MOFRESOURCEINFOA **resource)
{
FIXME("%p %p %p: stub\n", handle, count, resource);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiMofEnumerateResourcesW [ADVAPI32.@]
*/
ULONG WMIAPI WmiMofEnumerateResourcesW(MOFHANDLE handle, ULONG *count, MOFRESOURCEINFOW **resource)
{
FIXME("%p %p %p: stub\n", handle, count, resource);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiNotificationRegistrationA [ADVAPI32.@]
*/
ULONG WMIAPI WmiNotificationRegistrationA(GUID *guid, BOOLEAN enable, void *info,
ULONG_PTR context, ULONG flags)
{
FIXME("%s %u %p 0x%lx 0x%08x: stub\n", debugstr_guid(guid), enable, info, context, flags);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiNotificationRegistrationW [ADVAPI32.@]
*/
ULONG WMIAPI WmiNotificationRegistrationW(GUID *guid, BOOLEAN enable, void *info,
ULONG_PTR context, ULONG flags)
{
FIXME("%s %u %p 0x%lx 0x%08x: stub\n", debugstr_guid(guid), enable, info, context, flags);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiOpenBlock [ADVAPI32.@]
*/
ULONG WINAPI WmiOpenBlock(GUID *guid, ULONG access, WMIHANDLE *handle)
{
FIXME("%s %u %p: stub\n", debugstr_guid(guid), access, handle);
return ERROR_SUCCESS;
}
/******************************************************************************
* WmiQueryAllDataA [ADVAPI32.@]
*/
ULONG WMIAPI WmiQueryAllDataA(WMIHANDLE handle, ULONG *size, void *buffer)
{
FIXME("%p %p %p: stub\n", handle, size, buffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiQueryAllDataW [ADVAPI32.@]
*/
ULONG WMIAPI WmiQueryAllDataW(WMIHANDLE handle, ULONG *size, void *buffer)
{
FIXME("%p %p %p: stub\n", handle, size, buffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiQueryGuidInformation [ADVAPI32.@]
*/
ULONG WMIAPI WmiQueryGuidInformation(WMIHANDLE handle, WMIGUIDINFORMATION *info)
{
FIXME("%p %p: stub\n", handle, info);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiSetSingleInstanceA [ADVAPI32.@]
*/
ULONG WMIAPI WmiSetSingleInstanceA(WMIHANDLE handle, const char *name, ULONG reserved,
ULONG size, void *buffer)
{
FIXME("%p %s %u %u %p: stub\n", handle, debugstr_a(name), reserved, size, buffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiSetSingleInstanceW [ADVAPI32.@]
*/
ULONG WMIAPI WmiSetSingleInstanceW(WMIHANDLE handle, const WCHAR *name, ULONG reserved,
ULONG size, void *buffer)
{
FIXME("%p %s %u %u %p: stub\n", handle, debugstr_w(name), reserved, size, buffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiSetSingleItemA [ADVAPI32.@]
*/
ULONG WMIAPI WmiSetSingleItemA(WMIHANDLE handle, const char *name, ULONG id, ULONG reserved,
ULONG size, void *buffer)
{
FIXME("%p %s %u %u %u %p: stub\n", handle, debugstr_a(name), id, reserved, size, buffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}
/******************************************************************************
* WmiSetSingleItemW [ADVAPI32.@]
*/
ULONG WMIAPI WmiSetSingleItemW(WMIHANDLE handle, const WCHAR *name, ULONG id, ULONG reserved,
ULONG size, void *buffer)
{
FIXME("%p %s %u %u %u %p: stub\n", handle, debugstr_w(name), id, reserved, size, buffer);
return ERROR_CALL_NOT_IMPLEMENTED;
}