51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1790|回复: 7
打印 上一主题 下一主题

[原创] QTP中调用DLL的ERROR问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-9 10:58:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用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")
/------
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-4-9 12:50:26 | 只看该作者
观望高手sdlkfj9
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-4-9 16:08:40 | 只看该作者
extern.Declare micInterger,"sum","E:\QTP_script\QTP-Dll\addSum\addSum\bin\Debug\addSum.dll"," ",micInterger,micInterger
msgbox extern.sum("1","2")

这样试试
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-4-9 17:29:00 | 只看该作者
QTP调用的DLL要实现COM规范
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-4-12 12:05:45 | 只看该作者
楼上的能否讲讲com规范?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2007-4-12 12:34:50 | 只看该作者
C#编译的DLL不是规范的DLL
是中间代码
QTP调用的必须是规范的DLL...
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-4-13 13:00:27 | 只看该作者
kevin_swpi,
请教一下,难道说QTP就无法调用c#写的dll了吗?能不能有啥变通的办法,比如把C#的dll转化成规范的DLL。我从一个外国的网页上看到说使用.net的dll,需要是QTP9.0及其以上版本才行。是这样吗?有谁调用成功过呢?
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-4-13 13:02:00 | 只看该作者
我天天用的都是.net环境啊,没有其它的类型的dll了。很想知道怎么解决啊
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-10 11:44 , Processed in 0.081740 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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