но как-то она некорректно работает. Похоже некорректно представил указатель на структуру pFTH_Low_High_Pins.
В теле программы код таков
FTCSPI.FTH_Low_High_Pins pFTH_Low_High_Pins = new FTCSPI.FTH_Low_High_Pins();
ft = FTCSPI.SPI_GetHiSpeedDeviceGPIOs(pftHandle, ref pFTH_Low_High_Pins);
Заранее благодарен
Re: Переписать функцию из С++ под C# для микросхемы FT2232HL
C> [StructLayout(LayoutKind.Sequential)] C> public struct FTH_Low_High_Pins{ C> bool bPin1LowHighState; C> bool bPin2LowHighState; C> bool bPin3LowHighState; C> bool bPin4LowHighState; C> bool bPin5LowHighState; C> bool bPin6LowHighState; C> bool bPin7LowHighState; C> bool bPin8LowHighState;
А Вы точно уверены, что WinAPI32 тип BOOL кладется ровно в тип bool на C#?
Насколько я помню BOOL в WinAPI — это 4 байта (т.е. int), а bool в CLI (в общем случае) — это один байт...
Может здесь собака порылась?
Re: Переписать функцию из С++ под C# для микросхемы FT2232HL
Здравствуйте, csm7, Вы писали:
N_C>А Вы точно уверены, что WinAPI32 тип BOOL кладется ровно в тип bool на C#? N_C>Насколько я помню BOOL в WinAPI — это 4 байта (т.е. int), а bool в CLI (в общем случае) — это один байт... N_C>Может здесь собака порылась?
C>Заранее благодарен
Здравствуйте, csm7, Вы писали:
C>Да я посмотрел в C# SizeOf выдал 4 байта для BOOL Я попробовал выровнять на 1 байт но легче не стало
Мне кажется, что Вам надо выровнять не на 1 байт, а на 4-ре...
Т.е. исходная структура содержит набор четырехбайтных значений, а подсовываете вы ей структуру однобайтных...
Re: Переписать функцию из С++ под C# для микросхемы FT2232HL