delphi的shellexecute中调用cmd.exe

你好,我想用在delphi中用shellexecute运行pythonscript.所以我设想打开cmd.exe,在此环境中运行python脚本文件。下面这句话Shell... 你好,我想用在delphi中用shellexecute运行python script. 所以我设想打开cmd.exe, 在此环境中运行python脚本文件。下面这句话
ShellAPI.ShellExecute(0, 'open', 'c:\windows\system32\cmd.exe', 'python c:\python27\arcgis10.1\try.py', NIL, SW_SHOW); 这句话编译通过但没有打开cmd.exe,我试过将句柄改为handle可是出现报错
请大家指点迷经 谢谢!
展开
 我来答
RedBaronVIP
2013-02-16 · TA获得超过1147个赞
知道小有建树答主
回答量:655
采纳率:0%
帮助的人:245万
展开全部
你的程序不太对,照我给你的改。能用结贴给分,人的基本素质。
uses ShellAPI;
procedure TForm1.Button1Click(Sender: TObject);
var
fn: string;
begin
fn := 'c:\python27\arcgis10.1\try.py';
ShellExecute(0, 'open', 'cmd.exe', PChar('/c python ' + fn), nil, SW_SHOW);
end;
另外检查一下系统路径里有没有Python:我的电脑->属性 -> 高级 -> 环境变量 -> 系统变量->选中Path->编辑 。
追问
非常感谢,现在我能打开cmd窗口了,我按照你的说法在系统path中加入了‘'c:\python27\arcgis10.1'’,我python安装在这里了。cmd窗口还是显示说python无法被辨认为内部或外部命令。当前path显示在delphi的该程序exe生成的路径里。我在cmd中试过,貌似只有当前path在python安装目录下才能调用python,我现在设想能不能在shellexecute中跑两句命令'cd c:\python27\arcgis10.1',然后再‘python try.py’? 或者你有别的办法吗?
追答
你自己手动打开cmd,调用一下这个python试试。python这玩意怎么这么不靠谱,一般来说安装后就应该自动加入环境变量。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式