2017-09-11 2 views
0

最終的にデータベースに格納するには、UUIDを生成する必要があります。クライアントブラウザでJavascriptからこれらのUUIDを生成できますか?JavaScriptのクライアントコンピュータのUUIDを取得する

誰でも私のasp.net/またはjavascriptでクライアントコンピュータの識別子を取得する方法を教えてもらえますか?

(?クライアントコンピュータのMACアドレス、または等のCPU、ネットワークカード、などのハードウェアのGUID()私のような考えてクライアントコンピュータindentifierどのようなものです)(クライアントがネットワーク内のイントラネットローカルではありません)

現在、私は、vbscriptでActivexを使って次のコードでクライアントのUUIDを生成しています。

Public Function GetUUID(strComputer) 

    Dim objWmi, colItems, objItem, strUUID, blnValidUUID 

    Set objWmi = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") 
    Set colItems = objWmi.ExecQuery("Select * from Win32_ComputerSystemProduct") 
    strUUID = "" 
    blnValidUUID = False 
    For Each objItem In colItems 
     strUUID = objItem.UUID 
     If Not IsEmpty(strUUID) Or Not IsNull(strUUID) Then 
      If (strUUID <> "00000000-0000-0000-0000-000000000000") And _ 
       (strUUID <> "FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF") Then 
       blnValidUUID = True 
       Exit For 
      End If 
     End If 
    Next 
    Set objWmi = Nothing 
    If Not blnValidUUID Then 
     Set colItems = GetObject("winmgmts:" & strComputer & "\root\cimv2").InstancesOf("Win32_NetworkAdapter") 
     For Each objItem In colItems 
      If (objItem.AdapterType = "Ethernet 802.3") Then 
       If (objItem.Description <> "Packet Scheduler Miniport") Then 
        strUUID = "00000000-0000-0000-0000-" & Replace(objItem.MacAddress, ":", "") 
        Exit For 
       End If 
      End If 
     Next 
     Set NicSet = Nothing 
    End If 
    GetUUID = strUUID 

End Function 

私はもうActiveXを使いたくありません。むしろ私はjavascriptでそれをやりたい

var number = Math.random() // 0.9394456857981651 
number.toString(36); // '0.xtis06h6' 
var id = number.toString(36).substr(2, 9); 

しかし、繰り返しこのスクリプトを実行しているとき、私は同じクライアントに対して異なるUUIDを取得していますjavascriptのコードの上のために:JavaScriptでは、私は次のコードに示すように一意にいくつかのUUIDを生成するためにいくつかのコードを発見しました。

一方、上記のvbscriptは、同じクライアントに対しても一意のIDを生成します。スクリプトが1台のクライアントPCの1000時間だけ実行されても、スクリプトは同じIDを生成しますが、別のPCのために異なるIDを生成します。

私はこれをしたいと思います。誰も私にこれを手伝ってもらえますか? (これはビジネスシステムであり、顧客はクライアントコンピュータのハードウェア識別子を取得することができますので、どうすればasp.net/JAVAScriptで行うことができますか?)。

編集 は基本的に私は、私はIE以外の任意のブラウザでスクリプトを実行することはできません、VBScriptでのActiveX用のJavascript beacauseでそれをやってみたいです。私はこの限界を克服したい。

答えて

0

ブラウザの指紋を調べる必要があります。 ブラウザのIDにFingerprintsを使用できます。fingerprintjs2 EFF'sデモ

関連する問題