为什么我的程序在编译环境下调试时都是正确的,运行一点儿问题都没有,但是打了安装包后,某些功能运行时提示“运行时错误76:未找到路径”
问题解决后追加30分。
可能是因为你在程序中引用的路径是绝对路径吧。建议使用不易出错的相对路径,如App.Path(程序所在文件夹)、Environ("windir")(系统文件夹,一般是C:\WINDOWS)等等,这些路径有时都会发生变化,使用相对路径能很好的避免这些问题。或者你在哪些出错的代码前面加上On Error Resume Next,跳过那些错。追问
是的,我都是用的绝对路径,我不太会用相对路径,我只要把绝对路径的盘符改成app.path就行吗?
追答App.Path是程序所在文件夹,他不是盘符。比方说你的程序是C:\123\456.exe,那么App.Path就是C:\123。
此外还有一些常用的:
系统盘符用Environ("SystemDrive"),它通常代表C:\。
Environ("SystemRoot")它通常代表C:\WINDOWS。
Environ("UserProfile")它通常代表"C:\Documents and Settings\Administrator"
上述当中的前者可以在VB中直接引用,因为后者可能会变。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2011-07-03
如果你的数据文件放在和你的编译后的程序同一个目录,请用app.path 关键字表示程序的目录
如:
d:\Vb开发\Eml.exe
d:\Vb开发\Eml.dat
那么你的程序Eml.exe要引用Eml.dat则写:
App.path & "\Eml.dat"
App.path返回的路径不包含最深的文件夹的\符号追问
如:
d:\Vb开发\Eml.exe
d:\Vb开发\Eml.dat
那么你的程序Eml.exe要引用Eml.dat则写:
App.path & "\Eml.dat"
App.path返回的路径不包含最深的文件夹的\符号追问
我在程序中使用的是绝对路径,我的数据文件放在C:\SHJ\目录下,在程序中也是直接调用这个目录下的文件。我仔细检查了所有的路径,没有问题的。我必须改成相对路径吗?
第2个回答 2011-07-03
安装包是默认安装的吧,尽量放在一个盘下,另外,如果office装成2003版以外的,也容易出现问题
第3个回答 2011-07-03
代码中尽量不要或少用绝对路径,避免出错!
修改下相关文件路径!
修改下相关文件路径!