MarshalAs (UnmanagedType.ByValArray, ограничение размера SizeConst - PullRequest
1 голос
/ 21 февраля 2012

кто-нибудь знает, если MarshalAs (UnmanagedType.ByValArray, SizeConst

SizeCount, когда маршелинг имеет ограничение по размеру. Я вижу, что если размер большой, то 100000 вызов функции маршелинга не работает, и когда я ставлю 10000,функция работает.

кто-нибудь знает почему?

1 Ответ

1 голос
/ 12 января 2013

Как говорит Ганс Пассант, существует ограничение в 64 КБ, и я не знаю почему. Вы всегда можете попробовать другой подход с Marshal.AllocHGlobal и Marshal.PtrToStructure / Marshal.StructureToPtr. Однако я не знаю, сможете ли вы справиться с этим; если нет, вы должны записывать данные по частям, а затем передавать указатель на выделенный блок в функцию API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...