Ho problemi a eseguire il debug di qualsiasi sito Web ASP Classic sulla mia workstation utilizzando uno degli ambienti di debug MS disponibili. Sono su Win XP SP3, utilizzando IIS 5.1 integrato.Debugger su una riga errata durante il debug di Classic Asp
È iniziato poche settimane fa e si verifica su più progetti. Qualcosa è cambiato chiaramente nel mio ambiente, perché funzionava bene in passato, anche nei recenti IDE, purché I Attach venisse processato. Quindi si è rotto come descritto di seguito. Mi ero arreso, ma ho iniziato a lavorare su un nuovo progetto di recente, ho provato a eseguire il debug e ha funzionato! Oggi, però, si ritorna allo stesso comportamento interrotto:
Quando provo a impostare un punto di interruzione, l'IDE imposta effettivamente il punto di poche righe sopra o sotto la linea su cui ho fatto clic. Sto cercando di impostare il punto di interruzione su linee che sono interamente codice lato server, quindi non è perché sta saltando prima o dopo HTML con pepite di codice incorporate. Occasionalmente non imposterà il breakpoint, dandomi un'icona di breakpoint vuota e presentando un errore che dice che non c'è alcun codice eseguibile sulla linea.
Quando si allega al processo IIS (inetinfo.dll, poiché sono in esecuzione in modalità di isolamento basso), il punto di interruzione potrebbe non essere raggiunto. Se lo è, e avvio a passo singolo, la linea selezionata salta e non atterra su ogni linea continua nella sorgente, né segue le strutture di controllo come previsto. Le variabili controllate non vengono aggiornate come previsto. È chiaramente visto un codice diverso da quello che faccio per gli stessi numeri di linea.
Lo stesso comportamento si verifica se mi carica la pagina in un browser e
- connettersi al processo da VS2010, impostare un punto di interruzione e aggiornare la pagina, o
- impostare il punto di interruzione, connettersi al processo e aggiorna, oppure
- aggiungi un'istruzione "stop" nella mia fonte e aggiorna la pagina. In tal caso, mi viene presentata una lista di debugger disponibili, e ognuno di essi fa esattamente la stessa cosa: salta le linee di codice SAME e segue i percorsi SAME 'errati'. Ho provato VS2010, 2008, 2005, 2003 e Microsoft Script Debugger.
Sembra che il codice sorgente non sia sincronizzato con ciò che il debugger sta passando. Mi sono assicurato che "Richiede che i file di origine corrispondano esattamente alla versione originale" sia impostato in VS> Strumenti> Opzioni> Debug> Generale
E, naturalmente, questi sono siti ASP Classic - non c'è codice compilato, quindi la sorgente che vedo nell'IDE dovrebbe essere la stessa di quello che sta eseguendo il debugger. Non è specifico per un progetto - sta accadendo su almeno due progetti completamente separati al momento. E sta succedendo su più macchine: ho distribuito il mio progetto su un server di test e ho provato a eseguire il debug e ho ottenuto lo stesso comportamento.
ho trovato alcune informazioni sui problemi simili dal suono relativi ai file UTF-codificati contenenti caratteri non ANSI (sapete, quelli utilizzati Unicode per supportare!) here, here e here, ma sono andato attraverso la mia fonte e non riesco a trovare alcun file simile.
Qualche idea? Grazie!
No, ho già controllato: ho solo una configurazione Debug nel progetto al momento sto lavorando. E, ancora, non c'è un passaggio 'compile' per richiamare la configurazione: è sufficiente salvare il file .ASP e aggiornare il browser. Grazie, comunque! – Val
Questo problema si verifica sulla macchina di qualcun altro? In tal caso, controlla le impostazioni di costruzione del progetto per assicurarti che stia producendo le giuste informazioni di debug. Suppongo che tu abbia provato a ricostruire? Se non funziona, probabilmente mi limiterò a gettare le mani in aria, a urlare e quindi a reinstallare VS. – knightpfhor
Non c'è niente da costruire, ma ho fatto una ricostruzione comunque, senza alcun effetto. Vedrò se riesco a riprodurmi su un'altra macchina, comunque ... buona idea! Non penso sia solo VS - succede in tutte le versioni di VS, oltre a MS Script Debugger, quindi viene invocato un componente comune ... – Val