Мне нужно манипулировать StrVal
, так как struct
переводится в управляемый C#. Я пытаюсь использовать тип строки BSTR
, так как он сохраняет действия по выделению памяти, но я не знаком с неуправляемыми типами данных. Проблема в том, что я не вижу никаких изменений, внесенных в значение.
typedef struct {
int Id;
BSTR StrVal;
}packet;
packet pks [5];
// ...
pks[i].StrVal = L"abcdefghij";
for (int i = 0; i < 10; i++)
{
pks[i]=i;
//pks[i].StrVal = SysAllocString(L"abcdefghi"+i);
pks[i].StrVal[9]=i+'0';
}
Как я могу выполнить задание?