Добавление ресурсов в смешанную библиотеку Visual C ++ / CLI - PullRequest
2 голосов
/ 15 июля 2009

Я пишу смешанную C ++ / CLI DLL с управляемыми и неуправляемыми классами. И то, и другое требует доступа к строковым и другим типам ресурсов, таким как текстуры Direct3D.

Как лучше всего встроить их в DLL? Кажется, есть несколько способов сделать это; .resx (новый стиль, управляемый), .rc (старый стиль), который можно использовать для создания файлов .resources и (необязательно) встроенный в сборку.

В настоящее время я использую файл .rc и :: LoadString (), чтобы получить мои строки. У меня есть управляемая оболочка для этого, чтобы вернуть значения String ^ в управляемый код. И аналогичный метод для возврата WCHAR * в нативный код.

Есть ли лучший способ сделать это? Каковы компромиссы? Я мог бы, например, использовать файл .resx и класс ResourceManager для управляемого кода и файл .rc для нативного, но это означает, что я не могу поделиться ресурсами и т. Д. Есть ли рекомендуемый подход?

Спасибо

Ade

1 Ответ

1 голос
/ 15 июля 2009

Я просто использую .resx, и если есть какие-либо строки, которые нужны нативному коду, я могу использовать для извлечения чего-то из моего файла .resx и преобразования его в строку CSt на следующей строке.

Хотя у вас уже есть обертка для этого, так будет еще проще.

.rc файлы так 1997 человек!

...