search

Home  >  Q&A  >  body text

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

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

PHP中文网PHP中文网2894 days ago793

reply all(7)I'll reply

  • 怪我咯

    怪我咯2017-04-10 13:10:41

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

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 13:10:41

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

    reply
    0
  • 阿神

    阿神2017-04-10 13:10:41

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

    reply
    0
  • 巴扎黑

    巴扎黑2017-04-10 13:10:41

    给你一个招吧。可用性自己证明。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;
    ?>

    reply
    0
  • 怪我咯

    怪我咯2017-04-10 13:10:41

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

    reply
    0
  • 大家讲道理

    大家讲道理2017-04-10 13:10:41

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

    reply
    0
  • PHPz

    PHPz2017-04-10 13:10:41

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

    reply
    0
  • Cancelreply