关于delphi调用外部exe程序的有关问题

关于delphi调用外部exe程序的问题
现在我在写一个程序,实现点击然后调用外部写好的一个exe程序。 程序是调用了,但是这个程序首先是一个登陆窗口。调用的时候报错 ‘连接数据库失败,无效的用户名口令。’但是单独双击运行这个程序的时候是没有错的。不知道什么原因。

------解决方案--------------------
你的程序与它们在一个子目录吗?
------解决方案--------------------
探讨
不是 是在两个不同的文件夹里面

------解决方案--------------------
先创建一个Bat内容是进入到这个调用的目录
1. bat 
d: 
cd d:\bin
other.exe
然后在应用程序里调用这个Bat
ShellExecute(handle, 'open ', Pchar( 'c:\1.Bat '), nil, nil,SW_ShowNormal);
不必调用程序了
------解决方案--------------------
貌似bat 文件必须和调用的程序放在一个目录底下才能找到
——如果bat里有d:,就先切换盘符了

没想到一个调用程序,还和目录有关
——这可能与被调程序需要访问它的工作目录有关