有个问题不知道该怎么表述
比如format函数 我知道它是vb的内置函数 但它是包含在vb的哪个对象(不知道是不是该称为对象)中?
如果想引用这个对象(估且称为对象吧) 该怎么引用?
-----------------------------------------------
以下是我遇到的实际问题:
工程中使用了ScriptControl控件(sc)
sc.AddObject "Me",Me,True假如我希望在vbscript中使用vb的Format函数
我可以在From模块中定义个函数
Pubcli Function Format1(s,s) As String
Format1=Format(s,s)
End Function这样就可以在vbscript中间接的使用Format函数了
但实际已经中很难预料vbscript会使用到哪些vbs没用的vb内置函数
所以想知道是否可以在sc中直接引用某个vb对象,达到在sc中可以使用全部vb内置函数的目的?
另外vbs引用winApI是很麻烦的事 是不是不可以也在sc中添加一个"user32"对象?比如:
sc.addobject "vbfunc",vb.????
sc.addobject "Win",user32的实例这样的代码该怎么写?
比如format函数 我知道它是vb的内置函数 但它是包含在vb的哪个对象(不知道是不是该称为对象)中?
如果想引用这个对象(估且称为对象吧) 该怎么引用?
-----------------------------------------------
以下是我遇到的实际问题:
工程中使用了ScriptControl控件(sc)
sc.AddObject "Me",Me,True假如我希望在vbscript中使用vb的Format函数
我可以在From模块中定义个函数
Pubcli Function Format1(s,s) As String
Format1=Format(s,s)
End Function这样就可以在vbscript中间接的使用Format函数了
但实际已经中很难预料vbscript会使用到哪些vbs没用的vb内置函数
所以想知道是否可以在sc中直接引用某个vb对象,达到在sc中可以使用全部vb内置函数的目的?
另外vbs引用winApI是很麻烦的事 是不是不可以也在sc中添加一个"user32"对象?比如:
sc.addobject "vbfunc",vb.????
sc.addobject "Win",user32的实例这样的代码该怎么写?
VB是“非常强大”的,你使用那些内置函数,完全不需要引用什么,直接用就好了。就是说,如同这个format一样,只要是内置的,你只管在ScriptControl里用。
vbs中使用的是
FormatCurrency
FormatDateTime
FormatNumber
FormatPercent
等等 比vb的format麻烦得多,
再比如vb的DoEvents StrConv等都是vbs没有的
先引用Excel 然后让vbs控制VBA 这个办法可以实现我的需求 我也实现了
但毕竟还是绕了个很大的弯子 不是很满意
而且我想知道能不能从根本(vb)上解决问题
我说是也许
需要用 VBA 函数只能封装,没什么好的办法。
以前在asp中用vbs时,没有strconv函数,只好自己封装vba的一些函数到一个dll中,再在asp中用这个dll
用VB或其他的开发工具开发些 COM 组件/ActiveX控件 对象给脚本语言调用
就可以了,如果考虑浏览器对 vbscript 的安全影响,这种字符串分析过程
自己写也是可以的。至于API函数这种东西,在vbscript里,也只能通过
COM 或 ActiveX 对象来实现了,不过估计会被浏览器安全屏蔽掉。
有时候也可以考虑一下 BHO 接口。