sabato 28 settembre 2019

Net Verificare la connessione internet e rilevare il mac Address

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/programmazione/art_net-verificare-la-connessione-internet-e_1641.aspx

In questo vedremo come da una windows application, possiamo verificare la connessione internet del nostro pc, e rilevare il macAddress del nostro pc.
Il MacAddress è un codice univoco per ogni pc esistente e ci permette di distinguerlo tra i pc di tutto il mondo.
Con tale codice per esempio può tornare utile nel caso che si vuole rintracciarlo in caso di furti e quindi accertarsi che il computer rubato è proprio quello personale.
Per rilevare il proprio identificativo, andate nel prompt dei comandi e digitate il seguente comando “Ipconfing /al” , verranno visualizzati una serie di dati relativi alla rete, il tutto come mostrato in figura 1.


Figura 1 – il risultato del comando

Per sapere il MacAddress, bisogna annottarsi il valore presente nella voce “Indirizzo Fisico” quello è il codice univoco.
Stesura del codice
Terminata la parte introduttiva scriviamo il codice per verificare se la connessione internet è presente e per rilevare il macAddress.
Dopo aver creato un progetto di tipo Windows Application, tramite il linguaggio di proprio interesse, nella visualizzazione form, inserite due controlli di tipo pulsante, una per visualizzare un messaggio che indica se siamo connessi e l’altro per rilevare il codice univoco.
Dopo aver impostato la nostra form, passiamo in visualizzazione codice.
In modalità codice, dobbiamo inserire lo spazio dei nomi per utilizzare determinate classi, in alto, sopra ad ogni dichiarazione, inseriamo lo spazio dei nomi per utilizzare le classi riguardante il networking.
Qui di seguito si riporta il frammento di codice per entrambi i linguaggi.




VB.Net

Imports System.Net.NetworkInformation

 

C#

using System.Net.NetworkInformation;



Lo spazio di nomi precedentemente inserito ci permette di gestire alcuni aspetti della connessione.
Nella classe form, scriviamo una funzione che rileva se siamo connessi o no ad internet, restituendo vero se è connesso o falso. Verrà utilizzata la classe Ping, con il quale si rileva se è raggiungibile il sito “ www.iprogrammatori.it “ e la classe “PingOptions” e “PingReply”.
Qui di seguito le dichiarazione delle suddette operazioni per entrambi i linguaggi di programmazione.



VB.Net

Public Function VerificaConnessioneInternet() As Boolean

        Try

            Dim PingSito As Ping = New Ping()

            Dim host As String = "www.iprogrammatori.it"

            Dim buffer As Byte() = New Byte(31) {}

            Dim timeout As Integer = 1000

            Dim pingOpzioni As PingOptions = New PingOptions()

            Dim reply As PingReply = PingSito.Send(host, timeout, buffer, pingOpzioni)

 

            If reply IsNot Nothing AndAlso reply.Status = IPStatus.Success Then

                Return True

            End If

 

            Return False

        Catch

            Return False

        End Try

    End Function

 

C#

public   bool VerificaConnessioneInternet()

        {

            try

            {

                Ping PingSito = new Ping();

              

                String host = "www.iprogrammatori.it";

                byte[] buffer = new byte[32];

                int timeout = 1000;

                PingOptions pingOpzioni = new PingOptions();

                PingReply reply = PingSito.Send(host, timeout, buffer, pingOpzioni);

                if (reply != null && reply.Status == IPStatus.Success)

                {

                    return true;

                }

                return false;

            }

            catch

            {

                return false;

            }

        }




Torniamo in visualizzazione grafica della nostra form, per il pulsante riguardante la verifica della connessione internet e facciamo doppio click, in modo che passiamo in visualizzazione codice nell’evento click.


VB.Net

Private Sub BtnPing_Click(sender As Object, e As EventArgs) Handles BtnPing.Click

        If VerificaConnessioneInternet() = True Then

            MessageBox.Show("Connesso")

        Else

            MessageBox.Show("Non Connesso")

        End If

    End Sub

 

C#

private void BtnPing_Click(object sender, EventArgs e)

        {

            if (VerificaConnessioneInternet() == true)

                MessageBox.Show("Connesso");

            else

                MessageBox.Show("Non Connesso");

        }



Ora non ci resta che testare il codice precedente scritto, il tutto  avviando il nostro programma.
Terminata questa parte scriviamo il codice per la gestione del rilevamento del macaddress.
Passiamo in visualizzazione codice, e nella classe form, scriviamo una funzione per la gestione della scheda, in particolare una funzione che restituisce un oggetto di tipo “PhysicalAddress” .
Qui di seguito si riporta il frammento di codice di tale funzione.



VB.Net

Public Function GetMacAddress() As PhysicalAddress

        Try

            Dim IndirizzoMacAddress As PhysicalAddress = Nothing

 

            For Each Scheda As NetworkInterface In NetworkInterface.GetAllNetworkInterfaces()

 

                If Scheda.NetworkInterfaceType = NetworkInterfaceType.Ethernet AndAlso Scheda.OperationalStatus = OperationalStatus.Up Then

                    Return Scheda.GetPhysicalAddress()

                End If

 

                If Scheda.NetworkInterfaceType = NetworkInterfaceType.Wireless80211 AndAlso Scheda.OperationalStatus = OperationalStatus.Up Then

                    IndirizzoMacAddress = Scheda.GetPhysicalAddress()

                End If

            Next

 

            Return IndirizzoMacAddress

        Catch networkInformationException As NetworkInformationException

            MessageBox.Show(networkInformationException.Message)

        End Try

 

        Return Nothing

    End Function

 

C#

public   PhysicalAddress GetMacAddress()

        {

            try

            {

                PhysicalAddress IndirizzoMacAddress = null;

                foreach (NetworkInterface Scheda in NetworkInterface.GetAllNetworkInterfaces())

                {

                    if (Scheda.NetworkInterfaceType == NetworkInterfaceType.Ethernet && Scheda.OperationalStatus == OperationalStatus.Up)

                    {

                        return Scheda.GetPhysicalAddress();

                    }

                    if (Scheda.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 && Scheda.OperationalStatus == OperationalStatus.Up)

                    {

                        IndirizzoMacAddress = Scheda.GetPhysicalAddress();

                    }

                }

                return IndirizzoMacAddress;

 

            }

            catch (NetworkInformationException networkInformationException)

            {

                MessageBox.Show(networkInformationException.Message);

               

            }

            return null;
        }






Ora passiamo in visualizzazione codice, in modo da fare click sul pulsante che permette di visualizzare a video il codice MacAddress, in modo che si passa in visualizzazione codice nell’evento click di tale pulsante.
Il codice qui di seguito non fa altro che visualizzare a video il dato rilevato.



VB.Net

Private Sub BtnMacAddress_Click(sender As Object, e As EventArgs) Handles BtnMacAddress.Click

        Dim risultato As PhysicalAddress = GetMacAddress()

        MessageBox.Show(risultato.ToString())

    End Sub

 

C#

  private void BtnMacAddress_Click(object sender, EventArgs e)

        {

            PhysicalAddress risultato = GetMacAddress();

            MessageBox.Show(risultato.ToString());

        }




Conclusioni

In questo articolo abbiamo visto come poter gestire informazioni utili sulla gestione della connettività. Il rilevamento della connessione internet, può tornare utile nel caso che dobbiamo effettuare operazioni costanti, e quindi tramite applicazione o batch saper gestire le interruzioni di connettività. Mentre la gestione del macaddress, può tornare utile in vari ambiti, per esembio nel campo della sicurezza con il quale può tornare utile nel caso di rintracciare e certificare la proprietà del pc, oppure in ambito di licenze software o altro.

venerdì 27 settembre 2019

Download gratuito gioco Everything



Fino al 3 ottobre 2019 è possibile scaricare gratuitamente il gioco "Everything" a questo https://www.epicgames.com/store/it/product/everything/home .
Per maggiori informazioni ed altro visitate il sito indicato.

Sql Server eliminare utente login

Lo script SQL qui di seguito, elimina in forma definitiva l'utente di login creato nel database SQL server, dove "NomeLogin" è l'utenza che si vuole eliminare.


DROP Login NomeLogin 

giovedì 26 settembre 2019

Open Source Day l'evento nazionale di Red Hat



Torna il grande evento nazionale Red Hat sul mondo open source, che le due tappe di Roma e Milano con il quale gli esperti nazionali e non, illustreranno le novità ed il miglior utilizzo degli strumenti informatici di Redhat,
Un evento gratuito ed aperto a tutti con il quale scoprire le potenzialità dei prodotti software open source che daranno valore aggiunto.
Il Open Source Day, che si tiene ogni anno a Roma e Milano, è un appuntamento fisso al quale non si può mancare.
Per iscrizioni e maggiori informazioni visitate il seguente sito https://events.redhat.com/profile/form/index.cfm?PKformID=11E150E8-1878-48CE-848F-B980E66CFCF3 per la tappa della città di Roma, e qui https://events.redhat.com/profile/form/index.cfm?PKformID=BEA795F0-AAB2-404F-BE8D-B3471888FB04 per la città di Roma.

Creazione istanza LocalDB di Microsoft SQL Server 2016 Express tramite il comando SqlLocalDB

Da riga di comando, possiamo creare un'istanza di LocalDB per il database Microsoft Sql Server 2016 Express.
Qui di seguito un esempio di istanza denominata "MSSQLLocalDB".



SqlLocalDB.exe create "MSSQLLocalDB " 12.0 -s