社区
C#
帖子详情
关于pb调用C#dll字符串返回值的问题
ntitsg
2012-06-29 04:42:14
有个c#编写的DLL给PB调用
函数:
public void scom(ref sting input ,ref int input_len, ref string output, ref int output_len)
PB接受到的返回的字符串总是少了几位,PB版本为6.5,判断应该是字符编码的问题。
在PB版本不变的前提下有没有办法解决这个问题,随便PB改代码,还是C#改代码都可以(最好是C#改)。
求高手指点。。。。。。
...全文
160
2
打赏
收藏
关于pb调用C#dll字符串返回值的问题
有个c#编写的DLL给PB调用 函数: public void scom(ref sting input ,ref int input_len, ref string output, ref int output_len) PB接受到的返回的字符串总是少了几位,PB版本为6.5,判断应该是字符编码的问题。 在PB版本不变的前提下有没有办法解决这个问题,随便PB改代码,还是C#改代码都可以(最好是C#改)。 求高手指点。。。。。。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ntitsg
2012-06-30
打赏
举报
回复
可是c#里的string只能是unicode
有其他编码的字符类型吗?
caoqinghua
2012-06-30
打赏
举报
回复
传递的字符串必须为gb2312 pb只认这个
PB
調用外部
DLL
PB
調用外部
DLL
.doc
国密SM4加解密SM2签名验签COM组件
DLL
.rar
提供给第三方软件,
调用
COM组件
DLL
方式进行实现,如delphi、
PB
等。
调用
方法与黑龙江省医保社保卡
调用
方式一致。各软件
调用
方法也可自行网上查询,如“delphi
调用
C#
的COM组件
DLL
”。 基于
C#
编写的COM组件
DLL
,可实现SM2签名验签,SM4加解密,100%适用于黑龙江省国家医保接口中进行应用。 1、
调用
DLL
名称:JQSM2SM4.
dll
加解密类名:JQSM2SM4.SM2SM4Util CLSID=5B38DCB3-038C-4992-9FA3-1D697474FC70 2、GetSM2SM4函数说明 函数原型public string GetSM2SM4(string smType, string sM2Prikey, string sM4Key, string sInput) 1)参数一smType:填写固定
字符串
,识别功能,分别实现SM2签名、SM4解密、SM4加密。SM2签名入参填写“SM2Sign”、SM4解密入参填写“SM4DecryptECB”、SM4加密入参填写“SM4EncryptECB”. 2)参数二sM2Prikey:SM2私钥 3)参数三sM4Key:SM4密钥 4)参数四sInput:当smType=SM2Sign,则sInput入参填写SM4加密串;当smType=SM4DecryptECB,则sInput入参填写待解密SM4密文串;当smType=SM4EncryptECB,则sInput入参填写待加密的明文串; 5)函数
返回值
:当smType=SM2Sign,则返回SM2签名信息;当smType=SM4DecryptECB,则返回SM4解密信息;当smType=SM4EncryptECB,则返回SM4加密信息;异常时,则返回“加解密异常:详细错误说明” 3、购买下载后,可加QQ65635204、微信feisng,免费提供技术支持。 4、注意事项: 1)基于.NET框架4.0编写,常规win7、win10一般系统都自带无需安装,XP系统则需安装;安装包详见压缩包dotNetFx40_Full_x86_x64.exe 2)
C#
编写的
DLL
,需要注册,解压后放入所需位置,使用管理员权限运行“JQSM2SM4注册COM.bat”即可注册成功,然后即可提供给第三方软件进行使用,如delphi、
PB
等。
各种语言与VC6.0数据类型的对应关系
各种语言针对VC做的动态库
调用
,他们数据类型对应关系往往难倒众人,这是平时工作中总结出来的对应关系,希望对大家有用
各种语言数据类型对应关系
在开发中经常要用到用VC写的动态库(
DLL
文件)接口要在其他语言中
调用
,最麻烦的就是参数的数据类型对应与该如何去写
调用
函数,这个文档中都有详细的介绍,常用语言
C#
,VB,
PB
,Delphi
调用
VC的
DLL
C#
调用
C++
dll
中关于char * 类型做
返回值
调用
说明
c++ 中是如下定义的 extern "C" __declspec(
dll
export) int test(int id,char *retstr,int *strLen); 其中 retstr 参数会在C++代码里修改后返回给
调用
者,后面的strLen为
字符串
的实际长度。
C#
该如何
调用
呢? 按正常的网上说法,char* 是可以对应到string, [
Dll
Import("test.
dll
", EntryPoint = "test", CallingConvention = Call...
C#
111,111
社区成员
642,556
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章