Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 20788|Yanıt: 1

[Kaynak] C# Dinamik Durum Referans DLL Yöntemi (Yeniden Baskı)

[Bağlantıyı kopyala]
Yayınlandı 5.02.2015 20:54:58 | | |
Öncelikle, bir dll kapsüllememiz ve VS2008 altında bir sınıf kütüphanesi oluşturmamız gerekiyor, kod şöyledir:
System kullanmak;
System.Collections.Generic kullanılarak;
System.Linq kullanarak;
System kullanarak kullanmak;
System.Collections.Generic kullanılarak;
System.Linq kullanarak;
System.Text kullanarak;
isim alanı dll
{
    Halk sınıfı addclass
    {
        public static Int32 add(Int32 i, Int32 j)
        {
            return i + j;
        }
    }
}


Derle, dll.dll oluşturmak için derleyin; burada sınıf adı addclass ve metot add'dir.
    Sonra, ana programda bu dll.dll çağırmak için bu dll.dll ana programın bin\Debug klasörüne kopyalamanız gerekir. Dinamik referans dll için System.Reflection kullanılmasını gerektirir; Bu yansıma isim alanı.
özel boşluk testi()
        {
            Assembly ass = Assembly.Load("dll");  dll dosyasını yükle
            Tp = popo yaz. GetType("dll.addclass");  Sınıf adını elde etmek için namespace + sınıf adı kullanmalısınız
            Object obj = Activator.CreateInstance(tp);  Bir örnek oluştur
            MethodInfo meth = tp. GetMethod ("ekle");  Nasıl alınır
            int t = Convert.ToInt32( meth. Invoke(obj, new Object[]{2, 3}) );  Çağırma yöntemi çağırma yöntemi
            MessageBox.Show(t.ToString());
        }

Yukarıdaki yöntem dll'yi dinamik olarak çağırma yöntemidir, ayrıca referans --> yöntemini kullanarak ön yükleme için bir referans (dll.dll) ekleyebilir ve dll kullananın isim alanı adını eşleştirebilirsiniz. Kullanmak için. Ana programda int t= addclass.add(2, 3) kullanın; Hepsi bu.

System.Text;
isim alanı dll
{
    Halk sınıfı addclass
    {
        public static Int32 add(Int32 i, Int32 j)
        {
            return i + j;
        }
    }
}




Önceki:C# dilinde C/C++ DLL'lerde metotlar nasıl çağrılır?
Önümüzdeki:MySQL Şifre Kurtarma Şifre Uygulama Yöntemi Unuttu
Yayınlandı 19.03.2018 21:31:01 |
.net ortamında geliştirilen Dll kütüphanesi VC6 kadar çok yönlü değildir
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com