Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > .NET и неуправляемый код


Автор: rkv86 31.8.2008, 14:40
Вопрос: можно ли в компоновочный блок .net запихнуть x86 код? Означает ли директива vc++2005 #pragma unmanaged генерацию нативного кода? Если нет, то что подразумевает собой неуправляемый код? Если да, это можно увидеть в ildasm?

Автор: marcusmae 31.8.2008, 22:41
Цитата(rkv86 @  31.8.2008,  14:40 Найти цитируемый пост)
можно ли в компоновочный блок .net запихнуть x86 код?


Можно. Хорошо бы при этом .NET-код строго ориентировать также под х86-платформу во избежание недоразумений...

Цитата(rkv86 @  31.8.2008,  14:40 Найти цитируемый пост)
Означает ли директива vc++2005 #pragma unmanaged генерацию нативного кода?

Вообще говоря, НЕТ. http://www.rsdn.ru/article/dotnet/templates.xml по теме из RSDN.

Цитата(rkv86 @  31.8.2008,  14:40 Найти цитируемый пост)
что подразумевает собой неуправляемый код

Неуправляемым является обычный машинный код, такой, какой бывает без .NET.




Автор: rkv86 1.9.2008, 13:18
Хорошо. Тогда ещё вопрос... Будет ли такой managed/unmanaged блок переносим на системы Mono/Linux при условии использования только стандартных библиотек .NET, без использования библиотек win32 или ком объектов?

Автор: marcusmae 1.9.2008, 14:12
В Mono есть P/Invoke - см. док http://www.mono-project.com/Embedding_Mono. Возможно прямо ответить, что да, переносим, но какой от этого толк? Если Вы хотите это использовать, как аргумент при выборе способа разработки проекта, то прежде лучше на практике повозиться и прикинуть всё, что Вам понадобится сделать для того, чтобы собрать Linux-версию вашего конкретного приложения. То есть реальное оружие - это не ничего не означающая "переносимость", а рабочий прототип smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)