谈谈如何象VB IDE的Immediate一样不使用工程,可以单独执行代码片断

王朝vb·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

有时我可能需要不使用VB的IDE,也不需要建立VB工程而单独执行一段VB代码,比如在我的程序中计算一个表达式,预览一下某个VB内部的函数,而用户想要执行的代码又是不确定的,这样很难用程序控制,因此我们可以直接调用VBIDE的解释功能,随便用户输入什么,只要是有效的就可以正常运行,以上只是我的想法,技术是这个,但是具体使用这么用那就看使用者的意图了.

其实实现很简单,只需要调用一个API

Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As Long

好条件已经充足,下面就看我我们怎么使用了.

Public Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean

ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0

End Function

使用时这样调用一下,

Private Sub Command1_Click()

Dim res As Boolean

res = ExecuteLine(Text1.Text)

End Sub

在Text1中输入一个例句如:MsgBox "^_^,这是一句VB语句",,"OK"

执行一下看看效果如何,很方便吧

这里没有任何高深的技术,虽然是几个API但有的时候作用可不小啊!

^_^

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航