2011-05-12 17 views
6

Delphi XE ile denedim ve derlerken Yanıt Vermiyorum. Bilgisayarınızda çalışıyor mu yoksa işlevle ilgili bir sorun mu var?Bu işlevi derlerken yanıt vermiyor musunuz?

function Test(const FileName: string; 
    const Force: boolean = false): boolean; 
var 
    IsAllowed: boolean; 
begin 
    result := false; 
    if FileExists(FileName) then 
    begin 
    try 
     if (Force) then 
     begin 
     result := false; 
     exit; 
     end; 
    finally 
     if IsAllowed then 
     DeleteFile(FileName); 
    end; 

    try 
     result := true; 
    except 
     result := false; 
    end; 
    end; 
end; 
+0

2010. –

cevap

11

Bilgisayarımda derleniyor. Her ne kadar W1036 Değişkeni 'IsAllowed' uyarısı verilemese de başlatılmış olabilir.

Güncelleştirme: Windows'u kullanım deyimine eklediğimde askıda kalabilirim. Kalite Merkezine Gönderilen: QC93806.

program hang_test; 

{$APPTYPE CONSOLE} 

uses 
    // Windows, // uncomment to include Windows -> hang on compile 
    SysUtils; 

function Test(const FileName: string; const Force: boolean = false): boolean; 
    // your function here 

begin 
    try 

    except 
    on E: Exception do 
     Writeln(E.ClassName, ': ', E.Message); 
    end; 
end. 

Hata gibi görünüyor; Bunu Quality Central numaralı telefondan bildirmelisiniz.

Güncelleme 2: Minimal durum tekrarlanabilir derleyici kilitleniyor: Bu işlev benim Delphi ince derler

function HangCompiler: Boolean; 
begin 
    try 
    Exit; // 1. exit from a try..finally 
    finally 
    DeleteFile(''); // 2. inlined function call in finally (include Windows to inline) 
    end; 
    // 3. try..except 
    try 
    Result := True; 
    except 
    Result := False; 
    end; 
end; 
+0

Evet, o * kudretinin çok başlatılmamış almamış * bir şans olduğunu düşünüyorum! –

+0

"DeleteFile (FileName);" veya "result: = true;" ifadelerini kullanırsam derleyebilirim. Delphi XE'inizin sürümü nedir? – user

+0

Evet, Windows'un kullanım cümlesi, sorun oluşturucudur. Sadece Windows '' yorumlamaya çalışıyorum ve işlevi derleyebilirim. Güncelleştirme 1 ve Yardım Güncelleştirmesi 2 ile – user

İlgili konular