#pragma once
#include <Windows.h>


/* S */
typedef BSTR(__stdcall *SYSALLOCSTRING)(_In_opt_ const OLECHAR *psz);
typedef void(__stdcall *SYSFREESTRING)(_In_opt_ BSTR bstrString);

/* V */
typedef HRESULT(__stdcall *VARIANTCLEAR)(_Inout_ VARIANTARG *pvarg);
typedef void(__stdcall *VARIANTINIT)(_Out_ VARIANTARG *pvarg);


typedef struct _VTABLE_OLEAUT32
{

	/* S */
	SYSALLOCSTRING fpSysAllocString;
	SYSFREESTRING fpSysFreeString;

	/* V */
	VARIANTCLEAR fpVariantClear;
	VARIANTINIT fpVariantInit;

} VTABLE_OLEAUT32, *PVTABLE_OLEAUT32;