PDA

Ver la Versión Completa : Como importar funciones de una DLL en C#


edgusano
01-04-2005, 21:17:43
Hola Foro.

Como hago para importar las funciones de una DLL en C#, agradeceria que me diran los pasos para lograr esto, para hacerlo en Delphi 2005.

__hector
01-04-2005, 21:42:12
La dll esta escrita en .NET?
Es managed code?

Si es asi, te basta con meterla como referencia en el proyecto y hacer un using elNamespacedelaDLL

Sino, usando System.Runtime.InterServices, va mas o menos asi:


[DllImport( "User32.dll", CharSet = CharSet.Auto)]
private static extern int SystemParametersInfo(
int lAction, int lParam, int lpvParam, int luWinIni);

edgusano
02-04-2005, 00:42:37
La DLL esta escrita en C.
Ya he logrado que me acepte el llamado a esta, el problema radica en que no me esta haciendo lo que quiero que haga, ademas tengo problemas con los parametros de esta procedimiento, puesto que la funcion que esta hecha en C es de esta forma:

nombre(char *Cad, char *Cad2, char *Cad3);

Como le debo especificar al dllimport para que me pueda tomar estos parametros, puesto que en una de estas cadenas me esta retornando un valor.

__hector
05-04-2005, 05:23:53
supongo que puedes pasarle strings. Y si uno de los parametros de entrada es a la vez un retorno, puedes especificarlo pasando el valor por referencia, o como parametro de salida con out.

La verdad nunca lo he hecho...

gacha69
30-10-2006, 08:57:47
Utiliza PChar para los strings que tengas que utilizar en las DLL