Heim  >  Artikel  >  Backend-Entwicklung  >  java-ee - php或java有没有办法获取访问用户的主板,cpu,和硬盘驱动信息

java-ee - php或java有没有办法获取访问用户的主板,cpu,和硬盘驱动信息

WBOY
WBOYOriginal
2016-06-06 20:52:491639Durchsuche

js有一种方法可以,但是需要吧ie的级别设置成最低,并且只支持ie,很不好,不知道php或java有没有好的办法获取

回复内容:

js有一种方法可以,但是需要吧ie的级别设置成最低,并且只支持ie,很不好,不知道php或java有没有好的办法获取

可惜activeX只能使用win版ie,在目前firefox chrome opera safari等浏览器,以及苹果各类操作系统和各种linux发行版市场占有率逐渐提高的情况下,这种方法并不推荐。
flash其实也是可以获取硬件信息的,参见使用flash获取硬件信息的一个网站 http://www.moock.org/asdg/technotes/e...
听说java applet也行
这些都是跨浏览器跨平台的而且几乎大部分浏览器都装有flashplayer以及java applet插件

没有办法,只能获取浏览器的信息,这是http协议决定的

以前遇见过这种需求,写了个active控件,虽然我也很讨厌这玩意,但这是唯一的办法了

给你一个招吧。可用性自己证明。java有jni的功能。你可以用c代码获取cpu之类的信息,然后通过java调用。不知道可行否? (*^__^*) 还有一个方法。
看看这样行不,如果您的是linux系列的。

package jemy;

import java.io.IOException;
import java.io.InputStreamReader;

public class Test {

	public static void main(String[] args) throws IOException   {
		Process p=Runtime.getRuntime().exec("cat /proc/cpuinfo");
		InputStreamReader reader=new InputStreamReader(p.getInputStream());
		char[] buffer=new char[1024];
		StringBuilder sb=new StringBuilder();
		int ch;
		while((ch=reader.read(buffer))!=-1){
			sb.append(new String(buffer,0,buffer.length)).append("\r\n");
		}
		System.err.println(sb.toString());
	}
}

对于php

<?php system("cat /proc/cpuinfo",$cpuinfo);
echo $cpuinfo;
?>

如果要跨平台,用flash,如果只是ie平台用activex。firefox,chrome,safari等等浏览器都有各自Plugin(是插件,不是扩展)的API,如针对某个平台可只用这个平台的插件技术。

打开 VC 6.0 -> new -> MFC ActiveX ControlWizard -> Finish
简单的控件 就生成了

php可以获得服务器的mac信息,但无法获取客户机的信息,如果你要绑定某用户,可以获取他的ip段,浏览器,操作系统,普通用户很少更改os和ip段

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn