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.
Platform çağırma, yönetilen kodun Windows API'sindekiler gibi dinamik bağlantı kitaplıklarında (DLL' ler) uygulanan yönetilmeyen işlevleri çağırmasını sağlayan bir hizmettir. Dışarı aktarılan bir işlevi bulup çağırır ve bağımsız değişkenlerini (tamsayılar, dizeler, diziler, yapılar vb.) gerektiğinde birlikte çalışma sınırında sıralar.
Bu bölümde yönetilmeyen DLL işlevlerini kullanmayla ilişkili görevler tanıtılır ve platform çağrısı hakkında daha fazla bilgi sağlanır. Aşağıdaki görevlere ek olarak, genel konular ve ek bilgi ve örnekler sağlayan bir bağlantı vardır.
Dışarı aktarılan DLL işlevlerini kullanmak için
DLL'lerdeki işlevleri tanımlama.
En az düzeyde, işlevin adını ve onu içeren DLL'nin adını belirtmeniz gerekir.
DLL işlevlerini barındıracak bir sınıf oluşturun.
Mevcut bir sınıfı kullanabilir, yönetilmeyen her işlev için ayrı bir sınıf oluşturabilir veya ilgili yönetilmeyen işlevler kümesini içeren bir sınıf oluşturabilirsiniz.
Yönetilen kodda prototipler oluşturun.
[Visual Basic]
DeclaredeyiminiFunctionveLibanahtar sözcükleriyle kullanın. Bazı nadir durumlarda,DllImportAttributeanahtar sözcükleriyle kullanabilirsiniz. Bu durumlar bu bölümün ilerleyen bölümlerinde açıklanmıştır.[C#] DLL ve işlevi tanımlamak için
DllImportAttributeöğesini kullanın. Metodustaticveexterndeğiştiricileriyle işaretleyin.[C++] DLL'yi ve işlevi tanımlamak için öğesini
DllImportAttributekullanın. Sarmalayıcı yöntemini veya işlevini extern "C" ile işaretleyin.-
Yönetilen sınıfınızdaki yöntemi, diğer yönetilen yöntemler gibi çağırın. Yapıların aktarımı ve geri çağırma fonksiyonlarının gerçekleştirilmesi özel durumlardır.
Platform çağrısı ile kullanılacak .NET tabanlı bildirimlerin nasıl oluşturulacağını gösteren örnekler için Platform Çağırma ile Verileri Dönüştürme bölümüne bakın.
Platform çağırma yöntemine daha yakından bakış
Platform çağrısı, dışarı aktarılan işlevleri bulmak ve bağımsız değişkenlerini çalışma zamanında sıralamak için meta verileri kullanır. Aşağıdaki çizim bu süreci göstermektedir.
Platform çağrısı yönetilmeyen bir işlevi çağırdığında aşağıdaki eylem dizisini gerçekleştirir:
İşlevi içeren DLL'yi bulur.
DLL'yi belleğe yükler.
İşlevin bellekteki adresini bulur ve bağımsız değişkenlerini yığına göndererek verileri gerektiği gibi sıralar.
Uyarı
DLL'yi bulma ve yükleme ve işlevin adresini bellekte bulma yalnızca işleve yapılan ilk çağrıda gerçekleşir.
Denetimi yönetilmeyen işleve aktarır.
Platform çağrısı, yönetilmeyen fonksiyon tarafından oluşturulan hata durumlarını yönetilen çağırıcıya iletir.