PHP が $cmd を借用してプログラムを実行した後、それを閉じるにはどうすればよいでしょうか?
PHP を使用して exe プログラム (CRON やその他のスケジュール プログラムではなく、PHP には他の機能があります。これはテストに便利です。メモ帳を例にします) を実行し、開いてから 3 秒後に閉じたいと考えています。 。
操作方法は?
タスクマネージャーを呼び出してタスクを閉じることはできますか?コードを解いてください。ありがとう。
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --><?php $cmd = 'C:\WINDOWS\system32\notepad.exe'; system($cmd); sleep(3); //$cmd1 = 'C:\WINDOWS\system32\taskmgr_original.exe'; //system($cmd1); ?>
<?php $handle = Popen('C:WINDOWSsystem32notepad.exe', "r"); pclose($handle); ?> <br /><font color='#e78608'>------解決策-----------</font><br />popen ― プロセスファイルポインタをオープンします<br /><br />説明<br />resource Popen (string $command, string $mode)<br />指定されたコマンドの実行によって生成されたプロセスへのパイプを開きます。 <br /><br />fopen() によって返されるファイル ポインタと同じファイル ポインタを返します。ただし、一方向であり (読み取りまたは書き込みにのみ使用可能)、pclose() で閉じる必要がある点が異なります。このポインタは、fgets()、fgetss()、および fwrite() で使用できます。 <br /><br />エラーが発生した場合は FALSE を返します。 <br /><br />注: <br /><br />双方向サポートが必要な場合は、proc_open() を使用してください。 <br /><br /><br /><br />例 1 Popen() 例<br /><br /><?php<br />$handle = Popen("/bin/ls", "r");<br />?><br /><br />注: <br /><br />実行するコマンドが見つからない場合は、正当なリソースが返されます。これは奇妙に思えますが、理にかなっています。これにより、シェルによって返されたエラー情報にアクセスできます: <br /><br /><?php<br />error_reporting(E_ALL);<br /><br />/* 標準エラー出力 stderr を取得するためのリダイレクトを追加します。 */<br />$handle = Popen('/path/to/spooge 2>&1', 'r');<br>echo "'$handle'; " . gettype($handle) ";<br>$read = fread($handle, 2096);<br>echo $read;<br>pclose($handle);<br>?> <br><br><br> <br><font color="#e78608">------解決策---------</font><br>