【问题标题】:How can take ref parameter using Invoke with Reflection如何使用 Invoke with Reflection 获取 ref 参数
【发布时间】:2013-04-03 07:21:11
【问题描述】:

如何使用 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)

【问题讨论】:

    标签: reflection parameter-passing invoke ref


    【解决方案1】:

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

    请注意,如果 FM_DEC_ENC 是一个本机方法,它需要一个可修改的缓冲区作为 OutputData(因为不能修改 System.String),这将不起作用。在这种情况下,you can also specify StringBuilder as parameter type

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-26
      • 2022-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-30
      相关资源
      最近更新 更多