Информация об изменениях

Сообщение Re[5]: JIT compile от 29.11.2016 11:42

Изменено 29.11.2016 11:48 Sinix

Здравствуйте, SanyaVB, Вы писали:

S>>Решения есть, но они все не универсальные. Нужно знать точную задачу, чтоб подсказать точнее.

SVB>Защита ПО. Идея состоит в том чтобы определенные методы находились в бесполезном виде...

В натив проще вытащить. Все остальные способы или обходятся через стандартные API, или портят приложение разнообразным и непредсказуемым способом. Самое эпичное из того что попадалось — приложение-суицидник: через какое-то время после установки отрабатывал Auto NGen Maintenance Task ииии упс Ключевые слова для поиска: NGen indirections + NGen fix-up tables.

Если коротко, то чтобы хоть примерно разобраться с тем, как заставить это дело работать, придётся перелопатить гору матчасти. И 99.9 за то, что итоговым решением будет "любой другой способ кроме заигрываний с JIT".
Re[5]: JIT compile
Здравствуйте, SanyaVB, Вы писали:

S>>Решения есть, но они все не универсальные. Нужно знать точную задачу, чтоб подсказать точнее.

SVB>Защита ПО. Идея состоит в том чтобы определенные методы находились в бесполезном виде...

В натив проще вытащить. Все остальные способы или обходятся через стандартные API, или портят приложение разнообразным и непредсказуемым способом. Самое эпичное из того что попадалось — приложение-суицидник: через какое-то время после установки отрабатывал Auto NGen Maintenance Task ииии упс Ключевые слова для поиска: NGen indirections + NGen fix-up tables.

Если коротко, то чтобы хоть примерно разобраться с тем, как заставить это дело работать, придётся перелопатить гору матчасти. И 99.9 за то, что итоговым решением будет "любой другой способ кроме заигрываний с JIT".

UPD: А, ну или замените прямые вызовы на вызовы делегатов (главное, не хранить делегат в static readonly-поле), тело делегата заполняйте динамически. По производительности ппц будет, да и приключений нахватаетесь, но оно хоть работать будет. В основном.