"Null reference exception"? no, grazie, prendo un "unexpected T_VARIABLE"... Questo è il forum per imparare l'arte della programmazione o per chiedere un parere su una sessione di debug particolarmente ostica.
Regole del forum Ricorda di indicare chiaramente nell'oggetto il linguaggio ([C#] oppure [PHP], [Java], [HTML], ...), se la discussione ne riguarda uno in particolare!
In una pagina web aziendale dove eseguono le timbrature per l'ingresso, dovrebbe visualizzarsi la scritta ""Nota: La timbratura d'ingresso sarà registrata con l'ora effettiva di logon." e prendere l'effettivo orario di logon del pc quando timbrano.
La scritta però non compare e l'orario registrato è quello del momento in cui cliccano il bottone Entrata.
Tutto questo avviene su un solo pc che ha windows 10 e internet explorer 11, unico browser con cui si può usare quella pagina.
Ho salvato i comandi presenti in quella pagina se riuscite a capirci qualcosa e dirmi cosa poter provare.
Ho già messo la visione compatibilità, ma non cambia nulla.
Da quello che ho capito leggendo i comandi mi sembra che vada a vedere alcune funzioni del sistema operativo e prelevi dei dati, come riesco a capire cosa non preleva e per questo non mi mostra quello che dovrebbe?
Ho svuotato l'event viewer perché mi sembra legga i dati da quello e poi ho riavviato, ma non ha risolto.
Dato che è un solo pc a nessuno frega nulla e devo arrangiarmi.
“Se tutti i documenti raccontavano la stessa favola, ecco che la menzogna diventava un fatto storico, quindi vera.”
Chi gestisce quella pagina dice che è un problema del pc che non ha gli activex abilitati, peccato che siano gli stessi degli altri computer e peccato lo faccia anche con la mia login in quel computer.
Mi arrendo non ho più idee e nessuno dei geni che gestiscono il servizio me ne suggerisce.
“Se tutti i documenti raccontavano la stessa favola, ecco che la menzogna diventava un fatto storico, quindi vera.”
Ciao crazy.cat,
lo script è clamorosamente complesso (per quello che deve fare) e, se non c'è la collaborazione di chi l'ha ideato, è abbastanza difficile capire cosa non stia funzionando.
Comunque, a grandi linee, il programma va a cercare nel registro di Windows il primo evento della giornata (per la precisione: dopo la mezzanotte) con id = 4624 [unlock del sistema] di tipo = 2 [logon interattivo] oppure di tipo = 11 [logon interattivo senza controller di dominio] (vedi: Logon Type Codes Revealed).
Se il tempo trascorso tra l'evento trovato sopra e il momento della timbratura [LoginTimeDelay] è inferiore a 10 minuti (600 secondi) e se l'orario del PC non è stato alterato [DiffFEtPCAdjtime inferiore o uguale a 0], viene usato l'orario di logon, altrimenti l'orario corrente prelevato dal server:
[riga 183] if (LoginTimeDelay < CLng(document.FormInserimento.hd_LoginDelay.value) and DiffFEtPCAdjtime <= 0) then [riga 729] <input type="hidden" name="hd_LoginDelay" id="hd_LoginDelay" value="600" />
Non so se questo potrà esserti utile per risolvere il problema, ma almeno ti eviterà di perdere tempo a cercare di fare funzionare la pagina se sono trascorsi più di 10 minuti dal primo logon della giornata: è normale che non funzioni perché è il codice che lo prevede.
PippoDJ ha scritto: ↑sab mar 18, 2017 12:42 am
Non so se questo potrà esserti utile per risolvere il problema, ma almeno ti eviterà di perdere tempo a cercare di fare funzionare la pagina se sono trascorsi più di 10 minuti dal primo logon della giornata: è normale che non funzioni perché è il codice che lo prevede.
In un paio di casi ho visto che la timbratura avveniva sicuramente appena faceva il logon, non vorrei che il fatto di non spegnere mai il pc, ma al massimo di bloccarlo, influenzi in qualche modo la rilevazione dell'orario. Potrei provare a farglielo spegnere per vedere se cambia qualcosa, giusto per curiosità.
Da parte degli sviluppatori è arrivato solo il suggerimento (inutile) degli activex o di formattare il pc.
Comunque ci siamo accordati con l'utente che il problema non è così grave e possiamo tirare avanti sino a quando non ci sarà qualcosa di più serio.
A furia di corromperle con delle fette di torta, qualcosa è servito...
“Se tutti i documenti raccontavano la stessa favola, ecco che la menzogna diventava un fatto storico, quindi vera.”
Inserendo un messaggio, dichiari di aver letto e accettato il regolamento di partecipazione.
Nello specifico, sei consapevole che ti stai assumendo personalmente la totale responsabilità delle tue affermazioni, anche in sede civile e/o penale,
manlevando i gestori di questo sito da ogni coinvolgimento e/o pretesa di rivalsa.
Dichiari inoltre di essere consapevole che il messaggio sarà visibile pubblicamente, accetti di diffonderlo con licenza
CC BY-NC-SA 3.0 (con attribuzione a "TurboLab.it") e rinunci ad ogni forma di compensazione (economica o altro).
Rinunci inoltre esplicitamente a qualsiasi pretesa di cancellazione del messaggio.