1
/* Copyright (c) 2012 Tobias Wolf, All Rights Reserved
3
* This library is free software; you can redistribute it and/or
4
* modify it under the terms of the GNU Lesser General Public
5
* License as published by the Free Software Foundation; either
6
* version 2.1 of the License, or (at your option) any later version.
8
* This library is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
* Lesser General Public License for more details.
13
package com.sun.jna.platform.win32.COM;
15
import com.sun.jna.WString;
16
import com.sun.jna.platform.win32.Guid.IID;
17
import com.sun.jna.platform.win32.OaIdl.DISPID;
18
import com.sun.jna.platform.win32.OaIdl.DISPIDByReference;
19
import com.sun.jna.platform.win32.OaIdl.EXCEPINFO;
20
import com.sun.jna.platform.win32.OleAuto.DISPPARAMS;
21
import com.sun.jna.platform.win32.Variant.VARIANT;
22
import com.sun.jna.platform.win32.WinDef.LCID;
23
import com.sun.jna.platform.win32.WinDef.UINT;
24
import com.sun.jna.platform.win32.WinDef.UINTByReference;
25
import com.sun.jna.platform.win32.WinNT.HRESULT;
26
import com.sun.jna.ptr.IntByReference;
27
import com.sun.jna.ptr.PointerByReference;
29
// TODO: Auto-generated Javadoc
31
* Wrapper class for the IDispatch interface
33
* IDispatch.GetTypeInfoCount 12 IDispatch.GetTypeInfo 16
34
* IDispatch.GetIDsOfNames 20 IDispatch.Invoke 24
36
* @author Tobias Wolf, wolf.tobias@gmx.net
38
public interface IDispatch extends IUnknown {
40
public final static IID IID_IDISPATCH = new IID(
41
"00020400-0000-0000-C000-000000000046");
43
public HRESULT GetTypeInfoCount(UINTByReference pctinfo);
45
public HRESULT GetTypeInfo(UINT iTInfo, LCID lcid,
46
PointerByReference ppTInfo);
48
public HRESULT GetIDsOfNames(IID riid, WString[] rgszNames, int cNames,
49
LCID lcid, DISPIDByReference rgDispId);
51
public HRESULT Invoke(DISPID dispIdMember, IID riid, LCID lcid,
52
DISPID wFlags, DISPPARAMS pDispParams,
53
VARIANT.ByReference pVarResult, EXCEPINFO.ByReference pExcepInfo,
54
IntByReference puArgErr);