我的代码如下:
ShellExecute(Application.Handle,'open',PChar('enc.exe'),PChar(edit1.Text),nil,SW_NORMAL);
但是enc.exe是一个将.bmp文件转化为.jpg的程序,该程序与我所编写的程序在同一个目录下, enc.exe的参数是要转化的文件名(包括全路径)。但是我发现,只有将要转换的文件(即参数PChar(edit1.Text))放在我编写的程序同一目录下,程序才调用enc.exe,如果不是同一目录,shellexecute好像根本就不执行一样。但是我单独启动enc.exe 接任何的路径参数都是可以的。
请问这是为什么?shellexecute在哪些情况下才不执行?
ShellExecute(Application.Handle,'open',PChar('enc.exe'),PChar(edit1.Text),nil,SW_NORMAL);
但是enc.exe是一个将.bmp文件转化为.jpg的程序,该程序与我所编写的程序在同一个目录下, enc.exe的参数是要转化的文件名(包括全路径)。但是我发现,只有将要转换的文件(即参数PChar(edit1.Text))放在我编写的程序同一目录下,程序才调用enc.exe,如果不是同一目录,shellexecute好像根本就不执行一样。但是我单独启动enc.exe 接任何的路径参数都是可以的。
请问这是为什么?shellexecute在哪些情况下才不执行?
你再C:\下输入 C:\Project\enc.exe C:\Project\picture.bmp 如果你的enc需要其他同级文件的支持,这样enc就不行的再或者你后面的文件没有给绝对路径如:你再C:\下输入 C:\Project\enc.exe picture.bmp
我以前用VB写一个程序,第一次这样:
Shell App.Path & "\data\Cover.exe " & File1 & " " & File2
没有效果。但是在这行前面把程序运行的目录变成 File1和 File2文件存在的地方,这样:ChDir App.Path & "\Data"
Shell App.Path & "\Data\Cover.exe " & File1 & " " & File2这样就好了。不知道我的这次经历和楼主的是不是一样~
另外我特别希望楼主能把enc.exe共享一下么?我一直在找能安静模式下把BMP转JPG的第三方软件。 [email protected] 谢谢