1

如何使用 Invoke with Reflection 获取 ref 参数(OutputData)。objectValues 是一个带参数的对象数组,将参数发送到“FM_DEC_ENC”方法。该方法包含 8 个参数。其中之一是 outputData re 参数

 mInfo.Invoke("FM_DEC_ENC", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance,
                 null, objectValues,null)

public Int32 FM_DEC_ENC(String AdapterID, String SlotID, String InputData, 
        String DecKeyName, String EncKeyName, HsmCommConstants.ENCRIPTION DecEcbOrCbc,
        HsmCommConstants.ENCRIPTION EncEcbOrCbc, ref String OutputData)

4

1 回答 1

0

通过保留对参数数组的引用,您已经正确地做到了。当方法返回时,结果将在objectValues[7].

FM_DEC_ENC请注意,如果是期望可修改缓冲区的本机方法OutputData(因为System.String无法修改),则这将不起作用。在这种情况下,您还可以将 StringBuilder 指定为参数类型

于 2013-04-03T08:03:32.700 回答