Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Identificazione computer

    Esiste un qualche numero nel computer che lo identifichi univocamente? Se sì, esiste qualche metodo in Java che mi consenta di leggere questo numero? Mi servirebbe per identificare univocamente un pc

  2. #2

    Re: Identificazione computer

    Originariamente inviato da Dreamer89
    Esiste un qualche numero nel computer che lo identifichi univocamente? Se sì, esiste qualche metodo in Java che mi consenta di leggere questo numero? Mi servirebbe per identificare univocamente un pc
    l'univocità in una RETE (sia locale che nel WEB)? è dato dal suo indirizzo IP.....

  3. #3

    Re: Re: Identificazione computer

    Originariamente inviato da hurricane86
    l'univocità in una RETE (sia locale che nel WEB)? è dato dal suo indirizzo IP.....
    Ma l'IP è dinamico, cambia ad ogni connessione... a me servirebbe che sia un numero univoco e che non sia possibile aggirarlo (come nel caso dei cookie). Esiste qualcosa del genere?

  4. #4

    Re: Re: Re: Identificazione computer

    Originariamente inviato da Dreamer89
    Ma l'IP è dinamico, cambia ad ogni connessione... a me servirebbe che sia un numero univoco e che non sia possibile aggirarlo (come nel caso dei cookie). Esiste qualcosa del genere?
    il MAC ADDRESS della scheda di rete ma non saprei proprio come "estrapolarlo dal java".....

  5. #5

    Re: Re: Re: Re: Identificazione computer

    Originariamente inviato da hurricane86
    il MAC ADDRESS della scheda di rete ma non saprei proprio come "estrapolarlo dal java".....
    Ma questo indirizzo MAC vale solo per chi possiede una scheda ethernet?? E chi non ce l'abbia? A me servirebbe un qualche codice valido per qualsiasi computer...

  6. #6

    Re: Re: Re: Re: Re: Identificazione computer

    Originariamente inviato da Dreamer89
    Ma questo indirizzo MAC vale solo per chi possiede una scheda ethernet?? E chi non ce l'abbia? A me servirebbe un qualche codice valido per qualsiasi computer...
    Qua un esempio per prelevare il mac address:

    Codice PHP:
    import java.net.InetAddress;
    import java.net.NetworkInterface;
    import java.net.SocketException;
    import java.net.UnknownHostException;
     
    public class 
    MacAddress {
        
        public static 
    void main(String[] args) {
            try {        
                
    InetAddress address InetAddress.getLocalHost();
                
                
    /*
                 * Get NetworkInterface for the current host and then read the 
                 * hardware address.
                 */
                
    NetworkInterface ni NetworkInterface.getByInetAddress(address);
                
    byte[] mac ni.getHardwareAddress();
                
                
    /*
                 * Extract each array of mac address and convert it to hexa with the 
                 * following format 08-00-27-DC-4A-9E.
                 */
                
    for (int i 0mac.lengthi++) {            
                    
    System.out.format("%02X%s"mac[i], (mac.length 1) ? "-" "");
                }
            } catch (
    UnknownHostException e) {
                
    e.printStackTrace();    
            } catch (
    SocketException e) {
                
    e.printStackTrace();
            }
        }    

    Certo, senza una scheda di rete non puoi fare questo controllo....ma ormai chi non lo ha più? Qualsiasi pc "moderno" ha una scheda di rete (almeno integrata)...Altri modi non li conosco....

  7. #7

    Re: Re: Re: Re: Re: Re: Identificazione computer

    Originariamente inviato da hurricane86
    Qua un esempio per prelevare il mac address:

    Codice PHP:
    import java.net.InetAddress;
    import java.net.NetworkInterface;
    import java.net.SocketException;
    import java.net.UnknownHostException;
     
    public class 
    MacAddress {
        
        public static 
    void main(String[] args) {
            try {        
                
    InetAddress address InetAddress.getLocalHost();
                
                
    /*
                 * Get NetworkInterface for the current host and then read the 
                 * hardware address.
                 */
                
    NetworkInterface ni NetworkInterface.getByInetAddress(address);
                
    byte[] mac ni.getHardwareAddress();
                
                
    /*
                 * Extract each array of mac address and convert it to hexa with the 
                 * following format 08-00-27-DC-4A-9E.
                 */
                
    for (int i 0mac.lengthi++) {            
                    
    System.out.format("%02X%s"mac[i], (mac.length 1) ? "-" "");
                }
            } catch (
    UnknownHostException e) {
                
    e.printStackTrace();    
            } catch (
    SocketException e) {
                
    e.printStackTrace();
            }
        }    

    Certo, senza una scheda di rete non puoi fare questo controllo....ma ormai chi non lo ha più? Qualsiasi pc "moderno" ha una scheda di rete (almeno integrata)...Altri modi non li conosco....
    Ho provato a mandare in esecuzione questo programma, ma viene lanciata una NullPointerException alla riga del for... cosa vorrebbe dire, che non ho una scheda ethernet? o_O Non mi pare...

  8. #8
    non saprei , è un codice che ho trovato sul web e non testato personalmente....

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Re: Re: Re: Re: Re: Re: Re: Identificazione computer

    Originariamente inviato da Dreamer89
    Ho provato a mandare in esecuzione questo programma, ma viene lanciata una NullPointerException alla riga del for... cosa vorrebbe dire, che non ho una scheda ethernet? o_O Non mi pare...
    Premetto che quel codice è compilabile solo a partire da Java 6.
    La documentazione è chiara:

    Returns the hardware address (usually MAC) of the interface if it has one and if it can be accessed given the current privileges.
    Quel metodo restituisce un array di byte se e solo se c'è una scheda di rete presente nel PC (ed è il tuo caso) e se ci sono privilegi sufficienti per poter richiedere tale informazione (evidentemente, per qualche ragione che non conosco, non è il tuo caso).

    Se con i privilegi attuali non si riesce ad accedere a tale informazione, il metodo ritorna null.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.