Ну, в этом примере есть две части того, что вы делаете здесь.
Первая - это $(MacroVariable)
переменные, которые использует Visual Studio. Все, что он делает с ними, это подставляет соответствующие значения из своих собственных настроек и из настроек проекта. Лучший способ использовать эти IMO - войти в что-то вроде редактора событий после сборки в диалоге настроек проекта и развернуть список макросов - это показывает, что они для этого проекта. Это все, что вы действительно делаете с ними.
Вторая часть заключается в том, что после того, как Visual Studio выполнит свои замены, у вас останется стандартный пакетный скрипт, который затем будет выполнен. Синтаксис пакетного сценария DOS можно найти в любой форме, и вы можете разработать и протестировать его, используя cmd.exe и редактор. Прежде чем запускать пакетный скрипт, выясните, какие переменные Visual Studio вам нужны, и задайте их как переменные среды в cmd.
Наконец, настоящий макрос Visual Studio - это подпрограмма VB.NET, которая использует API VIsual Studio для выполнения задач в среде. Вы можете получить доступ к этому из Инструменты -> Макросы -> MacrosIDE в Visual Studio.