51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2059|回复: 2
打印 上一主题 下一主题

[原创] 请问有关LR调用C#的dll的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-8-15 15:55:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用C#写了一个com接口的dl,用VC里导入,编译成C接口的dll,再load到LR里,问题是这样的,我在本机上用LR调用没问题,(整个开发过程都是在我机器上做的)但我把这个dll在其他机器的LR里调用就会出现Runtime Error,
C#的代码如下:

using System;
using  System.Runtime.InteropServices;
using System.Net;
using System.IO;
using System.Text;

namespace ClassLibrary1
{
        //COM interface
        [Guid("7FEA291E-C7F3-40ef-BEEB-6E9D8291A8DC")]
        public interface Test
        {
                int MyAdd(int a, int b);
        }

        /// <summary>
        /// Class1 的摘要说明。
        /// </summary>
        ///

        //coclass
        [Guid("6FAE8EEA-F005-45a2-8DC6-BAB6B9645DE1"), ClassInterface(ClassInterfaceType.None)]
        public class Class1 : Test
        {
                public Class1()
                {
                        //
                        // TODO: 在此处添加构造函数逻辑
                        //
                }
               
                public int MyAdd(int a, int b)
                {
                        return a + b;
                }

        }

}



C++代码如下:

#import "..\ClassLibrary1\bin\Debug\ClassLibrary1.tlb" no_namespace named_guids
extern "C" _declspec(dllexport) int add(int a,int b)
{
        CoInitialize(NULL);

        TestPtr pMyObj(CLSID_Class1);

        int result = pMyObj->MyAdd(a, b);

        CoUninitialize();
               
        return result ;
}


我把ClassLibrary1.tlb放到要调用的那台机器上也不行,麻烦大家帮忙看一下,谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-8-15 16:55:29 | 只看该作者
ding
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-8-15 22:24:59 | 只看该作者
其他机器是否跟你自己的机器环境一样,这是首先考虑的问题,比如你本机是开发环境,一般来说一些常用的配置都是正常的。但是到了其他机上就不一样了,特别是负载生成器。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-23 12:49 , Processed in 0.081259 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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