我用vb调试是正常,生成exe后部分功能不能实现,就是下面的代码不能实现

Private Sub Command1_Click()
row = ListView1.ListItems.Count

col = ListView1.ColumnHeaders.Count - 1
h = FreeFile
Open "D:\" & "扫描记录" & Format(Now, "yyyymmddHHMM") & ".txt" For Output As #h
For i = 1 To row
tmp = ListView1.ListItems(i).Text
For j = 1 To col
tmp = tmp & vbTab & ListView1.ListItems(i).SubItems(j)
Next j
Print #h, tmp
Next i
Close
MsgBox "扫描记录已成功导出到 D:\" & "扫描记录" & Format(Now, "yyyymmddHHMM") & ".txt"
End Sub
就是这段代码,调试的时候生成一个txt没有问题,生成exe文件后就不能生成txt了。
求大神指点,哪行代码出问题了?

close 没写文件号, 文件正常关闭了吗?
我一般都写文件号的,这样没试过.追问

close 加上文件号 close #h 还是不行,文件肯定是关闭的

追答

这个比较奇怪.正常情况下,文件访问出异常的话应该会报错的.
先写一个特别简单的写文件语句试一下吧. 比如写 d:\test.txt 写一句话就关闭文件.
试验一下看是数据的问题,还是写文件的权限的问题.

追问

应该是数据问题,我试过写常值是没问题的

追答

那加一些调试输出的语句看看输出过程吧,比如在循环里写一个 msgbox 输出中间值,跟踪一下执行过程,再判断是什么地方出了问题.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-10-13
查看是否杀软问题。追问

不是,上午确认过了,不是杀毒软件的问题

相似回答