Sovint, un programador. NET s’enfronta a la tasca d’utilitzar la funcionalitat d’una DLL dinàmica escrita per un altre desenvolupador en codi no gestionat. De vegades, la funcionalitat d'aquesta biblioteca pot ser molt i molt extensa. Registre manualment cada classe, funció, constant, etc. al vostre projecte. - molt de temps. Afortunadament, hi ha eines que automatitzen parcialment aquest procés. En parlarem d’un d’ells.
Necessari
- - PC amb Visual Studio 2008/2010;
- - Internet.
Instruccions
Pas 1
Si teniu una biblioteca dinàmica *.dll escrita en codi no gestionat, per exemple, en C o C ++, així com els fitxers de capçalera, i heu de declarar un munt de construccions de biblioteca al vostre projecte, solució per a vostè pot ser l'eina PInvoker. PInvoker es distribueix lliurement com a extensió per al Visual Studio IDE (s'admeten les versions 2005, 2008 i 2010), així com com a aplicació autònoma.
Treballar-hi és senzill i convenient. PInvoker importa definicions de PInvoke per al codi C # o VB. NET gestionat des de fitxers de capçalera C / C ++ i la seva DLL associada. Només heu de triar entre una llista de funcions disponibles, estructures, enumeracions, constants, delegats, etc. necessaris i importats al vostre projecte.
Primer heu de descarregar i instal·lar PInvoker. Baixeu-vos l’instal·lador de PInvoker.msi o l’extensió de PInvokerAddin.msi per a Visual Studio des del lloc web oficial. Crec que això no hauria de ser un problema. Només cal que executeu el fitxer que vulgueu i seguiu les instruccions.
Pas 2
Vegem un exemple de com treballar amb aquesta útil eina. Inicieu Visual Studio, creeu un projecte nou. S'ha afegit un element nou al menú Eines -> Eines: PInvoker. Feu-hi clic i s’obrirà la finestra de configuració del complement de PInvoker. Seleccioneu l'idioma del vostre projecte Idioma: C # o VB. NET. A la llista desplegable Perfils, seleccioneu edita perfils.
Pas 3
S'obrirà la finestra de gestió de perfils. Seleccioneu Crea un perfil d'importació nou i feu clic a Següent.
Pas 4
Ara cal afegir els fitxers de capçalera. Podeu arrossegar-los i deixar-los anar a la finestra de l'Assistent de perfils de PInvoker. A continuació, especifiqueu el directori on s’emmagatzemen aquests fitxers.
Pas 5
El següent pas és especificar la pròpia biblioteca dinàmica. També podeu arrossegar-lo amb seguretat amb el ratolí a la finestra de l'assistent de perfil de PInvoker.
Pas 6
Després de fer clic al botó Finalitza, s'iniciarà el procés d'importació de definicions de la biblioteca dinàmica seleccionada. La finalització correcta de l'operació s'indicarà mitjançant la inscripció Importació correcta i la llista de noms de funcions de la DLL que apareix al camp esquerre.
Pas 7
Ara podeu importar fàcilment definicions de PInvoke al vostre projecte. Al camp esquerre (1), al camp Tipus, seleccioneu el tipus: funció, procediment, estructura, enumeració, constant, delegat, etc. Al camp Nom, seleccioneu el nom de l'estructura requerida. Amb un sol clic, la seva descripció apareixerà al camp central de la finestra de PInvoker (2). Doble: obrirà la seva definició al fitxer de capçalera. En fer clic al botó Insereix una definició (3), s’inserirà la definició al vostre projecte C # / VB. NET. Ara podeu utilitzar la funció DLL importada al vostre projecte.