Pull to refresh

Comments 4

Для успешного подключения библиотеки, собранной в режиме Debug, нужно добавить файлы msvcp110d.dll и msvcr110d.dll в System32 или в SysWOW64 для 32-битной и 64-битной ОС соответственно.
Оо. Это ж жесть какая… vcredist нужной версии ставить запрещают чтоли?)

И вообще ИМХО лучше писать на чистом .net-языке, делать inproc-COM компонент из сборки и в чистом старом microsoft c++ использовать #import, чем городить c++ CLR длл-ку (mixed mode). Для того чтобы не регистрировать COM в системе, можно использовать registration-free com activation фичу в manifest приложения...
vcredist нужной версии ставить запрещают чтоли?)

Бывает! Нагрузочные станции обычно под контролем заказчика, и однажды админ организации сказал, что ничего лишнего на них ставить не даст. Велел перечислить поимённо все файлы, которые потребуется добавить. Тогда я, не особо разбираясь, установил, что не хватает этих двух DLL. Позже уже понял, что и от них можно избавиться.

ИМХО лучше писать на чистом .net-языке, делать inproc-COM компонент из сборки и в чистом старом microsoft c++ использовать #import

Так сложилось, что мне был знаком мой способ, поэтому так и сделал. Если чуть подробнее напишите, как реализовать ваш способ, буду признателен. Кстати, а чем по-вашему это лучше?
Позже уже понял, что и от них можно избавиться.

ну раз так, тогда вам надо всего лишь не линковать манифест в длл-ку, убрать из манифеста который появится publicKeyToken-ы CRT-шных либ (и если надо OpenMP), скопировать dll-ки CRT-шные рядом с вашей… ибо нефиг засирать систему конкретной версии длл-ок, т.к. это привести может к очень печальным последствиям. А «избавляться» от них не стоит, т.к. наличие двух CRT Runtime в одном процессе также может привести к очень странному поведению…

Если чуть подробнее напишите, как реализовать ваш способ, буду признателен. Кстати, а чем по-вашему это лучше?

Таки почитайте любую книжку по .net в части глав «работа с унаследованным кодом». Он лучше тем, что не надо изучать новый язык (C++\CLI).
Sign up to leave a comment.

Articles