Почему vbc искажает командную строку?

Следуя этой методике, я получил командную строку vbc, использованную для компиляции моего проекта. Я использовал это для компиляции проекта из командной строки, и он работал нормально несколько раз, когда я пытался это сделать. Длина командной строки составляет около 25 000 символов, если это что-то значит.

Но сегодня, когда я запустил команду, я получил кучу ошибок, которые выглядят так:

vbc : Command line error BC2001 : file 'admin\TestShare.aspxvb' could not be found

Тем не менее, когда я смотрю на фактическую командную строку для ссылки на этот файл, это правильно:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Vbc.exe ... admin\TestShare.aspx.vb ...

Все остальные ошибки "файл не найден" похожи: он удаляет символы из имени файла (не только точки, но и текстовые символы), а затем говорит, что не может найти этот файл.

Что тут происходит?

Обновление: первый плохой файл находится рядом с символом 8192 в командной строке, что говорит о том, что проблема связана с слишком длинным путем для Windows. Но если это проблема, как я могу собрать свое приложение из командной строки?

1 ответ

Решение

Если вам просто нужно собрать из командной строки, почему бы не использовать вместо этого msbuild? Все, что нужно, это msbuild YourProject.proj чтобы все пошло как по маслу, и намного короче, чем многословный;-) Запустите из командной строки VS.

Другие вопросы по тегам