DELPHI 如何打开同目录下的程序?
DELPHI如何打开同目录下的程序?目录下有123.EXE怎么打开它呢?SHELLAPI的方法全给我...
DELPHI 如何打开同目录下的程序?目录下有123.EXE怎么打开它呢?SHELLAPI的方法全给我
展开
4个回答
2013-06-23
展开全部
我看了您的问题,既然您说得出SHELLAPI哪么肯定知道ShellExecute,关键应该是‘同目录下’吧。应该是您程序内调用了其它目录,然后没返回做成的错误。应用ExtractFilePath(ParamStr(0))返回目录。我想答案是ShellExecute(handle, 'open', PChar(ExtractFilePath(ParamStr(0))+'123.EXE'), nil, '',SW_SHOWMAXIMIZED);其它几个NIL呀、SW_显示方式呀、''内的打开文件呀、运行参数什么的自己再多找找吧。我随手粘贴一些您看应该已足够 方法一 uses WinProcs; 例:WinExec('D:\GoldPacs\GoldConfig.exe',sw_normal); 方法二 用ShellExecute更好,在USES段加入SHELLAPI,使用时如: 执行"c:\myapp\myapp.exe"参数为"-s" ShellExecute(handle,'open','c:\myapp\myapp.exe','-s',',SW_SHOWNORMAL); 第一个参数为父窗口句柄; 第二个参数为打开方式(OPEN,PRINT两种); 第三个参数为执行文件全路径; 第四个参数为执行文件参数; 第五个参数为执行文件开始运行时的初始目录; 第六个参数为为执行文件运行方式(SW_HIDE,SW_MAXIMIZE,SW_MINIMIZE, SW_RESTORE,SW_SHOW,SW_SHOWDEFAULT,SW_SHOWMAXIMIZED,SW_SHOWMINIMIZED, SW_SHOWMINNOACTIVE,SW_SHOWNA,SW_SHOWNOACTIVATE,SW_SHOWNORMAL); 具体请看帮助。另外,如果为字符串参数,其中包含变量或运算的必需用PCHAR()函数。
2013-06-23
展开全部
有一个函数 可以获取应用程序所在文件夹的路径extractfilepath 利用这个函数 可以使你实现你所说的功能extractfilepath(application.exename);然后你可以使用api函数运行你同文件夹下的程序了函数原型:function ExtractFilePath(const FileName: string): string;
返回文件的路径application.exename 或者是Paramstr(0)都可以使用 ExtractFilePath(application.exename) 或者 ExtractFilePath(paramstr(0)) 这两个都可以返回你应用程序所在文件夹路径
返回文件的路径application.exename 或者是Paramstr(0)都可以使用 ExtractFilePath(application.exename) 或者 ExtractFilePath(paramstr(0)) 这两个都可以返回你应用程序所在文件夹路径
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-23
展开全部
shellexecute(0,nil,pchar('123.exe),nil,nil,0); 关于ShellExecute函数:
在ShellAPI单元中,ShellExecute函数的定义为:
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
Directory: PChar; ShowCmd: Integer): HINST; stdcall;
作用:打开或打印一个指定的文件;
参数说明:
hWnd hwnd, //指向父窗口的句柄;
Operation: PChar, //指向一个null结尾的串以指明要执行的操作;
可以是"open","print","explore",NULL;
FileName: PChar, //指向文件名或文件夹名串;
Parameters: PChar, //指向一个null结尾的串以指明可执行文件的参数;
如果FileName参数为文档,此参数应为NULL;
Directory: PChar, //指向一个null结尾的串以指明默认目录;
ShowCmd: Integer //文件在打开时是否显示;
如果FileName参数为文档,此参数应为0;
在ShellAPI单元中,ShellExecute函数的定义为:
function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,
Directory: PChar; ShowCmd: Integer): HINST; stdcall;
作用:打开或打印一个指定的文件;
参数说明:
hWnd hwnd, //指向父窗口的句柄;
Operation: PChar, //指向一个null结尾的串以指明要执行的操作;
可以是"open","print","explore",NULL;
FileName: PChar, //指向文件名或文件夹名串;
Parameters: PChar, //指向一个null结尾的串以指明可执行文件的参数;
如果FileName参数为文档,此参数应为NULL;
Directory: PChar, //指向一个null结尾的串以指明默认目录;
ShowCmd: Integer //文件在打开时是否显示;
如果FileName参数为文档,此参数应为0;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-23
展开全部
如果你想省事,要求又没那么高的话Winexec也可以的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询