如何在本地使用PHP获取硬盘序列号

4

有没有办法在本地使用PHP或JavaScript获取硬盘序列号或机器序列号?

我们可以通过以下命令在命令提示符中获取:

wmic DISKDRIVE GET SerialNumber

通过这个可以查询设备或机器的序列号。
wmic bios get serialnumber

这是在php或javascript中可能实现的吗?有些内容是关于php的。
<?php

echo DISKDRIVE GET SerialNumber //** some thing like this on local host

?>

需要在本地主机上给Clint一个项目,并且我不希望其他计算机可以访问它(使用PHP)。

不可能!否则将是一个巨大的安全漏洞! - Ben Carey
4
“on localhost” 是什么意思?是在服务器上还是在客户端上? - deceze
在IE中,您可以使用ActiveX...用户必须授予权限才能执行此操作。也许有可能吗? - Wouter de Kort
1
如果服务器上安装了wmic并且您的PHP有运行权限,您当然可以使用shell_exec('wmic DISKDRIVE GET SerialNumber 2>&1')shell_exec('wmic bios get serialnumber 2>&1')。这里的'2>&1'部分是从这个建议中使用的。 - Lenin
1
@Lenin 谢谢兄弟,它有效了...你能把它做好而不是注释掉,这样我就可以接受并关闭这个问题。 - Harinder
显示剩余7条评论
2个回答

7
你当然可以使用

标签。

shell_exec('wmic DISKDRIVE GET SerialNumber 2>&1')

或者
shell_exec('wmic bios get serialnumber 2>&1') 

如果服务器上安装了wmic并且您的PHP有运行它的权限。 '2>&1'部分是从这里的建议中使用的。

1
只是提醒一下,shell_exec在php中有一个变体使用反引号运算符 - Lenin

2

不可能。任何东西都无法破坏浏览器的沙盒,否则将会是一个巨大的安全问题。

唯一的可能性是通过ActiveX,但仍需要签名和更改IE设置。(不跨平台,不跨浏览器)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接