Я только что понял, как это сделать. Есть 2 этапа:
Во-первых, если вы еще не запускаете процесс msbuild, используя пакетный файл, создайте пакетный файл, который вызывает процесс msbuild. Затем добавьте переменную в пакетный файл перед вызовом процесса msbuild. Примерно так:
set ISFULLBUILD=True
msbuild TFSBuild.proj >> BuildOutput.txt
Затем вам нужно изменить событие пост-сборки, чтобы оно что-то делало, только если переменная не установлена или имеет неправильное значение:
IF NOT '%ISFULLBUILD%'=='True' copy /y $(TargetFileName) "..\..\..\..\..\..\Binaries\$(ConfigurationName)\"
В этом случае - TargetFileName (Whwhat.dll) будет скопирован только при сборке из Visual Studio. Но при сборке с использованием нового пакетного файла он НЕ будет выполнять команду после оператора IF.