Ханс Пассант почти все правильно понял. К сожалению, $ (InputPath) и $ (InputName) не определены в VS 2010. Вместо этого создайте файл сообщения:
- Щелкните правой кнопкой мыши свой проект-> Добавить-> Новый элемент
- Выберите «Текстовый файл (.txt), но назовите его как« .mc »файл (например,« messages.mc »)
- Создать файл ресурсов (скажем, "resources.rc")
- Отредактируйте файл ресурсов так, чтобы он содержал только одну строку:
# include "messages.rc"
Этот файл будет сгенерирован компилятором сообщений. Теперь добавьте пользовательский шаг сборки для запуска компилятора сообщений:
Файл MSG00409.bin имеет следующую строку в messages.mc:
.
LanguageNames = (английский = 0x409: MSG00409)
Для каждого языка, добавляемого в messages.mc, может быть файл bin. Приятной частью перечисления их в выводе является то, что он будет удален при очистке проекта.
Единственное, в чем я не уверен, так это в установке свойства «Execute Before», чтобы гарантировать, что messages.rc генерируется до того, как resource.rc скомпилирован. Мне не нужно было его устанавливать, но если вы обнаружите, что компилятор ресурсов пытается выполнить его до компилятора сообщений, вам придется установить это свойство. Он отключен для файла messages.mc, но его можно установить в свойстве проекта «Custom Build Step».