2010-05-05 8 views
6

Qualcun altro ha questo problema o il mio Delphi è maledetto in qualche modo?Delphi 2010 - I file di origine diventano casualmente di sola lettura nell'editor?

Avrò un mucchio di moduli e file aperti in schede nell'editor e scriverò via e improvvisamente tutto si ferma - il mio file .pas, apparentemente a caso, diventa di sola lettura.

A volte posso semplicemente fare clic destro sulla scheda in alto e deselezionare "Sola lettura" e continuare, ma a volte questa opzione è selezionata e disattivata (disattivata), ovvero non posso deselezionarla e posso apportare ulteriori modifiche al file. Anche questo sembra essere casuale.

In quest'ultimo caso, l'unica soluzione è salvare il file in questione, il che funziona, nonostante l'affermazione di Delphi che il file è di sola lettura, chiude la sua scheda nell'editor e lo riapre. Non catastrofico, davvero, ma sta iniziando a diventare fastidioso.

Potrebbe essere che sto sbagliando accidentalmente una combinazione di comandi da tastiera per fare questo o si tratta di un bug in Delphi?

Sono a Delphi 2010, Windows 7. Dubito che abbia a che fare con i pacchetti installati, ma se qualcuno vuole la lista, la genererò e la allegheremo qui.

+1

L'ho visto prima ed era correlato ad alcuni errori: qualcosa in linea "se qualcosa è andato storto quando si è tentato di salvare, contrassegnarlo solo in lettura per essere al sicuro". Forse è stato un problema con il tuo spazio di archiviazione (ad esempio: Anti Virus che blocca la scrittura ad un certo punto perché il software AV è notoriamente stupido), forse era un problema con qualche plugin, forse era un problema con il core delphi. Penso che il concetto di rendere il buffer RO quando viene confrontato con un errore sia intelligente, il problema sarebbe trovare la causa principale. E naturalmente questa è solo speculazione, non so davvero cosa sta succedendo. –

+1

Inoltre potrebbe essere collegato a componenti di terze parti (l'elenco dei pacchetti installati è ancora irrilevante per il resto di noi). Forse hai un componente di terze parti che FAIL quando si suppone che si trasmetta da solo a DFM, e questa potrebbe essere la causa principale di cui sto parlando. Se questo potrebbe essere il caso, cerca componenti di fantasia che fanno qualcosa di straordinario (richiedendo al componente di registrare i propri metodi per lo streaming in dfm) perché tutti i tipi di base sono trasmessi da Delphi stesso, quindi poche possibilità di errore. –

+0

Tutto questo è possibile, ma sono ancora lasciato con incertezza. Contrassegna il file come RO, ma posso ancora salvare tutto nel progetto, chiudere Delphi e riaprire tutto come è stato salvato * dopo * il file mostrato come RO. Sono anche riluttante a credere che sia un problema con i componenti, come succede sempre quando sto semplicemente digitando il codice. L'unica cosa che fa costantemente qualcosa quando succede è Error Insight - ora che ci penso, potrebbe esserci un bug lì. EI è talmente avvilito che posso anche solo disabilitarlo e vedere cosa succede. –

risposta

2

Questo è successo una volta a me. Penso che sia un bug, non riesco a trovare un rapporto esistente per esso e quando trovi passaggi ripetibili per favore crea un rapporto di controllo qualità per questo.

+0

Buono a sapersi. Ho cercato di trovare un modello per farlo accadendo, ma finora mi ha eluso. Pubblicherò qualsiasi aggiornamento qui e presenterò un controllo di qualità se sblocco l'indovinello. –

+0

Ho lasciato questa domanda aperta per un po 'ora, ma immagino che chiunque l'abbia guardato lo abbia già fatto. Accettando questa risposta come sembra a questo punto che questo sia davvero un bug, anche se oscuro, e non qualcosa che ho semplicemente trascurato. –

0

Sì, questo mi è appena successo dopo aver installato Model Maker 11. Penso che il plug-in Model Maker potrebbe essere monkeying con l'impostazione di sola lettura di un file di origine. (Sto usando Delphi 2010 da un anno a questa parte senza che questo problema sia mai accaduto, tutto ad un tratto è iniziato proprio nel momento in cui ho avuto MM11.) Non ho ancora provato a disinstallare MM11. Quindi --- hai ModelMaker 11?

+0

No, non ho ModelMaker. –

1

Questo ci succede sempre - una volta che un file supera una certa dimensione/complessità Delphi inizia a leggere in modo casuale, a volte accompagnato dal congelamento per diversi secondi.

pensiamo che sia qualcosa a che fare con l'evidenziatore di sintassi non riuscendo su alcuni costrutti - certamente va e viene a ondate, e ho avuto momenti in cui sono stato ridotto a modifica di un file nel blocco note solo per ottenere un lavoro fatto.

Succede su unità senza DFM correlato, quindi non è un componente che lo fa, e non è collegato allo storage (Delphi non scrive sul disco quando fallisce).

2

Vai all'ultimo paragrafo per soluzione rapida :)

Sì! questo mi è appena successo. Stavo scrivendo una riga di codice ... una riga in ServerController di Intraweb .... OnBeforeDisbatch .. comunque. Stavo scrivendo ..

Se

e poi ho digitato uno spazio ... quindi se < ---- poi spazio ... e poi l'IDE autofilled in

Se vero allora

dopo che la linea di cui sopra era nel sistema si è scatenato l'inferno ... diavolo perché il file sarebbe rimasto in una modalità di sola lettura ....

ho modificato il file manualmente e rimosso la linea

se vero allora

e tutto è buono.

solo per aggiornare: credo che sia la dimensione del file ... 125 K e quindi bang. almeno sul controller server ... EW10/Delphi 2010

aggiornamento di nuovo ... 8 ore più tardi ...

ho ridotto il mio file sorgente (iwservercontroller) da 125k a bene sotto 80k e tutto era buono . allora ora giusto quando premo il tasto control per incollare su un valore il file va in sola lettura !! come wow ....

intenzione di ridurre il file di nuovo ..

minuto dopo ...

dopo aver spento D2010 e ricarico progetto ... Ho ristretto il problema di utilizzare il " incolla "comando .... il secondo in cui ho provato ad incollare un valore di appunti di sola lettura si è verificato ... ma un colpo di disco rigido si è verificato per un istante prima dell'attivazione della sola lettura attivata!

Soluzione finale !!! Capito! Non potevo credere che ci fosse un'opzione "Sola lettura" nel menu del clic destro .... Fai clic sul riquadro a sinistra in cui è presente la casella di controllo quando appare la sola lettura! Non è più necessario riavviare IDE e ricaricare tutto ecc ecc ...

tutti i fissi ... Whoo hoo

No ... non tutti i fissi ... 3 ore più tardi ... Io riattivare IDE e io sto per incollare alcuni dati e poi il file va in sola lettura (non gli attributi del file di explorer) e il valore del menu a comparsa è ora disattivato !! come wtf !!

Un giorno dopo .. provando tutto .. Ho una soluzione !! la prima volta che mi sono messo in modalità di sola lettura senza utilizzare PUM/inserire la chiave

è sufficiente accedere all'unità in questione che causa solo la lettura e modificare un singolo carattere con un'app esterna. (ultraedit) e salvare. al momento del salvataggio D2010 rileverà i cambiamenti fuori e andare tornare alla insert-mode anche con il menu a comparsa è disabilitata .... Whoo hoo ...

* * soluzione finale Le cose sono tutti buoni e non ora una sola lettura ma la soluzione non è troppo elegante per mantenere sotto controllo le mie abitudini di modifica del testo .. ma se apri le impostazioni e cambi l'editor per mantenere attiva la modalità di inserimento, riderai alla banca ... almeno le cose vanno bene per me ora.

Delphi2010 -> Opzioni -> Opzioni editor -> ["Modalità inserimento"] selezionare questa opzione.

Sembra che da quando ho selezionato la casella di controllo precedente non è stata selezionata una sola lettura .... buona fortuna.

+0

Ci proverò e vedremo come va. Non ho avuto il problema di sola lettura mi ha colpito da un po 'di tempo, ma sembra ancora venire fuori di tanto in tanto, quindi andare in remissione per un po'. Grazie. –

+0

Ho attivato la modalità inserimento in D2007 e ottengo il problema di sola lettura. –

0

L'ho visto molte, molte volte in Delphi 7 che esclude alcune delle spiegazioni che altri hanno suggerito.

io non l'ho visto sul 2010, ma non ho fatto più di tanto al 2010.

-1

vedo anche un interruttore su "sola lettura" per i file pas nell'editor D2010. Nessuno dei suggerimenti sopra riportati ha sempre funzionato per me.Sto trasferendo un grande progetto dalla D6 alla D2010 e sto apportando molte modifiche necessarie. Il modo per superare il problema di un file che è stato contrassegnato come "readonly" e dove (con il tasto destro del mouse nell'editor "[] Read Only") è stato disattivato, è necessario chiudere il file e riaprirlo.