社区
C#
帖子详情
请问,如果动态调用一个dll文件,那么它里面的ref参数应如何传递呢。
ydx
2005-02-28 11:39:54
谢谢
...全文
339
9
打赏
收藏
请问,如果动态调用一个dll文件,那么它里面的ref参数应如何传递呢。
谢谢
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ydx
2005-03-07
打赏
举报
回复
大家在测测传dataset的参数,是不是ds里并没有数据。
ydx
2005-03-06
打赏
举报
回复
对,是可能编译,可是我传的是dataset的参数。为什么传回来后没有内容呢,在msdn中也说不用加特殊的属性的。
另外,如果在调用一个方法时用ref 传递ds,这样是不是可以节省一些内存的占用。
sutalon
2005-03-05
打赏
举报
回复
你可以看看我写的测试代码:
//被测试的方法(加了 ref):
class AB
{
public void Add(ref int result,int y)
{
result += y;
result *= result;
}
}
//测试代码
static void Main(string[] args)
{
//反射生成 类ConsoleAppl.AB 的一个实例
object obj = Activator.CreateInstance(typeof(ConsoleAppl.AB));
//得到 类ConsoleAppl.AB 的类型
Type type = obj.GetType();
//得到 类ConsoleAppl.AB 的 “Add” 方法
MethodInfo method = type.GetMethod("Add");
//构建“Add”方法的参数
object [] parameters =new object[]{1,2};
//激发本方法
method.Invoke(obj,parameters);
//打印出结果,为 9 ,正确
Console.WriteLine(parameters[0].ToString());
Console.Read();
}
sutalon
2005-03-05
打赏
举报
回复
恩,我测试过,好像不用加 ref 的修饰符,可以编译通过,可以执行,结果也对阿
ydx
2005-03-05
打赏
举报
回复
不行,编译不过去。
FJGoodGood
2005-03-05
打赏
举报
回复
应该跟平常的一样吧,加一个 ref :
GetAllCustomer.Invoke(obj,ref a, b, c, ...);
ydx
2005-03-05
打赏
举报
回复
没有人碰到过吗?
DataSet ds=new DataSet();
//InitializeFormMethond.GetCustomer (ref ds);
string fileName=@"\Smartcustomer.dll";
string filePath=Application.StartupPath+fileName;
string typeName="Smartcustomer.Customer";
ObjectHandle objHandle = Activator.CreateInstanceFrom(filePath,typeName);//strAssembly是程序集名称,strClass是类名
Object obj = objHandle.Unwrap();
Type type = obj.GetType();
object []parameters={ds};
MethodInfo GetAllCustomer= type.GetMethod("GetAllCustomer");//strOp方法名称
GetAllCustomer.Invoke(obj,parameters );
如果GetAllCustomer的参数是以ref 传递的,请问该如何写呢?
jiezhi
2005-02-28
打赏
举报
回复
动态加载dll
Asssemble.Load()
ref
获得实例后,
string str = "";
myObject.Method1(ref str);
具体参考msdn吧
ydx
2005-02-28
打赏
举报
回复
能在详细一点吗?
nodeJS
调用
dll
动态
库
调用
dll
动态
库
C#程序
调用
C++
动态
库(
dll
文件
)遇到的坑
C#程序
调用
C++
动态
库(
dll
文件
)遇到的坑C#程序
调用
C++程序
DLL
遇到的坑C#
调用
c++
动态
库(
dll
)方法问题1:报错System.
Dll
NotFoundException问题2:报错System.BadImageFormatException问题3:
参数
有字符串,报错System...
如何用c#
调用
c++的
dll
传递
各种稀奇古怪的
参数
。
如何用c#
调用
c++的
dll
传递
各种稀奇古怪的
参数
声明各种稀奇古怪的
参数
1.
传递
基础数据 int float double等2.
传递
string 并接收 string 声明 我知道用c#
调用
c++是个神烦的事情,在此分享部分传参心得和技巧,不一定...
C#
调用
C++编写的
DLL
函数, 以及各种类型的
参数
传递
C#
调用
C++编写的
DLL
函数, 以及各种类型的
参数
传递
1.如果函数只有传入
参数
,比如2. 如果函数有传出
参数
,比如:3. 带传入数组:4. 带传出数组:5. 传出字符数组:MarshalAs的
参数
用法以及数组的Marshaling 1.如果函数只有...
在VB中
调用
C/C++语言编写的
dll
,数组
参数
的
传递
初次接触
DLL
的用户经常会遇到
一个
问题:在VC环境下创建的
DLL
,在VC里运行的好好的,可在VB
应
用程序中
调用
时却老是出现"
调用
约定错误"、"找不到入口点"之类的错误。这主要是由以下疏漏造成的。 首先,要注意
DLL
...
C#
111,093
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章