if
(pcbAnteprima.Image == null)
{
MessageBox.Show("Nessuna immagine selezionata.");
return;
}
Clipboard.SetImage(pcbAnteprima.Image);
Programmazione .Net, Asp.Net, Entity Framework, MAUI, Sql Server, MongoDB, Filenet e tanto altro materiale informatico.
if
(pcbAnteprima.Image == null)
{
MessageBox.Show("Nessuna immagine selezionata.");
return;
}
Clipboard.SetImage(pcbAnteprima.Image);
comboBox1.DisplayMember = "Text";
comboBox1.ValueMember = "Value";
comboBox1.Items.Add(new { Value = "MioValore",
Text = "TestoDaVisualizzare" });
Quando si utilizza il servizio di posta elettronica di Tiscali accedendo direttamente dal sito ufficiale, può capitare di riscontrare un errore che mostra una pagina bianca con il seguente messaggio:
Bad Request
Your browser sent a request that this server could not understand.
Size of a request header field exceeds server limit.
Apache/2.4.68 (Debian) Server at default Port 80
Se questo errore si verifica con un browser, ad esempio Google Chrome, ma non con un altro, come Microsoft Edge, una possibile soluzione consiste nell'eliminare i dati memorizzati dal browser per il sito interessato.
In particolare, potrebbe essere necessario eliminare i cookie del sito, che possono contenere informazioni di dimensioni eccessive per il limite accettato dal server.
Vediamo come procedere.
Per prima cosa, facciamo clic sui tre puntini in alto a destra nella finestra del browser, come mostrato nella figura 1.
Facendo clic con il tasto sinistro del mouse sui tre puntini, si aprirà un menu a discesa. Tra le voci disponibili, selezioniamo "Impostazioni", come mostrato nella figura 2.
Figura 2 - Il menu del browser ChromeNella finestra che si apre, sul lato sinistro (figura 3), troviamo una serie di voci. Facciamo clic sulla voce "Privacy e sicurezza".
Figura 3 - La voce di menu per la sicurezza e la privacy
Dopo aver fatto clic su "Privacy e sicurezza", nella parte centrale della finestra troviamo diverse opzioni. Quella che ci interessa è "Impostazioni sito" (figura 4), che consente di gestire i dati e le autorizzazioni relativi ai singoli siti web nel browser Chrome.
Figura 4 - La voce delle impostazioni.Dopo aver fatto clic su tale voce, si aprirà una pagina nella quale sono elencati i siti web visitati. Cerchiamo quello relativo a Tiscali.
Una volta individuato il sito, sulla destra troveremo un'icona a forma di cestino, come mostrato nella figura 6.
Figura 6 - L'icona a forma di cestino accanto alla voce TiscaliQuesto pulsante ci permette di cancellare i dati memorizzati per il sito selezionato.
Dopo aver confermato la cancellazione, chiudiamo il browser Chrome e lo riapriamo. Successivamente, visitiamo il sito www.tiscali.it e accediamo alla posta elettronica di Tiscali.
Conclusioni
In questo articolo abbiamo illustrato una delle possibili soluzioni al problema che impedisce di accedere al servizio di posta elettronica di Tiscali tramite il browser. Questo inconveniente può rendere temporaneamente inaccessibile la propria casella di posta elettronica online.
La cancellazione dei dati memorizzati per il sito, in particolare dei cookie, può risolvere il problema e consentire nuovamente l'accesso alla posta elettronica.
private void VerificatoStatoCertificato(X509Certificate2 certificate)
{
// --- CONTROLLO SCADENZA in maniera Semplice ---
DateTime oggi = DateTime.Now;
if (oggi < certificate.NotBefore)
{
MessageBox.Show($"Il certificato non è ancora valido.\nInizio validità: {certificate.NotBefore}",
"Certificato Non Valido", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
if (oggi > certificate.NotAfter)
{
MessageBox.Show($"Il certificato è SCADUTO.\nData di scadenza: {certificate.NotAfter}",
"Certificato Scaduto", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
// --- CONTROLLO REVOCA E CATENA scenario Avanzato ---
using (X509Chain chain = new X509Chain())
{
// Configurazione della politica di validazione
chain.ChainPolicy.RevocationMode = X509RevocationMode.Online; // Forza controllo revoca
online (CRL/OCSP)
chain.ChainPolicy.RevocationFlag = X509RevocationFlag.ExcludeRoot; // Non controlla la revoca
della Root CA
chain.ChainPolicy.VerificationFlags = X509VerificationFlags.NoFlag;
// Build() esegue la verifica effettiva
bool isValidChain =
chain.Build(certificate);
if (isValidChain)
{
MessageBox.Show("Il certificato è VALIDO, non è scaduto e non risulta revocato.",
"Verifica Completata", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
// Se isValidChain è false, analizziamo i motivi
specifici (es. Revocazione)
string erroriTrovati =
"";
foreach (X509ChainStatus status in chain.ChainStatus)
{
// Filtriamo per trovare specificamente la revoca
if (status.Status
== X509ChainStatusFlags.Revoked)
{
erroriTrovati += " IL CERTIFICATO È STATO
REVOCATO!\n";
}
else
{
erroriTrovati += $" {status.Status}: {status.StatusInformation}\n";
}
}
MessageBox.Show($"Il certificato non è valido:\n\n{erroriTrovati}",
"Errore Validazione", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
private void BtnVerifica_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(TxtPercorsoFileP7mVerifica.Text.Trim()))
{
Utility.MessaggioInfo("Selezionare un file firmato
di tipo .p7m");
return;
}
X509Certificate2 certificate = new X509Certificate2(TxtPercorsoFileP7mVerifica.Text.Trim());
//Invoca la funzione
VerificatoStatoCertificato(certificate);
}
Da pochi giorni il blog ha superato i quattro milioni di visitatori. È un risultato che mi fa davvero molto piacere e che spero sia anche il segno di quanto questo spazio possa essere apprezzato e utile a tanti navigatori del web.
In questi anni ho condiviso tanti argomenti in ambito informatico, senza altre finalità se non quella di aiutare e mettere a disposizione le mie conoscenze. Con il tempo, il blog è diventato anche un archivio personale, un luogo in cui raccogliere codice, risorse e siti web da ritrovare e consultare quando ne ho bisogno.
Nel corso di questi anni ho avuto anche l'opportunità di conoscere tante persone, sia virtualmente sia di persona. Ed è sempre un grande piacere: per me il contatto umano conta tanto, moltissimo.
Continuerò a condividere nuovo materiale, con aggiornamenti costanti, articoli e notizie.
Grazie a tutti coloro che sono passati di qui, che mi hanno letto e che continuano a seguire il blog. Questo traguardo è anche vostro!
Lineage 2 Essence è un videogioco di ruolo online multigiocatore di massa (MMORPG), ambientato in un mondo fantasy e caratterizzato da combattimenti PvP, assedi ai castelli e raid contro potenti boss.
Il gioco è disponibile gratuitamente sull’Epic Games Store per sistemi operativi Windows. Sebbene sia free-to-play, include acquisti opzionali all’interno del gioco.
La classificazione PEGI è 12, con contenuti che includono violenza moderata e linguaggio volgare lieve. Sono inoltre presenti interazioni online e acquisti in-game.
Per maggiori informazioni e per scaricare gratuitamente il gioco, visitate la pagina ufficiale dell’Epic Games Store. https://store.epicgames.com/p/lineage-2-essence-8013ce
X509Certificate2 certificato =
new X509Certificate2(PercorsoNomeFileP7m)
DateTime oggi = DateTime.Now;
if (oggi > certificato.NotAfter)
{
MessageBox.Show($"Il certificato è SCADUTO.\nData di
scadenza: {certificato.NotAfter}",
"Certificato Scaduto", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}