VB6 + chDir命令不会更改目录

时间:2014-01-28 15:38:09

标签: vb6

请咨询

我编译了以下VB6代码(如 - > file - > make project.exe)

但是当我运行它时,我得到一个非常奇怪的东西(我有WIN XP机器)

尽管我定义了这一行:

  "java  -jar  run.jar" 

下的

    C:\Program Files\APP\SW_TOP\Java by chDir

msgBox print diff PATH:

    D:\Documents and Settings\Eytan\Desktop

请告知原因?

为什么chDir不会改变我的VB6代码中的目录 - 出了什么问题?

VB6代码:

  Private Sub Command_Click()
  ChDir ("C:\Program Files\APP\SW_TOP\Java ")
  Shell Environ("COMSPEC") & " /c  java  -jar  run.jar", vbNormalFocus

  MsgBox App.Path

  End Sub

如果还有其他选择,请在

下运行“java -jar run.jar”。
  C:\Program Files\APP\SW_TOP\Java

2 个答案:

答案 0 :(得分:4)

每个驱动器上可以有一个不同的“当前目录”。因此,当您对ChDir的调用更改C:驱动器上的当前目录时,它不会将当前驱动器从D:更改为C:。要切换当前驱动器,请使用ChDrive步骤:

ChDrive "C:"
ChDir "C:\Program Files\APP\SW_TOP\Java "

答案 1 :(得分:1)

您的问题正文询问MsgBox App.Path未显示C:\Program Files\APP\SW_TOP\Java的原因。原因是App.Path具有程序的位置,而不是当前的工作目录。

来自the documentation

  

对于App对象,Path指定项目.VBP文件的路径   从开发环境或运行应用程序时   将应用程序作为可执行文件运行时.exe文件的路径   文件。