我把matlab的m文件通过VC++6.0转成dll,然后在vb中引用程序功能是:点击command1生成16个随机数,并写入t.txt,点击command2调用dll中的过程,换成傅里叶变换,并写入t.txt中,command3读取完成傅里叶变换的数据(已保存在t.txt中)
现在功能可以实现,就是点击command2后,程序会自动关闭,但是傅里叶变换已完成,且已写入t.txt,只是要重新打开程序,按command3.求教问题可能出在什么地方呢?vb代码:
'申明dll
Private Declare Sub mlfTest1 Lib "test.dll" ()
’按键一生成随机数,输出到text1,并且写入t.txt
Private Sub Command1_Click()
Randomize
Dim i As Integer
Dim a As Integer
Dim b As String
Text1.Text = ""
Open "c:\t.txt" For Output As #1
For i = 1 To 16
a = Int(10 * Rnd)
Print #1, LTrim(a)
b = b & Str(a) & Chr(13) & Chr(10)
Next i
Text1.Text = b
Close #1End Sub
'按键二调用dll中函数,完成傅里叶变换,并写入t.txt
Private Sub Command2_Click()
mlfTest1
End Sub
’读取t.txt中内容到文本框二
Private Sub Command3_Click()
Dim str1 As String
Dim str2 As String
Text2.Text = ""
Open "c:\t.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, str1
str2 = str2 & str1 & Chr(13) & Chr(10)
Loop
Text2.Text = str2
Close #1End Sub
现在功能可以实现,就是点击command2后,程序会自动关闭,但是傅里叶变换已完成,且已写入t.txt,只是要重新打开程序,按command3.求教问题可能出在什么地方呢?vb代码:
'申明dll
Private Declare Sub mlfTest1 Lib "test.dll" ()
’按键一生成随机数,输出到text1,并且写入t.txt
Private Sub Command1_Click()
Randomize
Dim i As Integer
Dim a As Integer
Dim b As String
Text1.Text = ""
Open "c:\t.txt" For Output As #1
For i = 1 To 16
a = Int(10 * Rnd)
Print #1, LTrim(a)
b = b & Str(a) & Chr(13) & Chr(10)
Next i
Text1.Text = b
Close #1End Sub
'按键二调用dll中函数,完成傅里叶变换,并写入t.txt
Private Sub Command2_Click()
mlfTest1
End Sub
’读取t.txt中内容到文本框二
Private Sub Command3_Click()
Dim str1 As String
Dim str2 As String
Text2.Text = ""
Open "c:\t.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, str1
str2 = str2 & str1 & Chr(13) & Chr(10)
Loop
Text2.Text = str2
Close #1End Sub
解决方案 »
- 用picture比较占内存还是用image,用BMP好呢,还是用JPG或者GIF
- 用vb的data控件,执行语句:data1.recordest.updata时,出错:该操作被关联对象取消。怎么回事??
- 有关万象网管软件
- 求问api函数,如何在我写a.exe中对另一个b.exe程序发送鼠标单击双击消息?
- 新手问题,90分啊~~~~
- 我怎样赋值才能使一个字符中包含引号(是双引号)
- access调用问题!!!
- 我有个全屏的游戏想改成窗口的可以改吗`~
- 导致ado.recordcount=-1的原因哪些?
- 如何使TreeView控件在初始化时展开所有节点目录?
- VB中list控件的使用问题
- 头痛的问题
dll里面有内存泄漏或者VB无法处理的win32异常。