lunedì 22 settembre 2025

download vpn gratuita hide

 

vpn gratuita

Una VPN gratuita, senza limiti di tempo, che permette di gestire la sicurezza e privacy dei navigatori.

Il sito Hide, qui https://hide.me/it/ in lingua italiana, tra i vari piani tariffari, permette di scaricare in versione gratuita (con meno funzionalità di quelle a pagamento) il programma VPN .

Per maggiori informazioni e download visitate il sito indicato.

 

domenica 21 settembre 2025

C# trasformare un’immagine jpg a colore in bianco e nero .Net 9

In questo frammento di codice, vedremo come tramite le classi presenti nello spazio dei nomi System.Drawing, possiamo trasformare un’immagine a colori di tipo Jpeg, in una nuova immagine in bianco nero.

Tramite linguaggio di programmazione C# ed in un progetto di tipo Windows Forms, con la versione 9 di .Net, trasformeremo l’immagine in bianco e nero.

In alto, sopra ad ogni dichiarazione, inseriamo lo spazio dei nomi per la gestione della grafica.

Di seguito si riporta il frammento di codice delle suddette operazioni.


C#

using System.Drawing.Imaging;



Si crea una funzione, che riceve due parametri, uno riguardante il percorso e nome dell’immagine a colori,  e l’altro il percorso e nome della nuova immagine che sarà in bianco e nero.  La funzione esaminerà i vari pixel dell’immagine a calori, per ricreare una nuova immagine a scala di colori grigi.


Di seguito si riporta il codice delle suddette operazioni.


C#

public static  void ConvertiBiancoNero(string inputImagePath, string outputImagePath)

{

    try

    {

        // Carica l'immagine

        Bitmap ImmagineOriginale = new Bitmap(inputImagePath);

        Bitmap NuovaImmagineBiancoNero = new Bitmap(ImmagineOriginale.Width, ImmagineOriginale.Height);

 

        //Effettua un ciclo per i vari pixel

        for (int y = 0; y < ImmagineOriginale.Height; y++)

        {

            for (int x = 0; x < ImmagineOriginale.Width; x++)

            {

                //Rileviamo il colore del pixel

                Color pixelColore = ImmagineOriginale.GetPixel(x, y);

 

                //Calcola la media dei valori RGB

                int grayScale = (int)((pixelColore.R + pixelColore.G + pixelColore.B) / 3);

 

                //Crea un nuovo colore in scala di grigi

                Color newColor = Color.FromArgb(grayScale, grayScale, grayScale);

 

                // Imposta il nuovo colore nel pixel corrispondente dell'immagine di output

                NuovaImmagineBiancoNero.SetPixel(x, y, newColor);

            }

        }

 

        // Salva l'immagine in bianco e nero

        NuovaImmagineBiancoNero.Save(outputImagePath, ImageFormat.Jpeg); 

 

        MessageBox.Show("Immagine trasformata in bianco e nero.");

    }

    catch (Exception ex)

    {

        MessageBox.Show("Errore durante la conversione: " + ex.Message);

    }

}




Di seguito si riporta il frammento di codice da inserire nell’evento click di un pulsante, per richiamare tale funzione.


C#

private void BtnBiancoNero_Click(object sender, EventArgs e)

 {

     string immagineOriginale = "C:\\varie\\faro.jpg"; 

     string nuovaImmagine = "C:\\varie\\faroBiancoNero.jpg";

     ConvertiBiancoNero(immagineOriginale, nuovaImmagine);

 }


sabato 20 settembre 2025

spazio web gratuito Asp.Net per la creazione dei siti hosting free asp.net monsterasp

 


Trovare uno spazio web gratuito che supporti la tecnologia Asp.Net, sono rari, Monsterasp, visibile qui https://www.monsterasp.net/ , è un sito che permette tra i vari piani tariffari quello di avere uno spazio gratuito che supporta Asp.Net.

L'hosting gratuito permette di utilizzare le ultime versioni della tecnologia .Net ed Asp.Net, con le più recenti versioni del Framework.

Un ottimo sito che permette gratuitamente di avere a disposizione senza limiti di tempo, uno spazio web che supporti la tecnologia Asp.Net


venerdì 19 settembre 2025

C# rilevare i programmi che stanno comunicando in rete

 

C# programmi che usano la rete

In questo esempio di codice nel linguaggio di programmazione C#, vediamo come rilevare tutti i programmi in esecuzione sul computer con Windows, che hanno aperta una comunicazione esterna.

In particolare, rileviamo il nome del programma, il PID, ip remoto e lo stato, ottenuti questi valori verranno visualizzati nella griglia.


Di seguito il frammento di codice delle suddette operazioni.


C#

private void BtnNetStat_Click(object sender, EventArgs e)

{

    Process p = new Process();

    p.StartInfo.FileName = "netstat";

    p.StartInfo.Arguments = "-ano";

    p.StartInfo.RedirectStandardOutput = true;

    p.StartInfo.UseShellExecute = false;

    p.StartInfo.CreateNoWindow = true;

    p.Start();

 

    string output = p.StandardOutput.ReadToEnd();

    p.WaitForExit();

    DataColumn dtcNomeProcesso = new DataColumn("Nome Processo", typeof(string));

    DataColumn dtcPid = new DataColumn("PID", typeof(string));

    DataColumn dtcIpRemoto = new DataColumn("Ip remoto", typeof(string));

    DataColumn dtcStato = new DataColumn("Stato", typeof(string));

    DataTable dttDati = new DataTable();

    dttDati.Columns.Add(dtcNomeProcesso);

    dttDati.Columns.Add(dtcPid);

    dttDati.Columns.Add(dtcIpRemoto);

    dttDati.Columns.Add(dtcStato);

 

 

    var righe = output.Split(new[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries);

    foreach (var line in righe)

    {

        if (line.StartsWith("  TCP") || line.StartsWith("  UDP"))

        {

            var parts = Regex.Split(line.Trim(), @"\s+");

            if (parts.Length >= 5)

            {

                string ipRemoto = parts[2];

                string stato = parts[3];

                string pid = parts[4];

 

                if (ipRemoto != "0.0.0.0:0" && ipRemoto != "*:*")

                {

                    try

                    {

                        DataRow riga = dttDati.NewRow();

                               

                              

                        var process = Process.GetProcessById(int.Parse(pid));

                               

                        riga["Nome Processo"] = process.ProcessName;

                        riga["PID"] = pid;

                        riga["Ip remoto"] = ipRemoto;

                        riga["Stato"] = stato;

                        dttDati.Rows.Add(riga);

 

                    }

                    catch (Exception ex)

                    {

                         MessageBox.Show($"Si è verificato un errore: {ex.Message}");

                    }

                }

                dataGridView1.DataSource = dttDati;

            }

        }

 

    }

 


giovedì 18 settembre 2025

Strumento online per progettare le interfacce XAML

 

strumento online XAML


Un valido strumento, di grande utilità per chi deve progettare applicazioni che fanno uso di XAML.

Per coloro che sviluppano applicazioni con il linguaggio di programmazione C#, e  progetti di tipo WPF o MAUI o altri modelli dove si fa uso XAML, può tornare utile progettare l'interfaccia grafica tramite il trascinamento dei controlli.

Il seguente sito https://xaml.io/ permette gratuitamente e senza registrazione, di programmare interfacce grafiche XAML.


mercoledì 17 settembre 2025

TypeScript espressione regolare per validare un indirizzo email

Di seguito si riporta un frammento di codice per verificare la correttezza di un indirizzo email tramite espressioni regolari, nel linguaggio di programmazione TypeScript.


let espressioneRegulare = /^[a-zA-Z0-9_+&*-]+(?:\.[a-zA-Z0-9_+&*-]+)*@(?:[a-zA-Z0-9-]+\.)+[a-zA-Z]{2,11}$/;

console.log( RegExp.test("emanuele@dominio.dotnet"));