Tengo el siguiente dll: "DSLRRemoteLib.dll", cabe mencionar que es una
biblioteca en hecha en C. Con Visual Studio 2005 (VS2005) mando a
llamar una función del dll en mi programa de la siguiente forma:
[DllImport("DSLRRemoteLib.dll")]
public static extern int PingCamera();
y no hay ningún problema.
Decidí probar en Linux si se puede mandar a llamar un dll de windows
en C#. Asi que escribo el siguiente código:
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// project created on 23/06/2007 at 10:49 a
using System;
using System.Text;
using System.Runtime.InteropServices;
namespace UsandoDll
{
class MainClass
{
[DllImport("DSLRRemoteLib.dll")]
public static extern int PingCamera();
public static void Main(string[] args)
{
MainClass.PingCamera();
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
y compila sin ningún problema. Cuando ejecuto el programa sale lo
siguiente:
Unhandled Exception: System.DllNotFoundException: DSLRRemoteLib.dll
in (wrapper managed-to-native) UsandoDll.MainClass:PingCamera ()
in [0x00000] (at /home/fuy/Projects/UsandoDll/UsandoDll/Main.cs:16)
UsandoDll.MainClass:Main (System.String[] args)
Alguien que me ayude a entender a que se refiere con ese mensaje?
Simplemente no se puede usar un dll de windows en Linux mediante C# ?
ok
ATTE
Fuy