Aracılığıyla paylaş


Yayın Derlemesi Oluşturmadaki Genel Sorunlar

Geliştirme sırasında genellikle projenizin hata ayıklama derlemesi ile derleme ve test etme işlemi yaparsınız. Daha sonra uygulamanızı bir yayın derlemesi için derlerseniz erişim ihlali alabilirsiniz.

Aşağıdaki listede hata ayıklama ile sürüm (nondebug) derlemesi arasındaki birincil farklar gösterilmektedir. Başka farklılıklar da vardır, ancak bir uygulamanın bir hata ayıklama derlemesinde çalışırken bir yayın derlemesinde başarısız olmasına neden olabilecek birincil farklılıklar aşağıdadır.

Hata ayıklama derlemelerinde yayın derleme hatalarını yakalama hakkında bilgi için /GZ (Derleme hatalarını ayıklamada Yayın-Derleme Hatalarını Yakala) derleyici seçeneğine bakın.

Yığın Düzeni

Yığın düzeni, uygulama hata ayıklamada çalışırken görünen sorunların yaklaşık yüzde doksanının nedeni olur, ancak serbest bırakılmaz.

Projenizi hata ayıklama için oluşturduğunuzda, hata ayıklama bellek ayırıcısını kullanıyorsunuz. Bu, tüm bellek ayırmalarının çevrelerine yerleştirilmiş koruma baytları olduğu anlamına gelir. Bu koruma baytları bir belleğin üzerine yazılmasını algılar. Yığın düzeni sürüm ve hata ayıklama sürümleri arasında farklı olduğundan, bellek üzerine yazma işlemi hata ayıklama derlemesinde herhangi bir sorun oluşturmayabilir, ancak yayın derlemesinde yıkıcı etkileri olabilir.

Daha fazla bilgi için bkz . Bellek Üzerine Yazmayı Denetleme ve Hata Ayıklama Derlemesini Kullanarak Bellek Üzerine Yazmayı Denetleme.

Derleme

MFC makrolarının çoğu ve MFC uygulamasının çoğu, yayın için oluşturduğunuzda değişir. Özellikle, ASSERT makro bir yayın derlemesinde hiçbir şey değerlendirmez, bu nedenle ASSERTs içinde bulunan kodlardan hiçbiri yürütülmeyecek. Daha fazla bilgi için bkz . ASSERT Deyimlerini İnceleme.

Bazı işlevler, yayın derlemesinde daha yüksek hız için çizilidir. İyileştirmeler genellikle bir sürüm derlemesinde açıktır. Farklı bir bellek ayırıcısı da kullanılıyor.

İşaretçi Desteği

Hata ayıklama bilgilerinin olmaması, doldurmayı uygulamanızdan kaldırır. Yayın derlemesinde, başıboş işaretçilerin bilgilerde hata ayıklamak yerine başlatılmamış belleğe işaret etme şansı daha yüksektir.

İyileştirmeler

Belirli kod kesimlerinin yapısına bağlı olarak, iyileştirme derleyicisi beklenmeyen kodlar oluşturabilir. Bu, sürüm derleme sorunlarının en düşük olası nedenidir, ancak bazen ortaya çıkar. Çözüm için bkz . Kodunuzu İyi hale getirme.

Ayrıca bkz.

Yayın Derlemeleri
Yayın Derlemesi Sorunlarını Giderme