Tengo claro como acceder desde C# a funciones dentro de una DLL escrita en C++.
Por ejemplo, si yo tuviese la siguiente función en C++ dentro de una DLL (pepe.dll):
int foo(unsigned short num)
{
// ...
}
Podría declarar en C#:
class LoQueSea
{
[DllImport("pepe.dll", CharSet=CharSet.Auto, SetLastError=true)]
public static extern int foo(ushort num);
}
Luego para acceder a la función debería escribir:
int valor = LoQueSea.foo(1);
Lo que no entiendo y me estoy (nooo) es como acceder al método (no estático) de una clase en C++ dentro de una DLL (not managed):
Ej:
class Clase1
{
void foo(int num);
}
¿Como escribo el DllImport en este caso? ¿Acaso esto no se puede hacer?
Desde ya muchas gracias.
¿Te refieres a utilizar esa clase en C#? Porque "acceder al método" no tiene mucho sentido, sino.
Claro, mi idea es utilizar mi motor C++ desde C#.
Mi motor C++ está compuesto por clases y no sólo por funciones globales. Entonces no se como poder acceder a ellas.