mirror of
git://source.winehq.org/git/wine.git
synced 2024-11-01 02:46:32 +00:00
60ac1cec62
DECLSPEC_IMPORT interferes with delay imports on MinGW. Signed-off-by: Alexandre Julliard <julliard@winehq.org>
116 lines
4.8 KiB
C
116 lines
4.8 KiB
C
/*
|
|
* Copyright (C) 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
|
|
*/
|
|
|
|
#ifndef _WMIUM_
|
|
#define _WMIUM_
|
|
|
|
#ifdef _WMI_SOURCE_
|
|
#define WMIAPI __stdcall
|
|
#else
|
|
#define WMIAPI DECLSPEC_HIDDEN __stdcall
|
|
#endif
|
|
|
|
#include <guiddef.h>
|
|
#include <basetsd.h>
|
|
#include <wmistr.h>
|
|
|
|
typedef PVOID WMIHANDLE, *PWMIHANDLE, MOFHANDLE, *PMOFHANDLE;
|
|
|
|
#define MOFCI_RESERVED0 0x00000001
|
|
#define MOFCI_RESERVED1 0x00000002
|
|
#define MOFCI_RESERVED2 0x00000004
|
|
|
|
typedef struct
|
|
{
|
|
char *ImagePath;
|
|
char *ResourceName;
|
|
ULONG ResourceSize;
|
|
UCHAR *ResourceBuffer;
|
|
} MOFRESOURCEINFOA, *PMOFRESOURCEINFOA;
|
|
|
|
typedef struct
|
|
{
|
|
WCHAR *ImagePath;
|
|
WCHAR *ResourceName;
|
|
ULONG ResourceSize;
|
|
UCHAR *ResourceBuffer;
|
|
} MOFRESOURCEINFOW, *PMOFRESOURCEINFOW;
|
|
|
|
DECL_WINELIB_TYPE_AW(MOFRESOURCEINFO)
|
|
DECL_WINELIB_TYPE_AW(PMOFRESOURCEINFO)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define NOTIFICATION_TRACE_FLAG 0x00010000
|
|
#define NOTIFICATION_CALLBACK_DIRECT 0x00000004
|
|
#define NOTIFICATION_CHECK_ACCESS 0x00000008
|
|
|
|
typedef void (WINAPI *NOTIFICATIONCALLBACK)(WNODE_HEADER *, UINT_PTR);
|
|
|
|
typedef struct _WMIGUIDINFORMATION
|
|
{
|
|
ULONG Size;
|
|
BOOLEAN IsExpensive;
|
|
BOOLEAN IsEventOnly;
|
|
} WMIGUIDINFORMATION, *PWMIGUIDINFORMATION;
|
|
|
|
DEFINE_GUID(GUID_REGISTRATION_CHANGE_NOTIFICATION, 0xb48d49a1, 0xe777, 0x11d0, 0xa5, 0xc, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0x10);
|
|
DEFINE_GUID(GUID_MOF_RESOURCE_ADDED_NOTIFICATION, 0xb48d49a2, 0xe777, 0x11d0, 0xa5, 0xc, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0x10);
|
|
DEFINE_GUID(GUID_MOF_RESOURCE_REMOVED_NOTIFICATION, 0xb48d49a3, 0xe777, 0x11d0, 0xa5, 0xc, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0x10);
|
|
|
|
ULONG WMIAPI WmiCloseBlock(WMIHANDLE);
|
|
ULONG WMIAPI WmiDevInstToInstanceNameA(char *, ULONG, char *, ULONG);
|
|
ULONG WMIAPI WmiDevInstToInstanceNameW(WCHAR *, ULONG, WCHAR *, ULONG);
|
|
#define WmiDevInstToInstanceName WINELIB_NAME_AW(WmiDevInstToInstanceName)
|
|
ULONG WMIAPI WmiEnumerateGuids(GUID *, ULONG *);
|
|
ULONG WMIAPI WmiExecuteMethodA(WMIHANDLE, const char *, ULONG, ULONG, void *, ULONG *, void *);
|
|
ULONG WMIAPI WmiExecuteMethodW(WMIHANDLE, const WCHAR *, ULONG, ULONG, void *, ULONG *, void *);
|
|
#define WmiExecuteMethod WINELIB_NAME_AW(WmiExecuteMethod)
|
|
ULONG WMIAPI WmiFileHandleToInstanceNameA(WMIHANDLE, HANDLE, ULONG *, char *);
|
|
ULONG WMIAPI WmiFileHandleToInstanceNameW(WMIHANDLE, HANDLE, ULONG *, WCHAR *);
|
|
#define WmiFileHandleToInstanceName WINELIB_NAME_AW(WmiFileHandleToInstanceName)
|
|
void WMIAPI WmiFreeBuffer(void *);
|
|
#define WmiInsertTimestamp(WnodeHeader) GetSystemTimeAsFileTime((FILETIME *)&((WNODE_HEADER *)WnodeHeader)->TimeStamp)
|
|
ULONG WMIAPI WmiMofEnumerateResourcesA(MOFHANDLE, ULONG *, MOFRESOURCEINFOA **);
|
|
ULONG WMIAPI WmiMofEnumerateResourcesW(MOFHANDLE, ULONG *, MOFRESOURCEINFOW **);
|
|
#define WmiMofEnumerateResources WINELIB_NAME_AW(WmiMofEnumerateResources)
|
|
ULONG WMIAPI WmiNotificationRegistrationA(GUID *, BOOLEAN, void *, ULONG_PTR, ULONG);
|
|
ULONG WMIAPI WmiNotificationRegistrationW(GUID *, BOOLEAN, void *, ULONG_PTR, ULONG);
|
|
#define WmiNotificationRegistration WINELIB_NAME_AW(WmiNotificationRegistration)
|
|
ULONG WMIAPI WmiOpenBlock(GUID *, ULONG, WMIHANDLE *);
|
|
ULONG WMIAPI WmiQueryAllDataA(WMIHANDLE, ULONG *, void *);
|
|
ULONG WMIAPI WmiQueryAllDataW(WMIHANDLE, ULONG *, void *);
|
|
#define WmiQueryAllData WINELIB_NAME_AW(WmiQueryAllData)
|
|
ULONG WMIAPI WmiQueryGuidInformation(WMIHANDLE, WMIGUIDINFORMATION *);
|
|
ULONG WMIAPI WmiQuerySingleInstanceA(WMIHANDLE, const char *, ULONG *, void *);
|
|
ULONG WMIAPI WmiQuerySingleInstanceW(WMIHANDLE, const WCHAR *, ULONG *, void *);
|
|
#define WmiQuerySingleInstance WINELIB_NAME_AW(WmiQuerySingleInstance)
|
|
ULONG WMIAPI WmiSetSingleInstanceA(WMIHANDLE, const char *, ULONG, ULONG, void *);
|
|
ULONG WMIAPI WmiSetSingleInstanceW(WMIHANDLE, const WCHAR *, ULONG, ULONG, void *);
|
|
#define WmiSetSingleInstance WINELIB_NAME_AW(WmiSetSingleInstance)
|
|
ULONG WMIAPI WmiSetSingleItemA(WMIHANDLE, const char *, ULONG, ULONG, ULONG, void *);
|
|
ULONG WMIAPI WmiSetSingleItemW(WMIHANDLE, const WCHAR *, ULONG, ULONG, ULONG, void *);
|
|
#define WmiSetSingleItem WINELIB_NAME_AW(WmiSetSingleItem)
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* _WMIUM_ */
|