2 qufengboy qufengboy 于 2014.12.08 12:05 提问

C#调用PB 的dll接口问题 急~~~~~~~~~~~~~接口

这边有个PB写的gzyblocalcom.dll文件 在C#中调用,
接口开发商 说这个是PB 的dll 是COM组件接口,但是我在C#引用中COMTab页中找不到但是在浏览中能够找到并且添加引用,能够调用方法 yh_ybfw(string a,string b,ref string c ,ref short d ,ref string e);但是出错 提示 无效的字符转换 ,

using gzyblocalcom;
gzyblocalcom.COClass_n_gzyblocalcom gyyb = new gzyblocalcom.COClass_n_gzyblocalcom();

        gyyb.yh_ybfw(((int)EnumProcessKind.医保常用参数医保服务目录下载).ToString(), astr_ctrinfo, ref astr_ctrioinfo, ref aint_appcode, ref aint_appmsg);

    我还尝试了[DllImport("gzyblocalcom.dll", EntryPoint = "yh_ybfw")]注册 还是不行 提示没有正确的切入口 我看了下没有啥问题。
    不知道这个DLL 如何调用了 

求大神指点

2个回答

caozhy
caozhy   Ds   Rxr 2014.12.08 15:36

那么你第一种调用应该思路没问题,也就是视作COM组件调用。问题是你的参数类型是否匹配,函数原型是VS生成的么?

qufengboy
qufengboy   2014.12.08 15:46

不是 是PB9 生成的 但是引用dll 中的方法数据类型是不能修改的啊

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!