Novità

PerLuigi - Spaziometria - Errore dopo Compila Exe

claudio8

Premium Member
Buon anno nuovo.
Ho realizzato uno script che devo compilare in exe.
Dopo aver inserito l'obbligatorio Option explicit e dichiarato correttamente tutte le variabili, testato lo script che gira e funziona a mio parere senza errori, lo ho compliato in exe .
L'anciando l'exe, mi dà l' indicazione /errore sottostante che supero cliccando sul OK e su No alla richiesta di "Mostrare altri messaggi".

Errore 9.JPG

Lo script quindi completa il suo iter e mi da l'output corretto nel browser.
Anche nel caso non fosse un errore, vorrei poterlo eliminare se possibile.
Saluti Luigi
 
Trovato il perchè del messagio.... out of range
dipende dalla richiesta nel costrutto di operare oltre "estrazioniarchivio".

passiamo alla soluzione
 
Buon anno nuovo.
Ho realizzato uno script che devo compilare in exe.
Dopo aver inserito l'obbligatorio Option explicit e dichiarato correttamente tutte le variabili, testato lo script che gira e funziona a mio parere senza errori, lo ho compliato in exe .
L'anciando l'exe, mi dà l' indicazione /errore sottostante che supero cliccando sul OK e su No alla richiesta di "Mostrare altri messaggi".

Vedi l'allegato 2228106

Lo script quindi completa il suo iter e mi da l'output corretto nel browser (errata corrige: non corretto ).
Anche nel caso non fosse un errore, vorrei poterlo eliminare se possibile.
Saluti Luigi

Ho rivisto il tutto con più attenzioe e verificato che nell'output dell'exe (output del browser) sono mancanti alcuni dati.
allego screenshot e lo script usato per ritestare la procedura con un'altro script di Luigi.

Errore Ambetti in exe.JPG

Codice:
Option Explicit
Sub Main
   Dim idEstr,Ruota
   Dim Inizio,Fine
   Dim nClasseFrz
   Dim id,k
   Dim nElemFrz
   Dim nQAmbetti
   Dim nEstrTot
   Dim nFrqMedia
   Dim sNomeFrz
   Inizio = EstrazioneIni
   Fine = EstrazioneFin
   Ruota = ScegliRuota
   nEstrTot =(Fine + 1) - Inizio
   ReDim aElemFormazione(0)
   Call RichiediFormazione(aElemFormazione,nClasseFrz,sNomeFrz)
   nElemFrz = UBound(aElemFormazione)
   ReDim aValStat(nElemFrz,4)
   ' indice 0 il ritardo
   '        1 freq
   '        2 ritmax
   '        3 incr rit max
   '        4 presenze
   If Ruota > 0 And nClasseFrz > 1 Then
      For id = 1 To nElemFrz
         ReDim aNumInGioco(0)
         Call GetNumInGiocoFromElemFrz(id,aElemFormazione,aNumInGioco,nClasseFrz)
         For idEstr = Inizio To Fine
            ' inserire qui il codice che analizza l'estrazione corrente
            nQAmbetti = VerificaAmbetto(aNumInGioco,Ruota,idEstr,"",0)
            If nQAmbetti > 0 Then
               aValStat(id,0) = 0
               aValStat(id,1) = aValStat(id,1) + nQAmbetti
               aValStat(id,3) = 0
               aValStat(id,4) = aValStat(id,4) + 1
            Else
               aValStat(id,0) = aValStat(id,0) + 1
               If aValStat(id,0) > aValStat(id,2) Then
                  aValStat(id,2) = aValStat(id,0)
                  aValStat(id,3) = aValStat(id,3) + 1
               End If
            End If
            If ScriptInterrotto Then Exit For
         Next
         Call AvanzamentoElab(1,nElemFrz,id)
         If ScriptInterrotto Then Exit For
      Next
      Dim aV
      aV = Array("","Formazione","Ritardo","Frequenza","RitardoMax","IncrRitMax","Presenze","I.C.")
      Call InitTabella(aV)
      For id = 1 To nElemFrz
         ReDim aNumInGioco(0)
         Call GetNumInGiocoFromElemFrz(id,aElemFormazione,aNumInGioco,nClasseFrz)
         aV(1) = StringaNumeri(aNumInGioco)
         aV(2) = aValStat(id,0)
         aV(3) = aValStat(id,1)
         aV(4) = aValStat(id,2)
         aV(5) = aValStat(id,3)
         aV(6) = aValStat(id,4)
         nFrqMedia = Dividi(nEstrTot,aValStat(id,4))
         aV(7) = Round(Dividi(aValStat(id,0),nFrqMedia),3)
         Call AddRigaTabella(aV)
      Next
      Call Scrivi("StatisticaAmbetto")
      Call Scrivi("Analisi su formazione : " & sNomeFrz)
      Call Scrivi("Sulla ruota           : " & NomeRuota(Ruota))
      Call Scrivi("Da                    : " & GetInfoEstrazione(Inizio))
      Call Scrivi("A                     : " & GetInfoEstrazione(Fine))
      Call Scrivi("Totali range          : " & nEstrTot)
      Call Scrivi
      Call CreaTabella(2)
   End If
End Sub
Sub GetNumInGiocoFromElemFrz(id,aElemFormazione,aNumInGioco,nClasseFrz)
   Dim k
   ReDim aNumInGioco(nClasseFrz)
   For k = 1 To nClasseFrz
      aNumInGioco(k) = aElemFormazione(id,k)
   Next
End Sub
Sub RichiediFormazione(aElemFormazione,nClasseFrz,sNome)
   Dim s
   Dim n
   Dim id
   ReDim aNomiForm(0)
   Call ElencoFileInDirectory(GetDirectoryAppData & "formazioni\",aNomiForm,".frz")
   id = ScegliOpzioneMenu(aNomiForm,1,"Selezione formazione")
   If GetElementiFormazione(aNomiForm(id),aElemFormazione) Then
      nClasseFrz = GetClasseFormazione(aNomiForm(id))
      sNome = aNomiForm(id)
   End If
End Sub

Considerando che Luigi è preso dall' altro programma, nell'attesa che mi risponda, chiedo a chi può di provare a creare l'exe, magari è il mio Vb6 che non opera correttamente.

Grazie
 
quell'errore capita quando si fa riferimento ad un indice in un array che non ha la quantita di elementi suffcente,
 
quell'errore capita quando si fa riferimento ad un indice in un array che non ha la quantita di elementi suffcente,

Grazie della risposta ma credo che sia nel mio script che nel tuo le array o matrici sono dimensionate a sufficenza .

Se provi a creare l'exe con il tuo script che ho postato, vedrai che lo script funziona correttamente mentre quando lanci l'exe da l'errore/segnalazioni .
Ciao
 
mi sa che l'errore sta in una parte che non dipende da te , in altre pparole non ci si puo fare niente..dovrei ricacciare il portatile con xp e andare a vedere che c'ha la funzione VerificaAmbetto...
 
ciao Cla , vedi un po se la versione dello script opportunamente modificata funziona col progamma nuovo , scarica però prima l'ultima versione lo script l'ho messo di la ...
 
Grazie della dedica Luigi, ma

sono impossibilitato ad usarlo x mancanza di Hardware
la mia ex ferrari del 2011 continua a montare un s.o. xp core 2 duo....32bit
passero al nuovo programma al prossimo PC.

Se puoi mettere mano a SPM ben venga altrimenti per ora soprassiedo.
Grazie Prof.
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 18 ottobre 2025
    Bari
    23
    03
    54
    34
    30
    Cagliari
    49
    14
    25
    09
    37
    Firenze
    32
    45
    15
    59
    29
    Genova
    03
    66
    68
    90
    85
    Milano
    88
    15
    21
    41
    27
    Napoli
    79
    72
    84
    27
    01
    Palermo
    23
    03
    73
    25
    04
    Roma
    11
    67
    24
    13
    59
    Torino
    72
    59
    84
    75
    26
    Venezia
    81
    08
    18
    76
    25
    Nazionale
    58
    69
    62
    17
    70
    Estrazione Simbolotto
    08
    26
    28
    22
    40
Indietro
Alto