求助:讨论如何让自己的应用程序支持脚本,生成exe的问题
我看了董含君先生的文章《讨论如何让自己的应用程序支持脚本》,自己练习做了一个很简单的执行脚本的例子。在VB中用启动按钮执行程序时,没有任何问题。但是用文件-〉生成工程*.exe(K)后,执行这个生成的可执行程序时,会出错,显示一个对话框:“工程*.exe 遇到问题需要关闭。我们对此引起的不便表示抱歉。”另外一个程序则会显示:“找不到vba6.dll文件”。我不知道为什么生成了exe文件后,和vb中的运行效果是不一样的。
这个问题对我而言非常重要,因为我正在做一个软件,而这个执行脚本的功能是必须的一个环节。
大家是不是可以帮我看一下。
以下是在工程1中的Form1里的代码:
(Form1中有四个文本框,Text1输入加数a,Text2输入加数b,Text3输出a+b的和,Text输入公式:a+b,一个按钮Command1)
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
Private Sub Command1_Click()
stepline "dim a as long,b as long"
stepline "a=" & Text1.Text
stepline "b=" & Text2.Text
stepline "clipboard.settext " & Text.Text
Text3.Text = Clipboard.GetText
End Sub
Function stepline(ByVal cmd As String) As Long 'cmd就是vb6代码
Dim l As Long '临时变量,意义不大
l = EbExecuteLine(StrPtr(ByVal cmd), 0, 0, 0) '这就是实质,简单吧
Debug.Print CStr(l) + ":" + cmd '调试用的,无意义
End Function
Private Sub Form_Load()
Text1.Text = 1
Text2.Text = 4
Text.Text = "a+b"
End Sub
非常感谢大家的帮助!
我的电子邮箱地址:gugule@
[[it] 本帖最后由 gugule 于 2008-7-8 18:53 编辑 [/it]]