如何从浏览器(PHP或Java)执行MSDOS命令

时间:2017-12-26 22:01:22

标签: java php windows command-prompt

我有一个USB线显示器,类似于商店销售点系统中使用的显示器。

要将ABC打印到此行显示,请运行以下命令:

echo ABC > \\.\LCLD9\

这会将ABC打印到行显示。

我正在试图弄清楚如何控制网站的输出,如果可能的话,虽然我不确定它是否可行,因为我可以看到能够从网页上运行任意命令的安全问题。

3 个答案:

答案 0 :(得分:1)

  

我正在试图弄清楚如何控制网站的输出,如果可能的话,虽然我不确定它是否可行,因为我可以看到能够从网页上运行任意命令的安全问题。

在未修改的系统上确实不可能。网页无法在用户的计算机上运行任意命令 - 即安全漏洞的定义

如果您可以让用户提前安装软件,则可以使用serialusb的Chrome扩展程序  或nativeMessaging API将此功能公开给网页。

答案 1 :(得分:0)

答案 2 :(得分:0)

有几种方法可以做到这一点。一种方法是让您的网站将当前文本存储在某处,然后在本地PC上构建一个脚本,询问您的网站当前文本并更新显示。您可以使用任务计划程序安排该脚本定期运行。

这个脚本可以这么简单(假设PHP安装在本地PC上):

<?php
$text = file_get_contents('https://example.com/current_text.php');
shell_exec('echo "' . $text . '" > \\.\LCLD9\');

如果您没有安装PHP并且不想安装它,您可以在Powershell脚本或普通旧批处理文件中执行类似的操作。

请注意,您可能希望为此添加一些额外的检查,您不希望在显示404错误页面,500内部服务器错误或网络错误时意外混乱。