51Testing软件测试论坛

标题: QTP中调用DLL的ERROR问题 [打印本页]

作者: kevin_swpi    时间: 2007-4-9 10:58
标题: QTP中调用DLL的ERROR问题
我用C#写了个很简单的DLL

using System;
using System.Collections.Generic;
using System.Text;

namespace addSum
{
    public class Class1
    {
        public int sum(int a,int b)
        {
            return a + b;
        }
    }
}


保存于某一目录下  E:\QTP_script\QTP-Dll\addSum\addSum\bin\Debug\addSum.dll
然后在QTP中调用抱错:

ERROR:  无效的过程调用或参数

'------Return The Sum
extern.Declare micInterger,"sum","E:\QTP_script\QTP-Dll\addSum\addSum\bin\Debug\addSum.dll","sum",micInterger,micInterger
msgbox sum("1","2")
/------
作者: kevin_swpi    时间: 2007-4-9 12:50
观望高手sdlkfj9
作者: yhzmw    时间: 2007-4-9 16:08
extern.Declare micInterger,"sum","E:\QTP_script\QTP-Dll\addSum\addSum\bin\Debug\addSum.dll"," ",micInterger,micInterger
msgbox extern.sum("1","2")

这样试试
作者: 刀客    时间: 2007-4-9 17:29
QTP调用的DLL要实现COM规范
作者: yhzmw    时间: 2007-4-12 12:05
楼上的能否讲讲com规范?
作者: kevin_swpi    时间: 2007-4-12 12:34
C#编译的DLL不是规范的DLL
是中间代码
QTP调用的必须是规范的DLL...
作者: happy1tian    时间: 2007-4-13 13:00
kevin_swpi,
请教一下,难道说QTP就无法调用c#写的dll了吗?能不能有啥变通的办法,比如把C#的dll转化成规范的DLL。我从一个外国的网页上看到说使用.net的dll,需要是QTP9.0及其以上版本才行。是这样吗?有谁调用成功过呢?
作者: happy1tian    时间: 2007-4-13 13:02
我天天用的都是.net环境啊,没有其它的类型的dll了。很想知道怎么解决啊




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