PB9.0对使用js的encodeuri

项目中遇到问题,公司使用的是pb9.0,需要对url进行编码,并且第三方的文档上边给了js的例子,说是可以使用js的encodeURI对url编码,

于是想到是否可以直接使用js的控件来使用js的函数,百度了一下,发现真有,综合了网友们的办法,写出了以下方法

/*uf_encodeuri
ref string as_url //需要编码的的url
ref string as_error
*/
IF inv_String.of_IsEmpty(as_url) THEN
    as_error = "地址不能为空!"
    RETURN -1
END IF

oleobject lo_jsscript
lo_jsscript = create oleobject 
long ll_ret
ll_ret = lo_jsscript.connecttonewobject("MSScriptControl.ScriptControl")
if ll_ret <> 0 then
    as_error = '创建MSScriptControl.ScriptControl对象出错,请注册msscript.ocx,错误编码:' + String(ll_ret)
   return -1
end if

lo_jsscript.language = "jscript"
String ls_url
ls_url = lo_jsscript.Eval('encodeURI(~'' + as_url + '~')')
as_url = ls_url
destroy lo_jsscript


RETURN 1

注意,在给url编码时,使用了msscript.ocx控件,此控件是系统自带控件,打开浏览器时,如果提示未安装控件,则说明控件被注销或删除了,则按装一个即可。
a) 直接解压msscript.rar包,拷贝msscript.ocx文件到系统目录里:
1、Windows 95/98/Me系统,将msscript.ocx复制到C:\Windows\System目录下。
2、Windows NT/2000系统,将msscript.ocx复制到C:\WINNT\System32目录下。
3、Windows XP/WIN7/Vista系统(64位系统对应64位dll文件,32位系统对应32位dll文件),将msscript.ocx复制到C:\Windows\System32目录下。
4、如果您的系统是64位的请将32位的dll文件复制到C:\Windows\SysWOW64目录具体的方法可以参考这篇文章:win7 64位旗舰版系统运行regsvr32.exe提示版本不兼容
b) 打开"开始-运行-输入regsvr32 msscript.ocx",回车即可解决。希望脚本之家为您提供的msscript.ocx对您有所帮助
如果提示“模块atiacmxx.dll可能与您正在运行的windows版本不兼容,检查该模块是否与regsvr.exe的x86或x64版本兼容” 则打开cmd:
定位到C:\WINDOWS\syswow64目录,输入regsvr32 msscript.ocx,即可。

 

转载于:https://www.cnblogs.com/szxiaofei14/p/5594409.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值