Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 | 3 |

 

  Вопрос: Неужели вообще никак? Добавлено: 01.08.05 16:08  

Автор вопроса:  K&M

Ответить

  Ответы Всего ответов: 37  

Номер ответа: 31
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #31 Добавлено: 03.08.05 15:05
Вообще-то этот пример был придуман до того, как я запостил, на случай, если ты вдруг не поймешь, почему "нельзя". В качестве подобных примеров из области ПО приведу "нельзя использовать 2 антивируса вместе", "нельзя не патчить систему в сети", "нельзя на фишинговых сайтах писать свои данные", "нельзя сообщать админу свой пароль" не в смысле невозможности этого действия, а в смысле крайней его нежелательности. Хоть теперь-то понятно?

Я же и говорю - "я понимаю, что очень сложно осознавать свои ошибки".

Ответить

Номер ответа: 32
Автор ответа:
 ⊗WaX⊗



Вопросов: 26
Ответов: 325
 Web-сайт: sapfir.cift.ru
 Профиль | | #32
Добавлено: 03.08.05 15:18
Оффтоп :) Вопрос был про ассемблерные вставки.


Продолжение оффтопа :)

Человек который задает в форуме .NET вопрос про ассемблерные вставки не ради простого интереса а с целю их использования мягко говоря большой оригинал.
ИМХО.

Грамотнее было бы спросить а как написать dllку на C++ c ассемблерными вставками чтобы ее можно было использовать в .NET
:)))))

Ответить

Номер ответа: 33
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #33
Добавлено: 03.08.05 15:46
С C# имею малый опыт работы, unsafe использовал лишь однажды, и-то из любопытсова :) Так что тебе тут больше MSDN помощник.

Ответить

Номер ответа: 34
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #34
Добавлено: 04.08.05 05:38
Я же и говорю - "я понимаю, что очень сложно осознавать свои ошибки"
Он и опять ничего не понял :) Будем тренировать терпение.
В фразе "Нельзя переходить улицу на красный свет" слово "нельзя" обозначает "крайне нежелательно, может привести к очень плохим последствиям", не отрицая, тем не менее, возможность этого. К каким последствиям может привести использование вставок машинного кода в дотнет-текст?
1) Нечитаемость. Нарушение структурной целостности программы: по внешнему виду машинного кода, даже с обильными комментариями, сложно понять его структуру (циклы, условия) и ее место в структуре модуля, в который произведена вставка, что может привести:
а) к повторному написанию кода
б) к пропуску кода
в) к неправильному использованию результатов выполнения этого кода
2) Нестабильность. Непредусмотренность средств исполнения машинного кода разработчиками, программа будет весьма опасна в использовании, поскольку машинному коду никто не объяснял, что программа managed и контроль памяти автоматический. GC подкидывает сюрпризы и простому коду, а уж в случае с машинным кодом, даже при грамотном его написании, возможны любые неприятности, начиная с простого memory leak до удаленного исполнения произвольного кода, причем как в стеке, где DEP еще может помочь, так и в куче, где что-то рабочее придумать тяжело.
3) Некроссплатформенность. Дотнет не имеет механизмов для доступа машинного кода к вызываемым функциям среды, следовательно, для хоть какой-то функциональности придется прибегнуть к "грязным хакам", которые могут не работать не только на разных версиях винды, но и даже на разных версиях фрамеворка, либо работать нестабильно, причем поручиться за отсутствие критических сбоев (или, более того, возможности направленных атак) невозможно ("нельзя" в смысле невозможности какого-либо действия, чуешь тайд, чуешь?)
4. Финансовая невыгодность. Для того, чтобы использовать вставки машинного кода в дотнет-приложения, требуется иметь в штате сотрудников высококвалифицированных сотрудников, способных далеко не только тыкать мышкой по кнопочкам, и предоставить им значительное время для работы, поскольку трудоемкость совмещения дотнета с машинным кодом и последующего тестирования значительно превосходит почти любую возможную задачу, которую можно с его помощью решить в дотнет-приложении. А платить таким специалистам придется значительно больше, а продукт выйдет значительно позже, что выльется в банкротство проекта. Возможным является вариант с unmanaged DLL, но предпочтительным - написание проекта на языке программирования, поддерживающем ассемблерные вставки.

Суммируя все вышесказанное, повторю: "Вставки машинного кода в дотнете использовать НЕЛЬЗЯ!"

Ответить

Номер ответа: 35
Автор ответа:
 ⊗WaX⊗



Вопросов: 26
Ответов: 325
 Web-сайт: sapfir.cift.ru
 Профиль | | #35
Добавлено: 04.08.05 17:24
2 SHARP
http://gorodok.ru/cgi-bin/cal.cgi?m=03&d=17

Когда то об этом уже говорили :)

Рекомендую перед каждым категорическим высказыванием писать ИМХО.

Да кстати мой любимый словарик Babylon преводит
sharp [ʃɑrp /ʃɑːp]
с. жулик, мошенник

Ответить

Номер ответа: 36
Автор ответа:
 ⊗WaX⊗



Вопросов: 26
Ответов: 325
 Web-сайт: sapfir.cift.ru
 Профиль | | #36
Добавлено: 04.08.05 17:27
:)))

Ответить

Номер ответа: 37
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #37
Добавлено: 05.08.05 02:09
Выкинь его в мусорку, мой говорит "специалист, эксперт" :)

Ответить

Страница: 1 | 2 | 3 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам