Re: JNI DLL и MSVCR
От: flаt  
Дата: 13.03.20 09:55
Оценка: 12 (1)
1. Вариант жизнеспособный, но без гарантий. Размер увеличится не сильно, учитывая, что это будет "Си с классами" (линкер выкинет лишнее). Но может сломаться, потому что в CRT есть глобальные переменные, хранящиеся в TLS (per-thread data). И из-за разных версий CRT это может привести к проблемам (плюс, /MT /MD сборки отличаются). В общем, только пробовать и смотреть.

4. Если не пугает жизнь без CRT (или подключение самописной, коих немало), то вполне рабочий вариант. Я бы не назвал это хаком или костылём, для подобной задачи вполне подходят такие методы.

5, который "идеальный вариант":

> Но, как я понял, такого варианта Visual Studio не предоставляет и гарантий совместимости не даёт.


Не предоставляет — придётся цепляться к CRT в рантайме самому (через GetModuleHandle/GetProcAddress для нужных функций либо через delayed import плюс ручной выбор имени нужной DLL). Совместимость остаётся — malloc в 6й студии и в 2019 всё тот же.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.