Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Import kód do projektu jazyka vyžaduje použitie platformy invoke služby . Platforma invoke služba bola pridaná do Framework . , Aby umožnil prístup k vlastnej dynamických knižníc , objekty COM a rozhrania API Win32 v rámci spravovaného kódu vytvoreného pre Framework .. Tam sú niektoré úvahy je potrebné mať na pamäti , pred použitím funkcie platformy invoke .
Platform Invoke Požiadavky
Pred použitím platformy dovolávať služby , hovor musí byť odkázať na " Interop " služieb v rámci programového kódu . Tento kód musí byť pridaný do hornej väčšine častí hlavnej programovej stránke : " pomocou System.Runtime.InteropServices ; " pred každým použitím platformy vyvolať služby . To informuje kompilátor , že služby mimo hlavného procesu bude potrebné. Súbor knižnice alebo DLL , musia byť tiež umiestnené v priečinku programu Visual Basic projektu tak , že to môže byť volaná pri ladení a runtime operácií .
Platform Invoke Prehlásenie
" Vyhlásenie " určuje názov knižnice je odkazované v projekte , rovnako ako niekoľko atribútov knižnice . Musí byť tiež vytvorený " Prototype " funkcia volaná v danej knižnici . Nasleduje príklad tohto typu vyhlásenia :
" [ DllImport ( " MYDLL.DLL " , CallingConvention = CallingConvention.Cdecl ,
charset = CharSet.Ansi , SetLastError = true , ExactSpelling = true ) ] " prehlasuje , že DLL budú importované a uvádza niekoľko atribútov týkajúce sa DLL , " public static extern int myFunction ( údaje UInt32 ) , " prehlasuje názov funkcie volaná zo súboru DLL a dáva všeobecný prototyp pre jeho použitie .
Úvahy
Import prostredníctvom platformy dovolaním by mala byť použitá len vtedy , keď natívne funkcie neexistuje v rámci operačného systému . Programátori niekedy použiť funkciu platformy invoke volať funkcie API Win32 , ktoré vykonávajú úlohy spôsobom , ku ktorému oni sú viac zvyknutí . Avšak , tieto rovnaké funkcie sú často k dispozícii v základnej knižnici tried s rôznymi konvencie volanie . Import funkcie knižnice DLL do spravovaného kódu - . Všetkých NET funkcie sú riadené kód - vyžaduje aj zváženie otázok , ako garbage collection a výkon procesora . Garbage collection je automaticky postarané v spravovanom kódu , ale má za následok dodatočné programovania pri importe . Import DLL tiež vyžaduje určité spracovanie réžii , ktorá sa pridá k ďalšiemu spracovaniu požadované ďalšieho programovania .