comcustom.java
来自「用于Java 组件和通过Windows COM 对象或Windows DLL 来」· Java 代码 · 共 89 行
JAVA
89 行
//******************************************************************
// Released under the DevelopMentor OpenSource Software License.
// Please consult the LICENSE file in the project root directory,
// or at http://www.develop.com for details before using this
// software.
//******************************************************************
package com.develop.jawin.marshal;
import com.develop.jawin.*;
import com.develop.jawin.constants.*;
import com.develop.util.*;
import java.io.*;
import java.util.*;
/**
* Hand-coded COM stubs
*/
public class COMCustom implements VarTypes, WellKnownGUIDs {
static {
Bootstrap.init();
}
public static IUnknown getIunknownProp(int vtIndex, int iidToken, int peer, int unknown, GUID guid)
throws COMException, IOException
{
byte[] stack = new byte[4];
byte[] result = GenericStub.comInvokeString(":H:N|4U|",
4,
4,
stack,
null,
vtIndex,
iidToken,
peer,
unknown);
return IdentityManager.getCOMPtr(result, 0 , guid);
}
public static DispatchPtr getIdispatchProp(int vtIndex, int iidToken, int peer, int unknown)
throws COMException, IOException
{
byte[] stack = new byte[4];
byte[] result = GenericStub.comInvokeString(":H:N|4U|",
4,
4,
stack,
null,
vtIndex,
iidToken,
peer,
unknown);
return (DispatchPtr) IdentityManager.getCOMPtr(result, 0 , IID_IDispatch);
}
public static int getIntProp(int vtIndex, int iidToken, int peer, int unknown) {
return COMMarshal.invokeoI(vtIndex, iidToken, peer, unknown);
}
public static float getFloatProp(int vtIndex, int iidToken, int peer, int unknown) {
return COMMarshal.invokeoF(vtIndex, iidToken, peer, unknown);
}
public static String getStringProp(int vtIndex, int iidToken, int peer, int unknown) {
return COMMarshal.invokeoG(vtIndex, iidToken, peer, unknown);
}
public static boolean getBooleanProp(int vtIndex, int iidToken, int peer, int unknown) {
return COMMarshal.invokeoI(vtIndex, iidToken, peer, unknown) == VARIANT_TRUE;
}
public static void setIntProp(int vtIndex, int iidToken, int peer, int unknown, int prop) {
COMMarshal.invokeI(vtIndex, iidToken, peer, unknown, prop);
}
public static void setFloatProp(int vtIndex, int iidToken, int peer, int unknown, float prop) {
COMMarshal.invokeF(vtIndex, iidToken, peer, unknown, prop);
}
public static void setBooleanProp(int vtIndex, int iidToken, int peer, int unknown, boolean prop) {
COMMarshal.invokeI(vtIndex, iidToken, peer, unknown, prop ? VARIANT_TRUE : VARIANT_FALSE);
}
public static void setStringProp(int vtIndex, int iidToken, int peer, int unknown, String prop) {
COMMarshal.invokeG(vtIndex, iidToken, peer, unknown, prop);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?