小弟是vb新手,想求教一个函数,与jsp的eval函数功能一样.
是将一个字符串变成一个可以执行的语句.
例如
eval("int i")
万分感谢!!

解决方案 »

  1.   

    VB里用EbExecuteLine这个API,不过你一定很失望,编译以后就不能用了,只在IDE里有效。
    Private Declare Function EbExecuteLine Lib "vba6.dll" _
            (ByVal pStringToExec As Long, ByVal Foo1 As Long, _
            ByVal Foo2 As Long, ByVal fCheckOnly As Long) As Long
    ...
    EbExecuteLine StrPtr("Msgbox ""TEST"""), 0&, 0&, Abs(false)VBS的话倒有一个WScript.ExecuteStatement
      

  2.   

    在工程中添加“Microsoft Script Control1.0”控件,然后试试下面的代码Private Sub Command1_Click()
        With Me.ScriptControl1
            .AddCode "dim a,b"
            .AddCode "b=1"
            .AddCode "a=b+10"
            .AddCode "Msgbox a"
        End With
    End Sub  
    或者
      
    Option Explicit
    Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As LongPublic Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
        ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
    End FunctionPrivate Sub Command1_Click()
        ExecuteLine "Dim X As Long, Y As Long"
        ExecuteLine "x = 2"
        ExecuteLine "y = 3"
        ExecuteLine "msgbox " & Text1.Text
    End SubPrivate Sub Form_Load()
        Text1.Text = "x+y"
    End Sub
      

  3.   

    谢谢大家的帮助,但我是要在web里实现的,不是vb的工程