我创建了一个网页,在其中尝试执行之前构建的批处理文件。
我有以下 php 代码:
> $fichier_batch = fopen("C:\\testrequette.bat", "w");
> if ($fichier_batch) {
> // Échapper les barres obliques simples pour éviter l'interprétation incorrecte
> $commande = $requete_sql;
> Ajouter une pause à la fin du fichier batch
> //$commande .= "\nPause";
> Ajouter la commande "cd %~dp0"
> fwrite($fichier_batch, "cd %~dp0\n");
> fwrite($fichier_batch, $commande);
> fclose($fichier_batch);
> echo "<p>Le fichier batch a été créé avec succès.</p>";
> Commande pour exécuter le fichier batch en tant qu'administrateur
> //$commande_exec = "cmd.exe";
> $commande_exec = "C:\\testrequette.bat\"";
> Exécuter le fichier batch
> $resultat_execution = exec($commande_exec, $output, $return_var);
> echo "<p>Résultat de l'exécution du fichier batch : $resultat_execution</p>";
> echo "<pre>Sortie de la commande : " . print_r($output, true) . "</pre>";
> echo "<p>Code de retour : $return_var</p>";
> else {
> echo "<p>Erreur lors de la création du fichier batch.</p>";
> }
我得到了很好的回报:
突击队:阵列
(
[0] =>
[1] => C:\wamp64\www>cd C:\
[2] =>
[3] => C:\>my command
)
但是批处理文件没有执行
你看到什么了吗?
谢谢
我也尝试使用 shell_exec() 函数,但结果相同。` 我尝试: system("cmd /c c: estrequette.bat"); 没有成功。 我暂时用 wamp 服务器在本地尝试一下
感谢您的评论:
文件批处理已在 c:\ 上正确创建:此时没有权限问题:我也尝试从桌面创建并启动它:相同的结果
网络服务器是我自己的机器,在 Windows 上运行。