IDL Data Type | Java (i.e. the com2java-generated type) | VB [in]* and [out]* not supported | VC++ |
[in] VARIANT_BOOL or [out, retval] VARIANT_BOOL* | boolean | Boolean | boolean |
[in] VARIANT_BOOL* | boolean Use com2java option: Don't treat [in]* parameters as arrays | Boolean | boolean |
[in, out] VARIANT_BOOL* or [out] VARIANT_BOOL* | boolean[] single element array | Boolean | boolean |
[in] unsigned char or [out, retval] unsigned char* | byte | Byte | unsigned char |
[in] unsigned char* | byte Use com2java option: Don't treat [in]* parameters as arrays | Byte | unsigned char |
[in, out] unsigned char* or [out] unsigned char* | byte[] single element array | Byte | unsigned char |
[in] double or [out, retval] double* | double | Double | double |
[in] double* | double Use com2java option: Don't treat [in]* parameters as arrays | Double | double |
[in, out] double* or [out] double* | double[] single element array | Double | double |
[in] float or [out, retval] float* | float | Single | float |
[in] float* | float Use com2java option: Don't treat [in]* parameters as arrays | Single | float |
[in, out] float* or [out] float* | float[] single element array | Single | float |
[in] long or [out, retval] long* | int | Long | long |
[in] long* | int Use com2java option: Don't treat [in]* parameters as arrays | Long | long |
[in, out] long* or [out] long* | int[] single element array | Long | long |
[in] short or [out, retval] short* | short | Integer | short |
[in] short* | short Use com2java option: Don't treat [in]* parameters as arrays | Integer | short |
[in, out] short* or [out] short* | short[] single element array | Integer | short |
[in] BSTR or [out, retval] BSTR* | java.lang.String | String | BSTR |
[in] BSTR* | java.lang.String Use com2java option: Don't treat [in]* parameters as arrays | String | BSTR |
[in, out] BSTR* or [out] BSTR* | java.lang.String[] single element array | String | BSTR |
[in] CURRENCY or [out, retval] CURRENCY* | long | Currency | CURRENCY |
[in] CURRENCY* | long Use com2java option: Don't treat [in]* parameters as arrays | Currency | CURRENCY |
[in, out] CURRENCY* or [out] CURRENCY* | long[] single element array | Currency | CURRENCY |
[in] DATE or [out, retval] DATE* | java.util.Date | Date | DATE |
[in] DATE* | java.util.Date Use com2java option: Don't treat [in]* parameters as arrays | Date | DATE |
[in, out] DATE* or [out] DATE* | java.util.Date[] single element array | Date | DATE |
[in] VARIANT or [out, retval] VARIANT* | java.lang.Object | Variant | VARIANT |
[in] VARIANT* | java.lang.Object | Variant | VARIANT |
[in, out] VARIANT* or [out] VARIANT* | java.lang.Object[] single element array | Variant | VARIANT |
[in] LPDISPATCH or [out, retval] LPDISPATCH* | java.lang.Object | Object | LPDISPATCH |
[in] LPDISPATCH* | java.lang.Object Use com2java option: Don't treat [in]* parameters as arrays | Object | LPDISPATCH |
[in, out] LPDISPATCH* or [out] LPDISPATCH* | java.lang.Object[] single element array | Object | LPDISPATCH |
[in] LPUNKNOWN or [out, retval] LPUNKNOWN* | java.lang.Object | Object | LPUNKNOWN |
[in] LPUNKNOWN* | java.lang.Object Use com2java option: Don't treat [in]* parameters as arrays | Object | LPUNKNOWN |
[in, out] LPUNKNOWN* or [out] LPUNKNOWN* | java.lang.Object[] single element array | Object | LPUNKNOWN |
[in] ITypename* or [out, retval] (ITypename*)* | ITypename | ITypename | ITypename* |
[in] (ITypename*)* | ITypename | ITypename | ITypename* |
[in, out] (ITypename*)* or [out] (ITypename*)* | ITypename[] single element array | ITypename | ITypename* |
[in] Classname* or [out, retval] (Classname*)* | Classname | Classname | Classname* |
[in] (Classname*)* | Classname | Classname | Classname* |
[in, out] (Classname*)* or [out] (Classname*)* | Classname[] single element array | Classname | Classname* |
[in] SAFEARRAY(unsigned char) or [in] SAFEARRAY(unsigned char)* or [out, retval] SAFEARRAY(unsigned char)* | byte[] | Dim arr() As Byte | SAFEARRAY |
[in, out] SAFEARRAY(unsigned char)* or [out] SAFEARRAY(unsigned char)* | byte[][] single element array containing a 1D array | Dim arr() As Byte | SAFEARRAY |
[in] SAFEARRAY(VARIANT_BOOL) or [in] SAFEARRAY(VARIANT_BOOL)* or [out, retval] SAFEARRAY(VARIANT_BOOL)* | boolean[] | Dim arr() As Boolean | SAFEARRAY |
[in, out] SAFEARRAY(VARIANT_BOOL)* or [out] SAFEARRAY(VARIANT_BOOL)* | boolean[][] single element array containing a 1D array | Dim arr() As Boolean | SAFEARRAY |
[in] SAFEARRAY(short) or [in] SAFEARRAY(short)* or [out, retval] SAFEARRAY(short)* | short[] | Dim arr() As Integer | SAFEARRAY |
[in, out] SAFEARRAY(short)* or [out] SAFEARRAY(short)* | short[][] single element array containing a 1D array | Dim arr() As Integer | SAFEARRAY |
[in] SAFEARRAY(long) or [in] SAFEARRAY(long)* or [out, retval] SAFEARRAY(long)* | int[] | Dim arr() As Long | SAFEARRAY |
[in, out] SAFEARRAY(long)* or [out] SAFEARRAY(long)* | int[][] single element array containing a 1D array | Dim arr() As Long | SAFEARRAY |
[in] SAFEARRAY(float) or [in] SAFEARRAY(float)* or [out, retval] SAFEARRAY(float)* | float[] | Dim arr() As Single | SAFEARRAY |
[in, out] SAFEARRAY(float)* or [out] SAFEARRAY(float)* | float[][] single element array containing a 1D array | Dim arr() As Single | SAFEARRAY |
[in] SAFEARRAY(double) or [in] SAFEARRAY(double)* or [out, retval] SAFEARRAY(double)* | double[] | Dim arr() As Double | SAFEARRAY |
[in, out] SAFEARRAY(double)* or [out] SAFEARRAY(double)* | double[][] single element array containing a 1D array | Dim arr() As Double | SAFEARRAY |
[in] SAFEARRAY(CURRENCY) or [in] SAFEARRAY(CURRENCY)* or [out, retval] SAFEARRAY(CURRENCY)* | long[] | Dim arr() As Currency | SAFEARRAY |
[in, out] SAFEARRAY(CURRENCY)* or [out] SAFEARRAY(CURRENCY)* | long[][] single element array containing a 1D array | Dim arr() As Currency | SAFEARRAY |
[in] SAFEARRAY(DATE) or [in] SAFEARRAY(DATE)* or [out, retval] SAFEARRAY(DATE)* | java.util.Date[] | Dim arr() As Date | SAFEARRAY |
[in, out] SAFEARRAY(DATE)* or [out] SAFEARRAY(DATE)* | java.util.Date[][] single element array containing a 1D array | Dim arr() As Date | SAFEARRAY |
[in] SAFEARRAY(BSTR) or [in] SAFEARRAY(BSTR)* or [out, retval] SAFEARRAY(BSTR)* | java.lang.String[] | Dim arr() As String | SAFEARRAY |
[in, out] SAFEARRAY(BSTR)* or [out] SAFEARRAY(BSTR)* | java.lang.String[][] single element array containing a 1D array | Dim arr() As String | SAFEARRAY |
[in] SAFEARRAY(VARIANT) or [in] SAFEARRAY(VARIANT)* or [out, retval] SAFEARRAY(VARIANT)* | java.lang.Object[] | Dim arr() As Variant | SAFEARRAY |
[in, out] SAFEARRAY(VARIANT)* or [out] SAFEARRAY(VARIANT)* | java.lang.Object[][] single element array containing a 1D array | Dim arr() As Variant | SAFEARRAY |
[in] SAFEARRAY(LPDISPATCH) or [out, retval] SAFEARRAY(LPDISPATCH)* | java.lang.Object[] | Dim arr() As IDispatch | SAFEARRAY |
[in, out] SAFEARRAY(LPDISPATCH)* or [out] SAFEARRAY(LPDISPATCH)* | java.lang.Object[][] single element array containing a 1D array | Dim arr() As IDispatch | SAFEARRAY |
[in] SAFEARRAY(LPUNKNOWN) or [out, retval] SAFEARRAY(LPUNKNOWN)* | java.lang.Object[] | Dim arr() As IUnknown | SAFEARRAY |
[in, out] SAFEARRAY(LPUNKNOWN)* or [out] SAFEARRAY(LPUNKNOWN)* | java.lang.Object[][] single element array containing a 1D array | Dim arr() As IUnknown | SAFEARRAY |
[in] SAFEARRAY(ITypename*) or [out, retval] SAFEARRAY(ITypename*)* | java.lang.Object[] | Dim arr() As ITypename | SAFEARRAY |
[in, out] SAFEARRAY(ITypename*)* or [out] SAFEARRAY(ITypename*)* | java.lang.Object[][] single element array containing a 1D array | Dim arr() As ITypename | SAFEARRAY |
[in] SAFEARRAY(Classname*) or [out, retval] SAFEARRAY(Classname*)* | java.lang.Object[] | Dim arr() As Classname | SAFEARRAY |
[in, out] SAFEARRAY(Classname*)* or [out] SAFEARRAY(Classname*)* | java.lang.Object[][] single element array containing a 1D array | Dim arr() As Classname | SAFEARRAY |
//有符号32位整型
Object oFlag = new Integer(1);
//无符号16位
Object oSn = new Short("12345");
//指向一个数组的指针,用于返回句柄
Object pDogHandle[] =new Object[1] ;