调用另外一个动态库的函数,其中有一个是ref参数...

podded 2006-06-06 11:16:03
A动态库调用B动态库中函数void Fun(string str, ref int i)

但是参数i在单步跟踪B的代码时是正确的,执行完毕并没有输出改变后的正确结果,仍然是A中初始化的值.

在A中我是这样获取B中的方法:GetMethod("Fun",BindingFlags.Instance | BindingFlags.public);

不正确会是什么原因呢??
...全文
149 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
podded 2006-06-13
  • 打赏
  • 举报
回复

准备散分
podded 2006-06-07
  • 打赏
  • 举报
回复
int i =BindingFlags.Instance | BindingFlags.public ??
没搞错吧
BindingFlags.Instance | BindingFlags.public 是GetMethod的参数啊用的是.net的映射机制获取动态库的方法.
BlueDog 2006-06-06
  • 打赏
  • 举报
回复
应改成
int i =BindingFlags.Instance | BindingFlags.public
GetMethod("Fun",ref i);
然后检测i的值
如果直接传一个参数,是个临时变量

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧