Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
.Net tabanlı uygulamalar için derlemeler, dağıtım, sürüm kontrolü, yeniden kullanım, etkinleştirme kapsamı ve güvenlik izinlerinin temel birimleridir. Derleme, birlikte çalışacak ve mantıksal işlev birimi oluşturacak şekilde oluşturulmuş bir tür ve kaynak koleksiyonudur. Derlemeler yürütülebilir (.exe) veya dinamik bağlantı kitaplığı (.dll) dosyalarının biçimini alır ve .NET uygulamalarının yapı taşlarıdır. Ortak dil çalışma zamanı ortamına, tür uygulamalarından haberdar olması için ihtiyaç duyduğu bilgileri sağlarlar.
.NET ve .NET Framework'te bir veya daha fazla kaynak kod dosyasından derleme oluşturabilirsiniz. .NET Framework'te derlemeler bir veya daha fazla modül içerebilir. Bu şekilde, birden çok geliştiricinin tek bir derleme oluşturmak için birleştirilen ayrı kaynak kodu dosyaları veya modülleri üzerinde çalışabilmesi için daha büyük projeler planlanabilir. Modüller hakkında daha fazla bilgi için bkz . Nasıl yapılır: Çok dosyalı derleme oluşturma.
Bütünleştirmeler aşağıdaki özelliklere sahiptir:
Derlemeler .exe veya .dll dosyaları olarak uygulanır.
.NET Framework'i hedefleyen kitaplıklar için, derlemeleri genel derleme önbelleğine (GAC) yerleştirerek uygulamalar arasında paylaşabilirsiniz. Derlemeleri GAC'ye ekleyebilmeniz için önce tanımlayıcı adla adlandırmanız gerekir. Daha fazla bilgi için bkz. Güçlü adlandırılmış derlemeler.
Bütünleştirmeler sadece gerektiğinde belleğe yüklenir. Kullanılmadıysa, yüklenmez. Bu nedenle, derlemeler daha büyük projelerdeki kaynakları yönetmek için verimli bir yol olabilir.
Programatik olarak yansıma kullanarak bir derleme hakkında bilgi edinebilirsiniz. Daha fazla bilgi için bkz . Yansıma (C#) veya Yansıma (Visual Basic).
Bir derlemeyi incelemek amacıyla .NET ve .NET Framework'te MetadataLoadContext sınıfını kullanarak yükleyebilirsiniz. MetadataLoadContext Assembly.ReflectionOnlyLoad yöntemlerinin yerini alır.
Ortak dil çalışma zamanındaki derlemeler
Derlemeler, ortak dil çalışma zamanına tür uygulamaları hakkında dikkat etmesi gereken bilgileri sağlar. Çalışma zamanında, bir derleme bağlamının dışında bir tür yoktur.
Derleme aşağıdaki bilgileri tanımlar:
Ortak dil çalışma zamanının yürüttüğü kod. Her derlemenin yalnızca bir giriş noktası olabilir:
DllMain
,WinMain
veyaMain
.Güvenlik sınırı. Derleme ya da birleştirme, izinlerin istendiği ve verildiği birimdir. Derlemelerdeki güvenlik sınırları üzerine daha fazla bilgi için bakınız Derleme güvenliği dikkate alınması gerekenler.
Tür sınırı. Her türün kimliği, içinde bulunduğu derlemenin adını içerir. Bir derlemenin kapsamında yüklenen adlı
MyType
tür, başka bir derlemenin kapsamında yüklenen adlıMyType
türle aynı değildir.Başvuru kapsamı sınırı: Derleme bildiriminde türleri çözümlemek ve kaynak isteklerini karşılamak için kullanılan meta veriler bulunur. Bildirim, derleme dışında kullanıma sunulan türleri ve kaynakları belirtir ve bağımlı olduğu diğer derlemeleri numaralandırır. Taşınabilir yürütülebilir (PE) dosyasındaki ortak ara dil (CIL) kodu, ilişkili bir derleme bildirimine sahip olmadığı sürece yürütülemez.
Sürüm sınırı. Derleme, ortak dil çalışma zamanındaki en küçük sürümlenebilir birimdir. Aynı derlemedeki tüm türler ve kaynaklar birim olarak sürümlenir. Derleme bildirimi, bağımlı derlemeler için belirttiğiniz sürüm bağımlılıklarını açıklar. Sürüm oluşturma hakkında daha fazla bilgi için bkz. Derleme sürümü oluşturma.
Dağıtım birimi: Bir uygulama başlatıldığında, yalnızca uygulamanın başlangıçta çağıracağı derlemeler mevcut olmalıdır. Yerelleştirme kaynaklarını veya yardımcı program sınıflarını içeren derlemeler gibi diğer derlemeler isteğe bağlı olarak alınabilir. Bu işlem, uygulamaların ilk indirildiğinde basit ve ince olmasını sağlar. Derlemeleri dağıtma hakkında daha fazla bilgi için bkz. Uygulamaları dağıtma.
Yan yana yürütme birimi: Derlemenin birden çok sürümünü çalıştırma hakkında daha fazla bilgi için bkz. Derlemeler ve yan yana yürütme.
Bir montaj oluşturun
Derlemeler statik veya dinamik olabilir. Statik derlemeler, taşınabilir yürütülebilir (PE) dosyalarda bir diskte depolanır. Statik derlemeler arabirimleri, sınıfları ve bit eşlemler, JPEG dosyaları ve diğer kaynak dosyaları gibi kaynakları içerebilir. Doğrudan bellekten çalıştırılan ve yürütmeden önce diske kaydedilmeyen dinamik derlemeler de oluşturabilirsiniz. Dinamik derlemeleri yürütüldükten sonra diske kaydedebilirsiniz.
Derlemeler oluşturmanın çeşitli yolları vardır. .dll veya .exe dosyaları oluşturabilen Visual Studio gibi geliştirme araçlarını kullanabilirsiniz. Diğer geliştirme ortamlarındaki modüllerle derlemeler oluşturmak için Windows SDK'daki araçları kullanabilirsiniz. Dinamik derlemeler oluşturmak için gibi System.Reflection.Emitortak dil çalışma zamanı API'lerini de kullanabilirsiniz.
Derlemeleri Visual Studio'da oluşturarak, .NET Core komut satırı arabirim araçlarıyla oluşturarak veya bir komut satırı derleyicisi ile .NET Framework derlemeleri oluşturarak derleyin. .NET CLI kullanarak derleme oluşturma hakkında daha fazla bilgi için bkz. .NET CLI'ya genel bakış.
Uyarı
Visual Studio'da derleme oluşturmak için Derleme menüsündeDerle'yi seçin.
Bütünleştirme manifestosu
Her derlemenin bir derleme bildirim dosyası vardır. İçindekiler tablosuna benzer şekilde, derleme bildirimi şunları içerir:
Derlemenin kimliği (adı ve sürümü).
Bir dosya tablosu, oluşturduğunuz .exe veya .dll dosyalarına bağlı olan diğer derlemeler, bitmap dosyaları veya Benioku dosyaları gibi derlemeyi oluşturan diğer tüm dosyaları açıklar.
Derleme başvuru listesi, .dll veya diğer dosyalar gibi tüm dış bağımlılıkların bir listesidir. Derleme birimleri hem genel hem de özel nesnelere referanslar içerir. Genel nesneler diğer tüm uygulamalar tarafından kullanılabilir. .NET Core'da genel nesneler belirli bir .NET Core çalışma zamanıyla birleştirilmiştir. .NET Framework'te, genel nesneler genel derleme önbelleğinde (GAC) bulunur. System.IO.dll , GAC'deki bir derleme örneğidir. Özel nesneler, uygulamanızın yüklendiği dizinde veya altında bir dizin düzeyinde olmalıdır.
Derlemeler içerik, sürüm oluşturma ve bağımlılıklar hakkında bilgi içerir. Bu nedenle, bunları kullanan uygulamaların düzgün çalışması için Windows sistemlerindeki kayıt defteri gibi dış kaynaklara güvenmesi gerekmez. Derlemeler .dll çakışmalarını azaltır ve uygulamalarınızı daha güvenilir ve daha kolay dağıtılır hale getirir. Pek çok durumda, .NET tabanlı bir uygulamayı yalnızca dosyalarını hedef bilgisayara kopyalayarak yükleyebilirsiniz. Daha fazla bilgi için bkz Bileşen Bildirimi.
Derlemeye referans ekleme
Bir uygulamada bir derleme kullanmak için, ona bir referans eklemeniz gerekir. Bir derlemeye başvurulduğunda, ad alanlarının tüm erişilebilir türleri, özellikleri, yöntemleri ve diğer üyeleri, kodu kaynak dosyanızın bir parçasıymış gibi uygulamanız tarafından kullanılabilir.
Uyarı
.NET Sınıf Kitaplığı'ndaki çoğu derlemeye otomatik olarak başvurulur. Bir sistem derlemesine otomatik olarak başvurulmazsa, aşağıdaki yollardan birini kullanarak bir başvuru ekleyin:
- .NET ve .NET Core için, derlemeyi içeren NuGet paketine bir başvuru ekleyin. Visual Studio'da NuGet Paket Yöneticisi'ni kullanın veya .csproj veya .vbproj projesine derleme için packageReference<> öğesi ekleyin.
- .NET Framework için, Visual Studio'da Başvuru Ekle iletişim kutusunu veya C# veya
-reference
Visual Basic derleyicileri için komut satırı seçeneğini kullanarak derlemeye bir başvuru ekleyin.
C# dilinde, aynı derlemenin iki sürümünü tek bir uygulamada kullanabilirsiniz. Daha fazla bilgi için bkz. extern alias.
İlgili içerik
Başlık | Açıklama |
---|---|
Derleme içeriği | Bir derlemeyi oluşturan öğeler. |
Derleme bildirimi | Derleme bildirimindeki veriler ve bu verilerin derlemelerde nasıl depolandığı. |
Genel derleme önbelleği | GAC'nin derlemeleri depolama ve kullanma şekli. |
Güçlü adlandırılmış derlemeler | Güçlü adlandırılmış derlemelerin özellikleri. |
Derleme güvenliğiyle ilgili dikkat edilmesi gerekenler | Derlemeler ile güvenlik nasıl çalışır? |
Derleme sürümü oluşturma | .NET Framework sürüm oluşturma ilkesine genel bakış. |
Montaj yerleşimi | Derlemeler nerede bulunur. |
Derlemeler ve yan yana yürütme | Çalışma zamanının veya derlemenin birden çok sürümünü aynı anda kullanın. |
Dinamik yöntemleri ve derlemeleri yayma | Dinamik derlemeler oluşturma. |
çalışma zamanı kütüphaneleri nasıl bulur | .NET Framework'ün çalışma zamanında derleme başvurularını çözümleme şekli. |
Kaynak
Ayrıca bkz.
- .NET derleme dosyası biçimi
- Arkadaş derlemeleri
- Başvuru derlemeleri
- Nasıl yapılır: Bütünleştirilmiş kodları yükleme ve kaldırma
- Nasıl yapılır: .NET Core'da derleme kaldırılabilirliğini kullanma ve hatalarını ayıklama
- Nasıl yapılır: Dosyanın bir derleme olup olmadığını belirleme
- Nasıl yapılır: MetadataLoadContext kullanarak derleme içeriğini inceleme