čau.. předem nevim jestli to spadá do c++/.net spíš obojí...
jde o to, že prostě nevim proč to nejde, pokud třeba dám parametr funkce string/LPCSTR např. mám
extern "C" __declspec(dllexport) LPCSTR GetString(LPCSTR str)
{
return str;
}
správně by v C# mělo být:
[DllImport("soubor.dll")]
public static extern string GetString(string str);
problém ale je, pokud zavolám tuhle funkci, tak nastvává problém s PInvoke
A call to PInvoke function 'Program::GetString' has unbalanced the stack.
This is likely because the managed PInvoke signature does not match the unmanaged target signature.
Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature.
Prostě nechápu proč to nejede :/ pokud tam dám int nebo tyhle zakladní typy tak ok, ale string nějak nechce a pritom je plno winapi funkcí, ktery to mají taky... např. FindWindow má 2x LPCSTR a v C# to je jako string a funguje