Oppure

Loading
01/02/23 8:57
Giacos71
Come da titolo dovrei scaricare un file zip (archivio estrazioni lotto) e opzionale salvare il file zippato in una cartella dedicata. Lo so molti storceranno il naso ma il lotto a me piace. Ho provato diversi codici, per cercare la soluzione migliore, ma quando il codice non dava errori riscontravo questi 2 problemi non in contemporanea:

1) Il file veniva apparentemente scaricato (oppure creato), ma era a zero kb (almomento è di circa 601 kb).
2) Nel secondo caso dava questo errore: richiesta annullata impossibile creare un canale sicuro SSL.

E da giorni che ci sto sbattendo la testa e pensavo fosse più semplice scaricare un file da internet.

Questo è il link da cui scaricare il file: igt.it/STORICO_ESTRAZIONI_LOTTO/…

E questo è l'ultimo codice utilizzato:

' Assicurarsi che l'uso di System.Net; sia incluso
Imports System.Net

Public Class DownloadArchivio

    'Dim wc As WebClient
    'Private WithEvents wc As WebClient
	
	'Private webClient As New WebClient()
	
	Private Sub Close_Click(sender As Object, e As EventArgs) Handles btnClose.Click
        Me.Close()

    End Sub
	
	Private Sub DownloadArchivio_Load(sender As Object, e As EventArgs) Handles MyBase.Load
	
	''Impostare la cartella di destinazione predefinita
        ''txtDestination.Text = "C:\Downloads\"
        ''txtDestination.Text = "C:\Downloads\"
        'wc = New WebClient()
		
		wc = New WebClient()
        AddHandler wc.DownloadFileCompleted, AddressOf DownloadCompleted
		
		Private Sub btnDownload_Click(sender As Object, e As EventArgs) Handles btnDownload.Click
		
		Private webClient As New WebClient()

        Dim fileUrl As String = txtSource.Text
        Dim destinationPath As String = txtDestination.Text

        If Not Directory.Exists(destinationPath) Then
            Directory.CreateDirectory(destinationPath)
        End If

        'Creare una nuova richiesta Web
        Dim request As WebRequest = WebRequest.Create(fileUrl)

        Dim response As WebResponse
        Try
            response = request.GetResponse()
        Catch ex As WebException
            'Gestire l'eccezione qui, ad esempio mostrando un messaggio di errore all'utente
            MessageBox.Show("Errore di connessione: " & ex.Message)
        End Try


        'Calcolare la lunghezza del file
        Dim fileSize As Long = response.ContentLength
        Dim fileName As String = Path.GetFileName(fileUrl)
        Dim saveFilePath As String = Path.Combine(destinationPath, fileName)

        'Controllare se il file esiste già nella cartella di destinazione
        If File.Exists(saveFilePath) Then
            Dim existingFileSize As Long = New FileInfo(saveFilePath).Length
            If existingFileSize >= fileSize Then
                'Il file esiste già e non è un aggiornamento
                MessageBox.Show("Il file esiste già e non è un aggiornamento.")
                Return
            Else
                'Il file esiste già e potrebbe essere un aggiornamento
                Dim result As DialogResult = MessageBox.Show("Il file esiste già. Vuoi sovrascriverlo?", "File esiste già", MessageBoxButtons.YesNo)
                If result = DialogResult.No Then
                    Return
                End If
            End If
        End If

        'Inizializzare la ProgressBar
        DownloadProgress.Value = 0
        DownloadProgress.Maximum = 100

        'Scaricare il file
        Using responseStream As Stream = response.GetResponseStream()
            Dim totalBytes As Long = response.ContentLength
            Dim totalBytesDownloaded As Long = 0
            Dim buffer(1023) As Byte
            Dim bytesRead As Integer
            Dim cancelDownload As Boolean = False
            Using saveFileStream As FileStream = File.Create(saveFilePath)
                Do
                    bytesRead = responseStream.Read(buffer, 0, buffer.Length)
                    totalBytesDownloaded += bytesRead
                    saveFileStream.Write(buffer, 0, bytesRead)
                    Dim progress = CInt((totalBytesDownloaded * 100) / totalBytes)

                    Invoke(New Action(Function()
                                          DownloadProgress.Value = progress
                                          Return Nothing
                                      End Function))
                Loop While bytesRead > 0 AndAlso Not cancelDownload
            End Using
        End Using

        Impostare la barra di avanzamento
        DownloadProgress.Minimum = 0
        DownloadProgress.Value = 0
        DownloadProgress.Style = ProgressBarStyle.Blocks

        'Gestisce l'evento di completamento del download
    Private Sub DownloadCompleted(ByVal sender As Object, ByVal e As AsyncCompletedEventArgs)
        If e.Error IsNot Nothing Then
            'Errore durante il download
            MessageBox.Show("Errore di connessione: " & e.Error.Message)
        Else
            'Download completato
            MessageBox.Show("Download completato!")
        End If
    End Sub
	
	Private Sub DownloadCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles wc.DownloadFileCompleted
        If e.Error IsNot Nothing Then
            'Errore durante il download
            MessageBox.Show("Errore durante il download: " & e.Error.Message)
        ElseIf e.Cancelled Then
            'Download annullato
            MessageBox.Show("Download annullato.")
        Else
            'Download completato con successo
            MessageBox.Show("Download completato con successo.")
        End If
    End Sub


Il codice è pressapoco questo, dico pressapoco perchè nelle mi prove ho fatto un po di casino e immagino che sia migliorabile.

Ringrazio in anticipo chi mi aiuterà e se ci sono errori ho ce bisogno di altro codice (tipo la parte dell'unzip e salvataggio fatemelo sapere.

Allego lo screen del form (la linklabel non è da calcolare era solo per test). Anche label3 e label4 non servono le devo poi togliere.
Ultima modifica effettuata da Giacos71 01/02/23 8:59
aaa
01/02/23 11:16
nessuno
Lo so molti storceranno il naso ma il lotto a me piace.


Allora fai ogni tanto le tue giocate senza però spacciare un programma informatico per qualcosa che possa "prevedere" le uscite.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
01/02/23 14:08
Carlo
Hai postato un codice privo degli End Class, End Sub doppie o remmate dichiarazioni....
Per scaricare il file dal sito indicato hai bisogno del certificato oppure gestire il protocollo SSL/TLS

Perché non ti scarichi il file semplicemente mettendo la stringa igt.it/STORICO_ESTRAZIONI_LOTTO/… sul browser?

Qui puoi trovare l'archivio che non necessita del certificato, per ora: lottologia.com/lotto/archivio-estrazioni/ che funzionerebbe con il codice che hai postato se ritrovi l'originale o se sei in grado di rimetterlo a posto.

Nel codice che ti propongo se cambi l'anno alla fine del link nella "textbox source" e metti il nome giusto nella "textbox destination" scarichi l'archivio corrispondente.

Codice:
Imports System.Net

Public Class Form1
    Private Sub DownloadArchivio_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ' senza percorso il file finisce nella cartella dell'exe
        txtDestination.Text = "C:\Downloads\Archivio2022.txt"
        txtSource.Text = "https://www.lottologia.com/lotto/archivio-estrazioni/?as=TXT&year=2022"
    End Sub

    Private Sub btnDownload_Click(sender As Object, e As EventArgs) Handles btnDownload.Click
        Me.Cursor = Cursors.WaitCursor
        Using client As New WebClient()
            Try
                client.DownloadFile(txtSource.Text, txtDestination.Text)
            Catch er As Exception
                MessageBox.Show(er.Message)
            End Try
        End Using
        Me.Cursor = Cursors.Default
    End Sub
End Class


nel form devi aggiungere due textbox:
txtDestination
txtSource

e un button:
btnDownload
Ultima modifica effettuata da Carlo 01/02/23 23:07
in programmazione tutto è permesso
01/02/23 21:35
Giacos71
Postato originariamente da nessuno:

Lo so molti storceranno il naso ma il lotto a me piace.


Allora fai ogni tanto le tue giocate senza però spacciare un programma informatico per qualcosa che possa "prevedere" le uscite.


Non capisco perchè sempre tutta questa polemica. Io non voglio spacciare niente ho solo chiesto non riesco a scaricare un file che potrebbe chiamarsi archivio.zip o pippo.zip il problemasarebbe lo sesso.
Io ero qui per chiedere aiuto e non per ricevere polemica, se lacosa a te non interessa basta non rispondere punto e basta. e con questa è già laseconda volta.
aaa
01/02/23 21:52
Giacos71
Postato originariamente da Carlo:

Hai postato un codice privo degli End Class, End Sub doppie o remmate dichiarazioni....
Per scaricare il file dal sito indicato hai bisogno del certificato oppure gestire il protocollo SSL/TLS

Perché non ti scarichi il file semplicemente mettendo la stringa igt.it/STORICO_ESTRAZIONI_LOTTO/… sul browser?

Qui puoi trovare l'archivio che non necessta del certificato, per ora: lottologia.com/lotto/archivio-estrazioni/ che funzionerebbe con il codice che hai postato se ritrovi l'originale o se sei in grado di rimetterlo a posto.

Nel codice che ti propongo se cambi l'anno alla fine del link nella "textbox source" e metti il nome giusto nella "textbox destination" scarichi l'archivio corrispondente.

Codice:
Imports System.Net

Public Class Form1
    Private Sub DownloadArchivio_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ' senza percorso il file finisce nella cartella dell'exe
        txtDestination.Text = "C:\Downloads\Archivio2022.txt"
        txtSource.Text = "https://www.lottologia.com/lotto/archivio-estrazioni/?as=TXT&year=2022"
    End Sub

    Private Sub btnDownload_Click(sender As Object, e As EventArgs) Handles btnDownload.Click
        Me.Cursor = Cursors.WaitCursor
        Using client As New WebClient()
            Try
                client.DownloadFile(txtSource.Text, txtDestination.Text)
            Catch er As Exception
                MessageBox.Show(er.Message)
            End Try
        End Using
        Me.Cursor = Cursors.Default
    End Sub
End Class


nel form devi aggiungere due textbox:
txtDestination
txtSource

e un button:
btnDownload


Si ho fatto un copia incolla per postare il codice completoe mi scuso se qualcosa ho lasciato per strada.

Bè non loscarico così perchè e molto semplice, invece avevo visto un software che scaricava il file in formato zip e poi copiava il file al suo interno che è un txt nella rispettiva cartella e volevo ricreare tale situazione.

Si sicuramente quel file si scaricherebbe senza problemi, però primo non ha la stessa formattazione e quindi incasinato nella lettura e visto che avevo una parte di codice che gentilmente già molto tempo fa tu mi avevi aiutato per gestire tale archivio preferivo questo, e secondo dovrei scaricarmi più anni mentre quello da me proposto ha l'archivio completo.

Il codice che tu hai proposto e di cui ti ringrazio però scarica da quello che io non voglio e non so se modificando solo il link può funzionare.

Come dici tu "Per scaricare il file dal sito indicato hai bisogno del certificato oppure gestire il protocollo SSL/TLS" vorrei capire come come avere questo certificato, cioè se devo averlo io nell'applicazione o deve sempre e comunque risiedere sul server.

Ho cercato di risolvere questa cosa del protocollo SSL ma non cisono riuscito e non capisco perchè non basti mettere il link e stop, d'altronde se è un link che mettono loro a disposizione non vedo che danno io potrei fare.

No messo come suggerito in alcuni siti queste righe:

ServicePointManager.Expect100Continue = True
        ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12


ma non ho risolto, ho provato anche una procedura che a detta dell'autore dovrebbe bpassare laverifica del protocollo SSL7TLS ma non funziona.

A questo punto non so che fare perchè si trova poco a riguardo oppure io non ho cercato in modo approfondito.

Ho cercato di capire anche il perchè mettendo il link nelbrowser lui lo scarica tranquillamente dalla mia applicazione invece no! Si vede che nel browser ci sono verifiche e/o controlli che non sono implementate nella mia applicazione.
Ultima modifica effettuata da Giacos71 01/02/23 21:55
aaa
02/02/23 13:01
nessuno
Postato originariamente da Giacos71:

Postato originariamente da nessuno:

Lo so molti storceranno il naso ma il lotto a me piace.


Allora fai ogni tanto le tue giocate senza però spacciare un programma informatico per qualcosa che possa "prevedere" le uscite.


Non capisco perchè sempre tutta questa polemica. Io non voglio spacciare niente ho solo chiesto non riesco a scaricare un file che potrebbe chiamarsi archivio.zip o pippo.zip il problemasarebbe lo sesso.
Io ero qui per chiedere aiuto e non per ricevere polemica, se lacosa a te non interessa basta non rispondere punto e basta. e con questa è già laseconda volta.


Veramente sei stato tu a dire "molti storceranno il naso" e io te l'ho confermato e ti ho anche spiegato il perché la penso così.

E lo farò la terza, quarta e quinta volta se serve ...
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
02/02/23 15:13
Carlo
Anticipo SOLUZIONE senza arrivare alla fine della discussione
Il problema si ha su alcuni siti se si usa Win7, con Win10 il file si scarica correttamente anche da codice .Net.

--- Post originale ----> Purtroppo non so perché da .Net anche con il protocollo Tls12 il certificato per scaricare igt.it/STORICO_ESTRAZIONI_LOTTO/… non sia valido, speriamo che qualcuno ce lo spieghi.
Personalmente non ho problemi da .Net a scaricare files da altri siti o dai miei con il protocollo Tls12

Ho scritto due righe che ti potrebbero tornare utili.

Metti nella caretella C:\Downloads\ il file Storico.txt scaricato da igt e dezippato a mano.
Lancia il programma DownloadArchivio.exe dopo averlo estratto dallo zip allegato qui sotto.

Il programma cerca nel file Storico.txt l'ultima data presente e ne usa l'anno per scaricare da lottologia il file ArchivioAAAA.txt corrispondente.
Scaricato il file ArchivioAAAA.txt, le date non presenti in Storico.txt verranno aggiunte con la giusta formattazione.

Il programma è anche capace di scaricare più anni, puoi provare cancellando alcune estrazioni da Storico.txt

ATTENZIONE Non controlla se nella data ci sono tutte le estrazioni, se cancelli delle estrazioni da "Storico.txt" lo devi fare sempre dall'estrazione di BA in poi, Il file Storico.txt deve sempre terminare con l'estrazione di VE e suoi estratti, non deve contenere righe vuote alla fine.

Il programma in una listbox annota tutte le fasi, utile per capire il progresso e il contenuto delle variabili, il punto esclamativo indica che si può procedere, il punto interrogativo indica un errore e il programma termina.

Aggiungo il codice completo, la listbox viene aggiunta in runtime
Imports System.Net
Imports System.IO

Public Class Form1

    Dim lB As New ListBox
    Dim storico As List(Of String)
    Dim percorsoStorico As String = "C:\Downloads\Storico.txt"
    Dim diffAnno As Integer
    Dim ultimaData As Date

    Private Sub Form1_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
        lB.Dock = DockStyle.Fill
        Me.Controls.Add(lB)
        If File.Exists(percorsoStorico) Then
            lB.Items.Add("! trovato " & percorsoStorico)
            storico = File.ReadAllLines(percorsoStorico).ToList
            lB.Items.Add("! caricato in lista storico: " & percorsoStorico)
            Dim indiceUltimaData As Integer

            Do ' accoda un anno o più
                indiceUltimaData = storico.Count - 1
                If storico.Last.Length > 10 AndAlso Date.TryParse(storico.Last.Substring(0, 10), ultimaData) Then
                    lB.Items.Add("! ultima data in Storico.txt = " & ultimaData.ToShortDateString & " Riga: " & indiceUltimaData) : lB.Refresh()
                Else
                    lB.Items.Add("? L'ULTIMA RIGA E' VUOTA E/O NON CONTIENE UNA DATA")
                    Exit Sub
                End If
                aggiungi()
                diffAnno = 1 ' passa al prossimo anno
                ' visualizzo le estrazioni accodate, utile per controlli
                For i = indiceUltimaData + 1 To storico.Count - 1
                    lB.Items.Add("! Add " & storico(i))
                Next
            Loop While Today.Year > ultimaData.Year ' esce per eccesso di anno senza incremento
        Else
            lB.Items.Add("? " & percorsoStorico & " NON ESISTE")
            Exit Sub
        End If

        File.WriteAllLines(percorsoStorico, storico)
        lB.Items.Add("! Storico aggiornato " & percorsoStorico & " con " & storico.Count & " righe")
        lB.TopIndex = lB.Items.Count - 1 ' rende visibile l'ultima riga
    End Sub

    Sub aggiungi()
        If Today.Year < ultimaData.Year + diffAnno Then Exit Sub ' esce per eccesso di anno con incremento
        Dim archivio As List(Of String)
        Dim source As String = "https://www.lottologia.com/lotto/archivio-estrazioni/?as=TXT&year=" & (ultimaData.Year + diffAnno).ToString
        Dim destinazione As String = Path.Combine(Path.GetDirectoryName(percorsoStorico), "Archivio" & (ultimaData.Year + diffAnno).ToString & ".txt")
        lB.Items.Add("! carico archivio: " & source) : lB.Refresh()
        Me.Cursor = Cursors.WaitCursor
        Using client As New WebClient()
            Try
                ServicePointManager.Expect100Continue = True
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 Or SecurityProtocolType.Tls Or SecurityProtocolType.Tls11 Or SecurityProtocolType.Ssl3
                client.DownloadFile(source, destinazione)
                lB.Items.Add("! " & destinazione & " ***SALVATO***") : lB.Refresh()
            Catch er As Exception
                lB.Items.Add("? " & er.Message)
                Exit Sub
            End Try
        End Using
        Me.Cursor = Cursors.Default
        archivio = File.ReadAllLines(destinazione).ToList
        Dim indice As Integer ' conterrà la posizione della prima estrazione su archivio da accodare su storico
        If diffAnno = 0 Then ' primo anno accodato anche parziale
            lB.Items.Add("! caricato in lista archivio: " & destinazione)
            lB.Items.Add("! cerco la data " & ultimaData & " in  " & destinazione) : lB.Refresh()
            Dim dataArchivio As Date
            ' cerca la data
            For indice = 2 To archivio.Count - 1
                If archivio(indice).Length > 10 AndAlso Date.TryParse(archivio(indice).Substring(0, 10), dataArchivio) Then
                    If dataArchivio = ultimaData Then
                        lB.Items.Add("= SI  : " & dataArchivio.ToShortDateString)
                        Exit For ' data trovata
                    Else
                        lB.Items.Add("= NO: " & dataArchivio.ToShortDateString) : lB.Refresh()
                    End If
                End If
            Next indice
            If dataArchivio <> ultimaData Then
                lB.Items.Add("? la data: " & ultimaData.ToShortDateString & " in " & destinazione & " NON ESISTE")
                Exit Sub
            End If
        Else ' anni successivi accodati su storico sempre dall'inizio
            indice = archivio.Count - 1
            lB.Items.Add("! aggiungo anno: " & (ultimaData.Year + diffAnno).ToString)
            lB.TopIndex = lB.Items.Count - 1 ' rende visibile l'ultima riga
            lB.Refresh()
        End If
        ' aggiungo le estrazioni con la formattazione di www.igt.it
        For i = indice - 1 To 0 Step -1
            Dim diviso() As String = archivio(i).Split(vbTab)
            Dim dataDivisa As Date
            If Date.TryParse(diviso(0), dataDivisa) Then
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "BA" & vbTab & diviso(1) & vbTab & diviso(2) & vbTab & diviso(3) & vbTab & diviso(4) & vbTab & diviso(5))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "CA" & vbTab & diviso(6) & vbTab & diviso(7) & vbTab & diviso(8) & vbTab & diviso(9) & vbTab & diviso(10))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "FI" & vbTab & diviso(11) & vbTab & diviso(12) & vbTab & diviso(13) & vbTab & diviso(14) & vbTab & diviso(15))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "GE" & vbTab & diviso(16) & vbTab & diviso(17) & vbTab & diviso(18) & vbTab & diviso(19) & vbTab & diviso(20))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "MI" & vbTab & diviso(21) & vbTab & diviso(22) & vbTab & diviso(23) & vbTab & diviso(24) & vbTab & diviso(25))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "NA" & vbTab & diviso(26) & vbTab & diviso(27) & vbTab & diviso(28) & vbTab & diviso(29) & vbTab & diviso(30))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "PA" & vbTab & diviso(31) & vbTab & diviso(32) & vbTab & diviso(33) & vbTab & diviso(34) & vbTab & diviso(35))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "RM" & vbTab & diviso(36) & vbTab & diviso(37) & vbTab & diviso(38) & vbTab & diviso(39) & vbTab & diviso(40))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "RN" & vbTab & diviso(51) & vbTab & diviso(52) & vbTab & diviso(53) & vbTab & diviso(54) & vbTab & diviso(55))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "TO" & vbTab & diviso(41) & vbTab & diviso(42) & vbTab & diviso(43) & vbTab & diviso(44) & vbTab & diviso(45))
                storico.Add(dataDivisa.Year & "/" & dataDivisa.Month.ToString("00") & "/" & dataDivisa.Day.ToString("00") & vbTab & "VE" & vbTab & diviso(46) & vbTab & diviso(47) & vbTab & diviso(48) & vbTab & diviso(49) & vbTab & diviso(50))
            End If
        Next i
    End Sub
End Class

Sulle estrazioni aggiunte i numeri minori di 10 contengono lo zero davanti (non ti dovrebbe cambiare nulla)
Il file Storico.txt quando risalvato contiene CrLf a fine riga (non ti dovrebbe cambiare nulla)
Ho cercato di prevedere i possibili scenari, ma sicuramente mi è sfuggito qualcosa, sta a te verificare.

Spero che ti sia utile.

EDIT: Ho corretto un errore

PS. meno parole che non riguardano il codice ci sono e meglio è...
Ultima modifica effettuata da Carlo 03/02/23 21:21
in programmazione tutto è permesso
02/02/23 22:12
Giacos71
Postato originariamente da nessuno:

Postato originariamente da Giacos71:

Postato originariamente da nessuno:

Lo so molti storceranno il naso ma il lotto a me piace.


Allora fai ogni tanto le tue giocate senza però spacciare un programma informatico per qualcosa che possa "prevedere" le uscite.


Non capisco perchè sempre tutta questa polemica. Io non voglio spacciare niente ho solo chiesto non riesco a scaricare un file che potrebbe chiamarsi archivio.zip o pippo.zip il problemasarebbe lo sesso.
Io ero qui per chiedere aiuto e non per ricevere polemica, se lacosa a te non interessa basta non rispondere punto e basta. e con questa è già laseconda volta.


Veramente sei stato tu a dire "molti storceranno il naso" e io te l'ho confermato e ti ho anche spiegato il perché la penso così.

E lo farò la terza, quarta e quinta volta se serve ...


E invece penso che se tu non convidi ciò che faccio o non ti interessa minimamente aiutarmi, basta sempplicemente non intervenire. L'unica cosa che accetto è la parte dove andarci cauto con le giocate. Basta!
aaa