《PB调用C#的DLL动态库方法》由会员分享,可在线阅读,更多相关《PB调用C#的DLL动态库方法(2页珍藏版)》请在金锄头文库上搜索。
1、PB调用C#的DLL动态库方法PB调用C#的DLL动态库方法 一、 示例 先在windows系统环境下注册C#的动态库 gacutil /i Iron.dll regasm Iron.dll 我们PB如何调用这个DLL了.看下图(调用方式为OLE) 增加一个实例变量 OLEObject encryption 在窗体的Open事件里面写下以下代码 encryption = Create OLEObject encryption.ConnectToNewObject(encry.encryption) encry 是你C#写的DLL的命名空间的名称 encryption是你的DLL的类名称.别搞错
2、了. 在执行MD5加密的按钮脚本写如下代码 long ll_status string ls_text string ls_dotext ls_text = sle_1.Text ls_dotext = encryption.md5(ls_text,32) sle_2.Text = ls_dotext 如果一切OK的话,会出现下面的画面 至此,程序结束.可以跟大家共同参考,学习. 判断OLE控件是否注册的办法,ConnectToNewObject用法 、 要判断OLE控件是否注册?在PB里面可以使用ConnectToNewObject的办法.ConnectToNewObject用法例子如下:
3、OLEObject demo; long my_return demo = CREATE OLEObject my_return=demo.ConnectToNewObject(“BB4780D9-391E-41B5-B366-434ADCFD7D10”) 上面的返回结果有好几种,详细请参考帮助说明书.当返回0时,表示此OLE控件已经注册成了. ConnectToNewObject原本的用法是这样的: oleobject.ConnectToNewObject ( classname ) classname 是控件名称.在PB窗口中插入一个ole控件时可以看到已注册的OLE控件的信息,包括控件的名称.但是你使用控件名称来连接控件时,有可能返回-2或-3,就是提示你说没有这个控件.实际上却已经成功注册了.这种问题都是非一般的问题,有点邪门. 解决办法: classname 可以是控件名称,也可以控件ID,就是OLE控件属性里面的GUID了.本文的例子ConnectToNewObject(“BB4780D9-391E-41B5-B366-434ADCFD7D10”),就是使用GUID来调用的.结果成功了.