Malefico HTTP 500 internal server error

Salve a tutti,

oggi volevo raccontarvi di come essere consulente, sviluppatore, architetto e sistemista possa portare alla quasi pazzia un povero essere umano.

Venerdì dovevo compilare dei rapportini per un cliente e, come da un paio di mesi a questa parte, non riuscivo più a connettermi al suo portale web.

Il messaggio che ricevevo ancora prima di poter fare il login era:

HTTP 500 internal server error

Nulla di più, un semplice e criptico messaggio di errore che faceva presumere che vi fosse un errore sul server a cui mi connettevo.

Purtroppo utilizzando un altro PC riuscivo a connettermi e quindi non potevo nemmeno sollevare il problema, essendo evidente che fosse il mio PC la causa dell’errore.

Dopo svariati tentativi trovo finalmente un santo che mi aiuta, Luciani Massimiliano, che nell’articolo ASP: HTTP 500 internal server error mi permette di scoprire un’opzione avanza di Internet Explorer, Mostra messaggi di errore HTTP brevi, che provvedo subito a disabilitare.

Finalmente vedo una piccola luce ed il messaggio diventa:

Microsoft Cursor Engine error ‘80040e21’

Multiple-step operation generated errors. Check each status value.

/LM/W3SVC/1/Root/Rapportini/global.asa, line 72

Nulla di più chiaro no?

Ora inizia la caccia, prendo ogni parola di questo messaggio e mi tuffo in Google alla spasmodica ricerca della soluzione…

Alla fine nulla o quasi nulla…

Riesco solo a capire che sul server il codice sta cercando di aggiornare un campo sul database e probabilmente sta inserendo un dato troppo lungo. Ma quale dato? Cosa succede nella semplice chiamata che Internet Explorer deve fare per riuscire a generare un errore così criptico?

Capisco che la rete non mi può più aiutare, devo far ricorso alla mia anima di sviluppatore e di analista, così cambio strategia e decido: si debugga la chiamata HTTP.

Così con un po’ di pazienza trovo un tool per tracciare le chiamate HTTP, prendo lo stream di uscita dal mio PC e quello di uscita dal PC di controllo, quello funzionante.

Cosa scopro? L’unico dato differente, quindi l’unica informazione che in qualche modo può fare la differenza è il dato User-Agent !!!

Quello del mio PC era:

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; GTB5; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ;  Embedded Web Browser from: http://bsalsa.com/; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; FDM; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; OfficeLiveConnector.1.3; OfficeLivePatch.0.0)

Insomma, una stringa da 340 caratteri che risultava ingestibile dal server al quale chiedevo di connettermi.

Allora mi attivo e cancello subito le chiavi del registro di Windows in modo da riportare la stringa a dimensioni ragionevoli e finalmente posso compilare senza problemi i miei rapportini.

Cosa era accaduto? Che il progetto al quale sto lavorando richiedeva l’installazione di molto software, tale installazione ha allungato la stringa User-Agent del mio browser in modo eccessivo e questo mi impediva di compilare i rapportini. Come dire che il cliente senza volerlo mi stava facendo lavorare… gratis!!!

Questo vi fa capire quanto sia dura la vita del consulente 🙂

Sostieni il blog con una piccola donazione! Grazie!

DVD2DivXControlPanel

Salve a tutti,

oggi voglio presentarvi un piccolo programma di automazione che ho scritto dopo svariati ed inutili tentativi per stabilire una volta per tutte come trasformare un DVD in un file DivX utilizzando solo software gratuito.

Esistono svariate soluzioni, gratuite, quasi gratuite, a pagamento… Il mio obiettivo era trovare una soluzione che mi consentisse di andare a colpo sicuro senza il timore di errori bloccanti ed imprevedibili.

Ho realizzato così una semplice applicazione che si occupa di coordinare tutti i programmi gratuiti necessari ad ogni passaggio della conversione.

I programmi necessari sono i seguenti:

  1. Java
  2. ProjectX
  3. DGIndex
  4. VirtualDub-MPEG2
  5. MPASource
  6. XMPEG

Per il momento non sono in grado di compilare una guida esaustiva che vi guidi passo passo nella loro installazione, vi rimando per questo alle informazioni che troverete nei link. Installarli tutti e comprenderne il funzionamento richiede diverso tempo libero. Per questo motivo vi invito a chiedermi quello che non vi risulta chiaro segnalandomi le difficoltà maggiori.

Vi riporto la schermata principale del programma DVD2DivXControlPanel; potete scaricarlo e tentare di lanciarlo ma per una guida approfondita dove avere ancora un po’ di pazienza…

DVD2DivXControlPanel
DVD2DivXControlPanel

DVD2DivXControlPanel.zip

Sostieni il blog con una piccola donazione! Grazie!

Antivirus, Explorer e le immagini ISO

Salve a tutti,

vi è mai capitato di accedere ad una cartella e trovare che Gestione Risorse (Explorer.exe) si bloccano?

Vi è mai capitato di scoprirne il motivo?

Uno dei tanti motivi che vi può capitare è il seguente: gli antivirus, come AVG, eseguono una scansione di ogni cartella che l’utente apre con Gestione Risorse. Quest’operazione blocca per un istante la cartella finché l’antivirus non ha completato la scansione. Se in tale cartella avete inserito eseguibili (*.exe) di dimensioni dell’ordine di centinaia di MB allora l’attesa può essere veramente lunga.

Per ovviare a quest’inconveniente il mio consiglio è di creare per questi eseguibili giganti (penso ad esempio ai Service Pack di Microsoft), un’immagine iso che li contenga.

Per creare l’immagine iso potete utilizzare Nero oppure altri software di masterizzazione.

Per leggere l’immagine iso vi consiglio DAEMON Tools. Questo programma vi farà vedere il file iso come se fosse un vero CD all’interno del quale troverete il vostro file originale.

Siccome i programmi antivirus per il momento non fanno una scansione dei file iso, quando accederete alla cartella contenente questi file, Gestione Risorse sarà velocissimo!

Aggiungo inoltre che se utilizzate ad esempio VMware Server vi risulterà molto utile disporre delle immagini iso in quanto sono direttamente utilizzabili come sorgente per il CD ROM virtuale.

Impostazioni CD-ROM con immagine iso
Impostazioni CD-ROM con immagine iso
Sostieni il blog con una piccola donazione! Grazie!

StandBy

Ciao a tutti,
oggi vorrei dire la mia su di una funzionalità che tutti bistrattano: lo StandBy. Mi riferisco a quello che a più voci è stato considerato il male supremo, quello che fa lavorare 2 centrali elettriche per la sola Europa, quello che in tutte le pubblicità legate al risparmio energetico vi dicono di non usare, vi dicono di spegnere tutto!!! Ogni volta!!!

Io non sono d’accordo!

Prima di tutto lo StandBy vi consente di gettarvi a capofitto sul divano, prendere in mano il telecomando (è sempre sul divano il telecomando…) e vedere la TV senza pensare ad altro. Se non lo usate vi dovete rialzare, dopo aver detto o pensato parole irripetibili, accendere la TV e poi rigettarvi sul divano.

A cosa servono oggi quelle due centrali? Ad evitare che milioni di persone dicano parolacce o cose peggiori. Secondo me la Chiesa dovrebbe farsi portavoce dello StandBy… 😀

Comunque il vero problema dello StandBy non è della funzione in se ma di quel LED assolutamente eliminabile che ci dice che la TV è accesa. Se proprio vi sentite colpevoli di un delitto ecologico, allora prendete un cacciavite, smontate la TV e staccatelo. Sinceramente non l’ho mai fatto e quindi vi consiglio di sentire un tecnico prima…

La seconda considerazione sulla StandBy riguarda l’uso che se ne può fare in Windows quando si utilizza un portatile. Io accendo il portatile anche 10 volte al giorno ed ogni riavvio impiega 10 minuti a causa dei numerosi software che ho installato.

Utilizzare lo StandBy, che rende attivo il PC istantaneamente, mi consente di risparmiare in media 1 ora della mia vita ogni giorno. Vi pare poco?

Alcuni consigli:

  1. Se pensate di lasciare spento il PC per più di due giorni utilizzate la Sospensione, tecnica che consiste nel salvare la memoria sul disco fisso e di spegnere definitivamente la macchina
  2. Prima di mettere in StandBy SALVATE TUTTO! Se per qualche motivo l’alimentazione cessa perdete il lavoro non salvato
  3. Assegnate il comando di StandBy al tasto di accensione del PC in modo che non vi accorgerete nemmeno di utilizzare quella funzione

Per il terzo punto dovete accedere a:

Start -> Impostazione -> Pannello di controllo -> Opzioni risparmio energia

e nella linguetta Avanzate dovete impostare l’opzione StandBy se viene premuto il pulsante di alimentazione del computer. Come nell’immagine seguente:

StandBy al pulsante di accensione
StandBy al pulsante di accensione

Chiudo con un Evviva! allo StandBy e scappo a fare colazione, Ciao!

Aggiornamento delle 15:30

Volevo aggiungere il link al seguente test che ho trovato in rete:

http://www.amdplanet.it/tag/altre/articoli/18999/i-consumi-energetici-del-nostro-pc/

Dall’articolo emerge che per un PC da casa i consumi mensili a PC spento  possono arrivare a circa 8 euro. In questo caso il PC non è un portatile ed è a tutti gli effetti spento ad eccezione della corrente necessaria ad avviarlo in modo soft, tipo una TV in standby.

Non conosco i consumi di un portatile ma penso siano sicuramente inferiori, vista l’attenzione al risparmio energetico dedicata a questi strumenti.

Per questo motivo ritengo che tale spesa si ripaghi ampiamente dal tempo risparmiato nell’attesa di poter utilizzare il PC.

In ogni caso siccome anch’io non mi diverto a sprecare energia inutilmente ho collegato tutti gli alimentatori che uso di solito ad una ciabatta con un pulsante generale. Quando mi rialzo dalla scrivania con un unico pulsante spengo tutto, allo standby del PC ci pensa la batteria.

A presto e largo ai commenti!

Sostieni il blog con una piccola donazione! Grazie!

Cronometro

Un saluto a tutti.

Mi sono sempre chiesto quale applicazione minimale potesse essere di un qualche aiuto ed un giorno mi sono risposto: il cronometro!

In Windows non si trova (o forse c’è e non l’ho visto…) ed allora ho deciso di scrivere quattro righe di codice e di creare il mio cronometro.

Ecco la schermata principale:

Schermata principale dell'applicazione Cronometro.exe
Schermata principale dell'applicazione Cronometro.exe

Qual’è l’utilità che ho cercato di dare? La possibilità di scrivere un breve commento che viene utilizzato come testo del log che si ottiene premendo più volte il pulsante Start.

In questo modo se dovete fare, ad esempio, una stima di massima sulle performance di programma, potete cronometrare fasi diverse scrivendo il commento mentre aspettate il termine delle operazioni.

Chiaramente tutto questo è possibile se i tempi che misurate sono dell’ordine delle decine di secondi.

Provatelo! Se vi piace e volete aggiungere delle funzionalità scrivete un commento.

Cronometro.zip

Sostieni il blog con una piccola donazione! Grazie!