Вставлять содержимое из внешнего файла при компиляции

StackOverflow https://stackoverflow.com/questions/1204194

  •  05-07-2019
  •  | 
  •  

Вопрос

Есть ли способ в Visual Studio (любой версии) встроить содержимое файла в другой файл при компиляции?Например, если кто-то хочет встроить xml-файл в файл кода vb, как это лучше всего сделать?

Это было полезно?

Решение

Добавьте файл в свой проект, щелкните правой кнопкой мыши файл и выберите его свойства. В разделе «Построить действие» измените его на «Встроенный ресурс». Теперь при компиляции файл автоматически внедряется как ресурс.

Вот пример, показывающий, как получить доступ к встроенному растровому ресурсу .

Другие советы

Посмотрите ресурсы , Вы можете создать строковый ресурс с вашим xml. Затем он компилируется в образ вашего приложения.

Брайан опередил меня по поводу встроенного ресурса, когда я искал URL ресурса:)

Если вы не возражаете против того, чтобы это было в вашем коде, вы можете использовать XML Literal .

Я как раз собирался упомянуть об использовании #include директива препроцессора (для C и C ++), но затем вы упомянули VB.Я не думаю, что VB поддерживает такую вещь.

Я понятия не имею, как это сделать. Но первая мысль, которая пришла мне в голову, была о провайдерах сборки (которые генерируют классы из файла XML в случае ORM).

Я искал & amp; нашел еще одну вещь, называемую Custom Tools, которая может работать с файлом, существующим в вашем решении, и может использоваться для создания файла кода.

Посмотрите, поможет ли эта ссылка вообще - http://www.drewnoakes.com/snippets/ WritingACustomCodeGeneratorToolForVisualStudio /

Что я делал в прошлом, так это писал простой файл .bat, который объединяет 3 разных источника в конечный исходный файл, который фактически компилируется.Файл .bat запускается как часть события предварительной сборки.

Проект

  • Исходный код top.vb
  • Source.xml
  • Исходный текст.vb

Все эти файлы имеют действие сборки "Нет".

  • Объединенный.vb

merge.bat

введите SourceTop.vb > Объединенный.vb введите Source.xml >> Объединенный.vb введите SourceBottom.vb >> Объединенный.vb

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top