从PHP文件启动notepad.exe

时间:2013-10-01 21:39:12

标签: php exec

为了简化问题,我在WAMP Windows XP系统上运行PHP内的批处理文件,我试图从PHP文件启动notepad.exe。我有一个包含....的PHP文件。

<?php
exec('c:\windows\notepad.exe');
?>

当我运行PHP文件时,我可以在任务管理器中看到notepad.exe进程启动,但记事本本身无法打开。我做错了什么?

2 个答案:

答案 0 :(得分:1)

您尝试做的不是正确的方法,记事本应用程序不是在后台执行操作的过程。但是如果你想执行一个需要时间的命令,那么你可以在后台运行外部程序。意味着PHP不会等待外部程序终止。

$cmd = "somecommand";
if (substr(php_uname(), 0, 7) == "Windows"){ 
    pclose(popen("start /B ". $cmd, "r"));  
} 
else { 
    exec($cmd . " > /dev/null &");   
} 

希望这会对你有所帮助。

答案 1 :(得分:0)

如果您想让记事本以交互方式运行,您可以使用PSEXEC

您可以使用exec命令从PHP运行批处理文件,psexec可以从批处理文件中以交互方式运行应用程序。