2013-08-29 209 views
3

我有一个.pas文件,并在编程中 - 代码完成停止工作。我删除了IDEFixPack,这是可疑的,但没有任何改变。可以是什么?代码完成停止工作蓝色

(我会回答自己,只是把这个findind留给社区)。

unit Unit2; 

interface 

uses 
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs; 

type 
    TForm2 = class(TForm) 
    private 
    { Private declarations } 
    public 
    { Public declarations } 
    end; 

var 
    Form2: TForm2; 

implementation 

{$R *.dfm} 

end. 

编辑:我怀疑,可以用怪行结束造成的(混合CR,LR和CRLF throught文件):

unit Unit2;[CR] 
[LF] 
interface[CR][LF] 
[LF] 
uses[LF] 
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,[CR] 
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs;[LF] 

等等......

+1

在Delphi IDE中有大量的代码完成问题。我每月至少发现一次或两次新问题。每个场合似乎仍然是随机的,每次都有不同的原因(几次我找到原因) –

+0

@JerryDodge:这不是。它特定于一个.pas文件。链接中的问题显示即使在一个全新的项目中也会发生问题。我用Notepad ++解决了这个问题,只是将有问题的行结尾转换为Window格式。它在回答。 –

+0

如果您确定特定文件的具体内容 - 让我们来看看它。 – OnTheFly

回答

6

一原因是:行结束字符在源文件中混合。使用Dos2Unix(批处理)或Notepad ++(如果仅仅是单个或几个文件)将其更正为Windows行结束(CRLF)并且代码完成将返回。 现在发生在我身上,让我失去了一个多小时试图找到发生了什么事。当然,delphi上的CC是bug,这只是一个原因。但是是一个狡猾的。

+4

为什么这个问题应该是社区维基? – RBA

+6

因为是一个很常见的FAQ问题,我不想要代表。 –