Diskuze: import funkce s ukazatelem na pole

C# .NET .NET (C# a Visual Basic) import funkce s ukazatelem na pole American English version English version

Avatar
jt.e
Člen
Avatar
jt.e:

Ahoj, prosím o pomoc: Jakým způsobem importovat funkci s dll, napsanou v C++ pro C++.

funkce v dll vypadá takto:

extern "C"
{
 //sz_output je velikost pole output (unsigned char = byte)
 void __declspec(dllexport) GetMainData(const unsigned int sz_output, unsigned char *output);
 //funkce zapíše do pole output výstupní hodnoty
}

potřeboval bych tyto hodnoty dostat do byte[]

něco ve smyslu jako:

uint rozmer = 128;
byte[] pole = new byte[rozmer];
GetMainData(rozmer, pole);
..
Editováno 30.9.2015 19:45
 
Odpovědět 30.9.2015 19:43
Avatar
Milan Křepelka
Redaktor
Avatar
Milan Křepelka:

Tyhlecty čuňárny moc nemám rád. Ale někdy se stane, že není zbytí. Asi bych začal tady

https://msdn.microsoft.com/…ary/aa288468(v=vs.71).aspx

Nicméně pokud znáš funkci se stejnou signaturou, koukni se na http://www.pinvoke.net/ Tyhlecty věci tam mají dost zmáknutý.

Dokonce vidím že tam mají i plugin který by ti mohl významně pomoci.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 30.9.2015 19:52
Avatar
jt.e
Člen
Avatar
Odpovídá na Milan Křepelka
jt.e:

Díky, pinvoke mi určitě pomůže.

 
Nahoru Odpovědět 2.10.2015 18:25
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.