51Testing软件测试论坛

标题: 请问有关LR调用C#的dll的问题 [打印本页]

作者: beckham516    时间: 2007-8-15 15:55
标题: 请问有关LR调用C#的dll的问题
我用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放到要调用的那台机器上也不行,麻烦大家帮忙看一下,谢谢
作者: beckham516    时间: 2007-8-15 16:55
ding
作者: rickyzhu    时间: 2007-8-15 22:24
其他机器是否跟你自己的机器环境一样,这是首先考虑的问题,比如你本机是开发环境,一般来说一些常用的配置都是正常的。但是到了其他机上就不一样了,特别是负载生成器。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2