2009-01-29 18 views
6

Delphi 2007 kullanıyorum. Bazen bileşenlere bağlanan özellikler kayboluyor. Bu genellikle Eylem özellikleri ve arama verileridir. Birkaç kez acil durum hata düzeltmeleri yaptık ve bu :-) nedeniyle bir felaketle sonuçlanan bir versiyona gönderdim :-) Ayarlanması gereken özelliklerin gerçekten ayarlandığını ya da bir yolu doğrulamak için herhangi bir yolu bilen var mı? Bunun olmasını önlemek için?Bileşenlere bağlanan Özelliklerin "kayıp" olmadığını kontrol edebilir miyim?

cevap

5

Bunu (oy verilen) bir durum meydana geldiğinde algılamak konusunda birkaç iyi yanıtlar aldık. Fakat bunun olmasını engellemenin bir yolu (bazen), referans alınan tüm birimleri DPR'nize eklediğinizden emin olmaktır. Bir form açarsanız, örneğin bir veri modülündeki diğer bileşenlere referans veren bileşenler içeren ve bu veri modülü DPR/projesine eklenmemişse, IDE'nin bu referansları kaldırması neredeyse garantidir, çünkü belirleyemediği referansları geçersiz kılar. Öte yandan, veri modülü DPR'de ise, IDE onu bulabilir ve ilk etapta referansların kaldırılması daha az olasıdır.

Ne yazık ki, hala Zaman, bu yüzden diğer cevaplarda detaylandırılmış olan ihtiyati tedbirleri almanız gerekiyor. Ama bunu zaten yapmazsanız, bu işleri daha iyi hale getirecektir.

10

Bu değerleri kodda açıkça atayabilirsiniz.

Daha da önemlisi bile, sourcecontrol işlemeden önce her dosyayı diff gerekir. Her zaman.

emin dfm-dosyaları olun ikili değil, metindir. Ardından, check-in/taahhüt işleminden önce istenmeyen değişiklikleri görmek kolay olacaktır.

Her şeyden vazgeçmek, benim için bir sürü potansiyel aksaklığı durdurdu.

bir otomatik inşa ve ayrıca yayınladıklarınızı bazı güven verecek test sistemi.

+0

Bu konuda sahip olduğum sorunlar genellikle bir form kaydedildiğinde IDE'de açık olmayan diğer formlara bağlantılar oluşturdu. Çalıştığından emin olmak için kod ve sistem testleri oluşturdum. – mj2008

+0

Proje Dosyalarını birlikte kullanmak için Delphi Project Gruplarını kullandığımda benzer bir şey olur. Bunu kullandığım anda, veritabanıyla ilgili bileşenlerin, tablolarının açık olduğu DataModule ile olan bağlantılarını kaybeder. Proje Gruplarını kullanarak vazgeçtim. –

1

Değerlerin doğru ayarlanıp doğrulanmadığını kontrol etmenin bir yolunu istiyorsunuz. Eh, bunun için birim testleri kullanabilirsiniz. Sadece bir formu başlat, özellikleri karşılaştır ve yap.

Dfm'lerin karşılaştırılması da iyi bir yoldur, ancak değiştirilen varsayılanlar veya koddaki değişiklikler nedeniyle değişiklikleri dikkate almaz.

2

dunit test projesi oluşturun. Serbest bırakmadan önce testi çalıştırın. Test başarısız olduğunda tüm çanları seslendirin.

1

Bir projeye bir form, veri modülü veya çerçeve eklediğinizde, IDE dpr dosyasına birim adından sonra küçük bir "etiket" ekler. Bu etiketin herhangi bir nedenle mevcut olmaması durumunda IDE'nin çapraz modül bileşen referanslarını kaybetmeye daha yatkın olduğu benim deneyimim oldu. Her sürüm kontrolü için taahhüt önce bir şey gibi kullanıyorsanız

ben kalbiyle, hep inceleyen farklılıkların fikrini desteklemektedir.

1

Ben kaynak kodu denetimi bu durumlarda yardımcı olabilir ama bu demek nefret. Bir acil durum hata düzeltmesiyle bile her şeyi bir kaynak kod deposunda kontrol etmelisiniz (Perforce kişisel favorimdir). Küçük bir düzeltmede, beklemediğiniz değişikliklerin olup olmadığını hangi dosyaların değiştirdiğini görebilirsiniz.

İlgili konular