51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 12102|回复: 11
打印 上一主题 下一主题

[资料] 终于搞定如何在LR中调用C#动态链接库了

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-5-24 22:00:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近兴趣所致,做了一把如何将C#的动态链接库调用到LR中去!因为C#是托管代码,那么在LR这种类C代码中是无法调用的,实际做起来也相对简单!就是VC++7再做一次简单的包装!就可以了!具体如何操作,我会在以后的视频中教大家一步步操作的!当然你得有点C#和编写DLL 的基础!呵呵!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-5-25 08:43:08 | 只看该作者
原来是广告。sdlkfj3 sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-5-25 09:28:36 | 只看该作者
C++的DLL调用C#的DLL,没环境,楼上快贴出来吧。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-5-25 11:11:56 | 只看该作者
期待你的视频!
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-7-2 19:31:27 | 只看该作者
sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-7-5 14:49:16 | 只看该作者
期待~~
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-7-6 08:59:08 | 只看该作者
由于C#编绎出来的DLL不是计算机所能直接识别的二进制指令码,他需要CLS进行再解释。
方法1:
1 创建C# DLL,需要指定应用类型为“类库”,代码:
namespace CSLib
{
    public class Class1
    {
        private string name;

        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = "Your Name: " + value;
            }
        }
    }
}

2 C++客户程序,是个控制台应用,代码:
#using "..\debug\CSLib.dll"
using namespace CSLib;

int _tmain(int argc, _TCHAR* argv[])
{
Class1 ^c = gcnew Class1();

c->Name = "zzj";

printf("%s\n", c->Name);

return 0;
}

3 几点要记住:
1 使用#using引用C# DLL,而不是#include;
2 别忘了using namespace CSLib;
3 使用C++/clr语法,采用正确的访问托管对象,即:使用帽子'^',而不是星星'*'。

方法2:将C#写的DLL做成COM;
C#代码开发时,可以通过.NET   SDK里的工具转换成COM接口,再用C++引入后调用
参考: http://www.codeproject.com/csharp/com_object_in_c_.asp
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2019-2-1 16:33
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    8#
    发表于 2007-7-6 16:45:28 | 只看该作者
    期待中!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2011-5-10 16:38:58 | 只看该作者
    期待啥啊?7楼,直接把楼主给搞了。估计很爽吧?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2013-5-3 17:01:59 | 只看该作者
    to  7#:能不能贴出代码看一下啊,我用C++调用C#的动态链接库后,再导出为C dll,在Loadrunner中调用报错“Error: An exception was raised while calling invocation function in interpreter extension cciext.dll: System Exceptions: Uknown.”
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2013-5-6 14:58:35 | 只看该作者
    收藏了,多谢楼主的想法
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2013-5-6 15:18:44 | 只看该作者
    视频在哪呢,卖关子呢
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-22 13:12 , Processed in 0.075328 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表