Почему обьект не может быть зафиксирован при Маршаленге?
От: Аноним  
Дата: 16.06.10 16:35
Оценка:
При выполнении маршалинга в среде CLR есть два пути развития событий: копирование и фиксация. Почему в следующем примере объект arg не может быть зафиксирован
[DllImport(@"MarshalLib.dll", CharSet = CharSet.Ansi)]
public static extern string PassAnsiString(string arg);
Re: Почему обьект не может быть зафиксирован при Маршаленге?
От: TK Лес кывт.рф
Дата: 17.06.10 07:45
Оценка:
Здравствуйте, Аноним, Вы писали:

А>При выполнении маршалинга в среде CLR есть два пути развития событий: копирование и фиксация. Почему в следующем примере объект arg не может быть зафиксирован

А>
А>[DllImport(@"MarshalLib.dll", CharSet = CharSet.Ansi)]
А>public static extern string PassAnsiString(string arg);
А>


А какой смысл? В .NET все строки хранятся в unicode, а маршалеру надо передать Ansi строку. Без копирования тут никак не обойтись...
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.