我有一个USB线显示器,类似于商店销售点系统中使用的显示器。
要将ABC
打印到此行显示,请运行以下命令:
echo ABC > \\.\LCLD9\
这会将ABC
打印到行显示。
我正在试图弄清楚如何控制网站的输出,如果可能的话,虽然我不确定它是否可行,因为我可以看到能够从网页上运行任意命令的安全问题。
答案 0 :(得分:1)
我正在试图弄清楚如何控制网站的输出,如果可能的话,虽然我不确定它是否可行,因为我可以看到能够从网页上运行任意命令的安全问题。
在未修改的系统上确实不可能。网页无法在用户的计算机上运行任意命令 - 即安全漏洞的定义。
如果您可以让用户提前安装软件,则可以使用serial,usb的Chrome扩展程序 或nativeMessaging API将此功能公开给网页。
答案 1 :(得分:0)
查看功能 shell_exec 。 http://php.net/manual/en/function.shell-exec.php
答案 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内部服务器错误或网络错误时意外混乱。