Я играю с некоторыми изменениями в Roslyn, но, к сожалению, даже немодифицированное решение сработает, когда я запустил VisualStudioSetup.Next
с ошибкой, пытающейся загрузить сборку MS. Таким образом, я сделал несколько простых изменений и заменил мою машину существующими двоичными файлами и конфигурационными файлами новой сборкой. Изменения были сделаны в C:/Program Files (x86)/MSBuild/bin and Windows/Microsoft.NET/Framework64
.
Замена CSC, VBCSCompiler, DLL и файлов конфигурации заставляет csc.exe
выдавать ошибку при любой сборке. Он жалуется, что манифест указывает другую версию DLL CodeAnalysis.CSharp
. Это не дает путь для файла или даже имени. Я заменил обе конфигурации и библиотеки DLL, которые находятся в вышеупомянутых папках с новыми сборками. Какие файлы мне нужно для фактической замены для правильной работы?
Я выполнил поиск всего диска для всех экземпляров CSC и убедился, что все конфиги указывают новую версию DLL, поэтому я не уверен, где искать сейчас.
Я знаю, что можно передать параметр в MSBuild или добавить раздел в файл csproj, чтобы указать каталог для двоичных файлов компилятора, но я хотел бы получить победу над этой штукой.
EDIT:. Поэтому я решил просто изменить номер версии для своих сборников. Выполнение его с помощью свойств сборки в VS приводит к сбою сборки. Я попытался использовать MSBuild, но в каждом проекте с этой ошибкой не получается:
"F:\Git\Repos\roslyn\src\Compilers\CSharp\csc\csc.csproj" (default target) (1) ->
F:\Git\Repos\roslyn\build\Targets\Versions.props(42,5):
error MSB4184: The expression ""1".Substring(3)" cannot be evaluated.
startIndex cannot be larger than length of string.
Parameter name: startIndex F:\Git\Repos\roslyn\src\Compilers\CSharp\csc\csc.csproj]
Он строит отлично от VS.
Параметры MSBuild: /p:OfficialBuild=true /p:BuildNumber=1.3.1.60616 /p:Configuration=Release