Ciao ragazzi! Anch'io sono alle prese con un problema simile (per non dire uguale): anch'io come te, Jivan, imposto nella Sub Session_OnStart un valore di inizializzazione per una variabile di sessione, ma il problema non riguarda suddetta sub: ho fatto diverse prove, praticamente è uscito fuori che eliminando la Session_OnEnd il controllo funziona. Mantenendola il comportamento dell'applicazione è...blocco totale della finestra del browser. Quello che non capisco è il perchè: ho pensato che il motivo fosse che dal momento in cui specifico una procedura per l'evento Session_OnEnd automaticamente venissero eliminate alcune variabili di sessione, fra cui quelle da me definite, così per verificare quest'ipotesi ho provato a definire una Session_OnEnd che non facesse nulla di esplicito, ma in questo caso le cose funzionano a dovere. Il problema è che nella sub in questione effettuo la cancellazione di alcuni file temporanei creati per ogni sessione, cosa assolutamente necessaria, come d'altronde il controllo sulla scadenza di sessione. Di seguito inserisco il codice del mio attuale global.asa. Se qualcuno avesse suggerimenti o se Jivan alla fine avesse trovato la soluzione alla sua applicazione gliene sarò eternamente grato...
<div style="text-align:left">
<SCRIPT LANGUAGE="VBScript" RUNAT="Server">
Sub Application_OnStart
Application("BASE") = "D:\sviluppo\ICR-GEPIN\Cdr\"
Application("REQUEST") = "D:\sviluppo\ICR-GEPIN\icr\cache\"
Application("RESULTS") = "D:\sviluppo\ICR-GEPIN\Cdr\Results\"
Application("XSQLURL") = "http:\\agostino\icr\cache\"
End Sub
Sub Session_OnStart
Session("CLIENT") = ""
Session("VOCABULARY") = 0
End Sub
Sub Session_OnEnd 'Cancella i Files temporanei creati dall'applicazione
Dim objFSO,objFile
set objFSO = Server.CreateObject("Scripting.FileSystemObject")
if objFSO.FolderExists(Application("REQUEST")) then 'File xsql
if objFSO.FileExists(Application("REQUEST") & Session.SessionID & ".xsql") then
set objFile = objFSO.Getfile(Application("REQUEST") & Session.SessionID & ".xsql")
objFile.Delete True
End If
End if
if objFSO.FolderExists(Application("RESULTS")) then
if objFSO.FileExists(Application("RESULTS") & Session.SessionID & ".xml") then 'File xml completo
set objFile = objFSO.Getfile(Application("RESULTS") & Session.SessionID & ".xml")
objFile.Delete True
End If
if objFSO.FileExists(Application("RESULTS") & Session.SessionID & "_1.xml") then 'File xml bene selezionato
set objFile = objFSO.Getfile(Application("RESULTS") & Session.SessionID & "_1.xml")
objFile.Delete True
End If
End if
Set objFSO = Nothing
Set objFile = Nothing
End Sub
</SCRIPT>
</div>
Modificato da Asimov il 15 maggio 2003 15.06 -