Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 20788|Odpověď: 1

[Zdroj] C# Dynamická referenční DLL metoda (přetisk)

[Kopírovat odkaz]
Zveřejněno 05.02.2015 20:54:58 | | |
Nejprve musíme zapuzdrit dll a vytvořit knihovnu tříd pod VS2008, kód je následující:
pomocí System;
pomocí System.Collections.Generic;
pomocí System.Linq;
pomocí systému (používající systém);
pomocí System.Collections.Generic;
pomocí System.Linq;
pomocí System.Text;
Jmenný prostor DLL
{
    Veřejná třída sčítací třídy
    {
        public static Int32 add (Int32 i, Int32 j)
        {
            vrátit i + j;
        }
    }
}


Kompilujte do dll.dll, kde se třída jmenuje addclass a metoda se addclass.
    Dále, abyste tuto dll.dll v hlavním programu zavolali, musíte tuto dll.dll zkopírovat do složky bin\Debug hlavního programu. Dynamické referenční dll vyžaduje použití System.Reflection; Tento reflection namespace.
Private Void Test()
        {
            Assembly ass = Assembly.Load("dll");  Načíst soubor dll
            Typ tp = zadek. GetType("dll.addclass");  Pro získání názvu třídy musíte použít jmenný prostor + název třídy
            Object obj = Activator.CreateInstance(tp);  Zřiďte instanci
            MethodInfo meth = tp. GetMethod("add");  Jak ho získat
            int t = Konvert.ToInt32( meth. Invoke(obj, new Object[]{2, 3}) );  Metoda volání volání
            MessageBox.Show(t.ToString());
        }

Výše uvedené je metoda dynamického volání dll, můžete také použít metodu reference --> k přidání reference (dll.dll) pro přednačtení a přiřazení názvu jmenného prostoru používajícího dll. k použití. V hlavním programu použijte int t= addclass.add(2, 3); To je vše.

System.Text;
Jmenný prostor DLL
{
    Veřejná třída sčítací třídy
    {
        public static Int32 add (Int32 i, Int32 j)
        {
            vrátit i + j;
        }
    }
}




Předchozí:Jak volat metody v C/C++ DLL v C#
Další:Metoda implementace hesla pro obnovu hesla MySQL
Zveřejněno 19.03.2018 21:31:01 |
Knihovna Dll vyvinutá v prostředí .net není tak univerzální jako VC6
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com