Visual studio ошибка с кодом 1
Когда функция API подключаемого модуля системы управления версиями возвращает ошибку, ожидается один из следующих кодов ошибок. Все ошибки отрицательны, предупреждения или информационные коды ошибок являются положительными, а успешно — 0.
Код ошибки | Значение | Описание |
---|---|---|
SCC_I_SHARESUBPROJOK | 7 | Подключаемый модуль поддерживает добавление файлов из системы управления версиями в два этапа. Дополнительные сведения см. в разделе скксетоптион. |
SCC_I_FILEDIFFERS | 6 | Локальный файл отличается от файла в базе данных системы управления версиями (например, сккдифф может вернуть это значение). |
SCC_I_RELOADFILE | 5 | Локальный файл был изменен во время операции системы управления версиями; по возможности интегрированная среда разработки должна перезагрузить файл. |
SCC_I_FILENOTAFFECTED | 4 | На этот файл не влияет. |
SCC_I_PROJECTCREATED | 3 | Project был создан во время операции системы управления версиями (например, во время вызова сккопенпрожект , когда SCC_OP_CREATEIFNEW указан флаг). |
SCC_I_OPERATIONCANCELED | 2 | Операция отменена. |
SCC_I_ADV_SUPPORT | 1 | Подключаемый модуль поддерживает дополнительные параметры для указанной команды. Дополнительные сведения см. в разделе SccGetCommandOptions. |
SCC_OK | 0 | Успешно. |
SCC_E_INITIALIZEFAILED | -1 | Ошибка: сбой инициализации. |
SCC_E_UNKNOWNPROJECT | -2 | Ошибка: проект неизвестен. |
SCC_E_COULDNOTCREATEPROJECT | –3 | Ошибка: не удалось создать проект. |
SCC_E_NOTCHECKEDOUT | –4 | Ошибка: файл не извлечен. |
SCC_E_ALREADYCHECKEDOUT | -5 | Ошибка: файл уже извлечен. |
SCC_E_FILEISLOCKED | –6 | Ошибка: файл заблокирован. |
SCC_E_FILEOUTEXCLUSIVE | -7 | Ошибка: файл извлечен в монопольном режиме. |
SCC_E_ACCESSFAILURE | –8 | Возникла проблема при доступе к системе управления версиями, возможно, из-за проблем с сетью или состязаниями. Рекомендуется повторить попытку. |
SCC_E_CHECKINCONFLICT | –9 | Ошибка: при возврате возник конфликт. |
SCC_E_FILEALREADYEXISTS | –10 | Ошибка: файл уже существует. |
SCC_E_FILENOTCONTROLLED | -11 | Ошибка: файл не находится в системе управления версиями. |
SCC_E_FILEISCHECKEDOUT | -12 | Ошибка: файл извлечен. |
SCC_E_NOSPECIFIEDVERSION | -13 | Ошибка: указанная версия отсутствует. |
SCC_E_OPNOTSUPPORTED | -14 | Ошибка: операция не поддерживается. |
SCC_E_NONSPECIFICERROR | – 15 | Неспецифическая ошибка. |
SCC_E_OPNOTPERFORMED | -16 | Ошибка. операция не была выполнена. |
SCC_E_TYPENOTSUPPORTED | -17 | Ошибка: тип файла, например binary, не поддерживается системой управления исходным кодом. |
SCC_E_VERIFYMERGE | –18 | Файл был успешно объединен, но не проверен, так как он ожидает проверки пользователя. |
SCC_E_FIXMERGE | -19 | Файл был автоматически объединен, но не был возвращен из-за конфликта слияния, который необходимо разрешить вручную. |
SCC_E_SHELLFAILURE | –20 | Ошибка из-за сбоя оболочки. |
SCC_E_INVALIDUSER | -21 | Ошибка: недопустимый пользователь. |
SCC_E_PROJECTALREADYOPEN | -22 | Ошибка: проект уже открыт. |
SCC_E_PROJSYNTAXERR | -23 | синтаксическая ошибка Project. |
SCC_E_INVALIDFILEPATH | – 24 | Ошибка: недопустимый путь к файлу. |
SCC_E_PROJNOTOPEN | -25 | Ошибка: проект не открыт. |
SCC_E_NOTAUTHORIZED | – 26 | Ошибка: пользователь не имеет права на выполнение этой операции. |
SCC_E_FILESYNTAXERR | -27 | Синтаксическая ошибка в файле. |
SCC_E_FILENOTEXIST | -28 | Ошибка, локальный файл не существует. |
SCC_E_CONNECTIONFAILURE | -29 | Ошибка. произошла ошибка подключения. |
SCC_E_UNKNOWNERROR | –30 | Неизвестная ошибка. |
SCC_E_BACKGROUNDGETINPROGRESS | -31 | Фоновая операция получения сейчас выполняется. |
Предоставлены макросы для быстрой проверки
Remarks
Все функции API подключаемого модуля системы управления версиями (за исключением сккадд, сккчеккини сккдифф) должны выполняться успешно, если локальные файлы, передаваемые в качестве аргументов, не существуют в рабочей папке. Например, интегрированная среда разработки может выдать вызов сккчеккаут или сккунчеккаут для файла, который не существует в рабочей папке, но существует в системе управления версиями. Этот вызов будет выполнен. Если в рабочей папке нет файла или в системе управления версиями, то ожидается сбой функции.
Некоторые функции, такие как SccAdd и SccCheckin , должны возвращать, SCC_E_FILENOTEXIST Если файл в рабочей папке не существует. Другие функции должны выполняться, если рабочий файл не существует, если функции работают с допустимым именем файла в системе управления версиями.
Подключаемый модуль системы управления версиями не должен делать никаких предположений о правах доступа к файлу в рабочей папке, даже если во время некоторой операции подключаемый модуль пометил файл как доступный только для чтения. Файл в рабочей папке можно перемещать, удалять и изменять вне управления подключаемым модулем.
It works fine every time on my machine. I have a new developer who always gets the "exited with code 1" error. I had her run the same command in a DOS prompt, and it worked fine. What could be causing this? Is there any way to get to the real error?
We are both using Visual Studio 2008.
in my case, the answer Tim Scott provide near the end of this page (so I overlook in the beginning) solve my problem.
19 Answers 19
She had a space in one of the folder names in her path, and no quotes around it.
putting quotes on path names is a good practice. not working in paths that contains space is event better :-)
copy /y "$(TargetDir)Dotfuscated\" "$(TargetDir)" this command notworking for me and if i am write exit 0 at end then work fine. can u tell me why?
The one with the "Pings" helped me. but may be explained a little better.
For me the solution was to change:
Hope it works for you. :-)
I have added this for future visitors since this is quite an active question.
This means that:
So i solved this easily by adding this to the bottom of the batch file
Suggest that handle ROBOCOPY errors in this fashion
Confusion will set in when no files are copied = no error in VS. Then when there are changes, files do get copied, VS errors but everything the developer wanted was done.
Additional Tip: Do not use a pause in the script as this would become an indefinite pause in the VS build. while developing the script, use something like timeout 10 . You will notice this and comment it out rather than have a hanging build.
Adding "exit 0" at the bottom, worked fine. And IMHO this seems to be a fine solution since we can see the log for actual issue if anything actually occurs.
Using the Copy msbuild task in the project too is an option. Only problem is we will have to edit the project file manually and project designer does not support adding/editing this.
My reason for the Code 1 was that the target folder was read only. Hope this helps someone! I had a post build event to do a copy from one directory to another and the destination was read only. So I just went and unchecked the read-only attribute on the directory and all its subdirectories! Just make sure that its a directory that's safe to do so!
Saved me an hour, thanks! Downloaded some code from internet and Windows 7 sets the folder to read-only automatically.
Get process monitor from SysInternals set it up to watch for the Lunaverse.DbVerse (on the Path field) look at the operation result. It should be obvious from there what went wrong
I had to run VS as Administrator to get my post-build copy to an OS protected "..\Common7\IDE\PrivateAssemblies" to work
I had a similar issue but specifically in a Jenkins build environment. To fix the issue, I switched from using a copy command in the post build event to using a copy target.
and it works fine now.
The specific error I was getting was:
How did you make that change? Did you manually edit that? How do you execute the target? That looks like something you'd have to specify in the msbuild command line. I have the exact same issue in my jenkins environment which is weird because all of the msbuild created folders are always read-only. Why it copies fine on my machine but not in the server is beyond me.
I just used Notepad++ to edit the csproj file. The "AfterBuild" hook is a standard hook, so if it exists, it is called automatically after the build process.
Thanks. I wasn't sure if you had a custom msbuild file with a target or if it was just the visual studio created file. FYI: In my case I figured out that the problem had to do with build order. I forgot to set the build dependencies in the release, solution configuration so the projects were building on the server in a different order such that the input file was not yet available when the copy was executed. Making sure that the .dll was produced before the other project that needed it fixed it for me. That was a very subtle issue with the solution configuration that caused it.
It wasn't obvious to be at first that build order is for each configuration. I thought that was more of a solution setting but evidently you have to update the build order in ALL configurations.
I was able to fix my Code 1 by running Visual Studio as Admin. Apparently it didn't have access to execute the shell commands without Admin.
Ok, this is a problem with many solutions, so I just post mine to give people more hints. My situation is to double check the folders in your path and make sure all of them exist in your machine. For example: "$(SolutionDir)\partBin\Bin\$(ProjectName).pdb", but "Bin" is not in partBin folder.
As a matter of good practice I suggest you replace the post build event with a MS Build File Copy task.
For me I had to make sure the the program I was coping file to was not running at the time. There weren't any errors in the syntax. Hope this helps someone.
I just received the same error. I had a % in the destination path that needed to be escaped
For those, who use 'copy' command in Build Events (Pre-build event command line or/and Post-build event command line) from Project -> Properties: target folder should exist
So many solutions.
In my case, I had to save the bat file with non-unicode (Western, Windows) encoding. By default when I added the file to visual studio (and probably I should have done it outside of the VS), it added with UTF-8 encoding.
I had this same issue and it turned out that it was because I had renamed the project. I went into the project properties and changed the Assembly Name and Root Namespace to the project name and it worked great after that!
Yet another answer .
I also had a post-build event command line like this:
This was failing with this error when I did a Rebuild:
This now works, with the minor glitch that the post-build event command line is being run twice, so the file is copied twice.
он отлично работает каждый раз на моей машине. У меня есть новый разработчик, который всегда получает ошибку "выход с кодом 1". Я ей выполнить ту же команду в командной строке DOS, и все работало нормально. Что может быть причиной этого? Есть ли способ добраться до реальной ошибки?
мы оба используем Visual Studio 2008.
у нее было место в одном из имен папок на ее пути, и никаких кавычек вокруг него.
тот, с "пингами", помог мне. но может быть объяснено немного лучше.
для меня решение было изменить:
для этого:
надеюсь, что это работает для вас. : -)
моя причина для кода 1 заключалась в том, что целевая папка была только для чтения. Надеюсь, это кому-то поможет! У меня было событие post build, чтобы сделать копию из одного каталога в другой, и назначение было только для чтения. Поэтому я просто пошел и снял флажок с атрибута только для чтения в каталоге и всех его подкаталогах! Просто убедитесь, что это каталог, который безопасен для этого!
Get монитор процессов от SysInternals установите его, чтобы наблюдать за Луной.DbVerse (в поле путь) посмотрите на результат операции. Оттуда должно быть очевидно, что пошло не так
Я должен был запустить VS как администратор, чтобы получить мою копию после сборки в защищенную ОС "..\Common7\IDE\PrivateAssemblies " to work
для тех, кто пользуется 'скопировать на События Построения (Командная строка события предварительной сборки и командная строка события после сборки) от -2 - > Свойства выскопировать ' параметры команды должны выглядеть так: copy "source of files" "destination for files" . Не забывайте использовать кавычки (чтобы избежать проблем с пробелами в строке адреса).
у меня была аналогичная проблема, но конкретно в среде сборки Дженкинса. Чтобы устранить эту проблему, я переключился с использования команды копирования в событии post build на использование цели копирования.
Я изменил это:
для этого:
и теперь он отлично работает.
конкретная ошибка, которую я получал, была:
в качестве хорошей практики я предлагаю вам заменить событие post build на MS Build File Copy task.
для меня я должен был убедиться, что программа, с которой я справлялся, не была запущена в то время. В синтаксисе не было никаких ошибок. Надеюсь, это кому-то поможет.
Я только что получил ту же ошибку. У меня был % в пути назначения, который нужно было бежать
должно быть
хорошо, это проблема со многими решениями, поэтому я просто публикую свои, чтобы дать людям больше подсказок. Моя ситуация заключается в том, чтобы дважды проверить папки на вашем пути и убедиться, что все они существуют на вашем компьютере. Например: "$(имя_проекта)\partBin\Bin\$(имя_проекта).pdb", но" Bin " не находится в папке partBin.
для тех, кто использует команду "копировать" в событиях сборки (Командная строка события перед сборкой или / и Командная строка события после сборки) из проекта - > свойства: целевая папка должна существовать
Так много решений.
в моем случае мне пришлось сохранить файл bat с кодировкой, отличной от unicode (Western, Windows). По умолчанию, когда я добавил файл в visual studio (и, вероятно, я должен был сделать это за пределами VS), он был добавлен с кодировкой UTF-8.
У меня была такая же проблема, и оказалось, что это потому, что я переименовал проект. Я вошел в свойства проекта и изменил имя сборки и корневое пространство имен на имя проекта, и после этого он отлично работал!
Если вы столкнулись с проблемой и хотите поделиться своим опытом, знаниями или у вас есть интересная статья с иностранного сайта, предложение новой темы, статью которую Вы хотите видеть в ближайшем будущем, расскажите нам об этом и мы обязательно поделимся этими знаниями со всеми. Возможно, для других ваши знания, опыт и советы окажутся очень ценными и помогут вовремя найти правильный выход или не совершить ошибок.
Так же если у вас есть предложение о сотрудничестве, пожелания, указать на нарушения сайта или просто сказать слова благодарности, все это вы можете сделать через форму обратной связи. Читать дальше
”Lc.exe” завершилась с кодом -1
Для устранения данной ошибки, перейдите в обозреватель решений и найдите в группе «Properties», файл licenses.licx.
Сделайте клик правой клавишей мыши по данному файлу и выберете из появившегося контекстного меню, пункт «Удалить».
Нажмите на клавиатуре клавишу «F5», компилятор лицензий автоматически создаст новый файл «licenses.licx» и запустит ваш проект.
Приносим извинения. Запрошенное содержимое было удалено. Вы будете автоматически перенаправлены через 1 секунду.
Лучший отвечающий
Вопрос
Прошу помочь с данной бедой :(
Ошибка 1 выход из команды "copy “F:\Work\Direct3D-Rendering-Cookbook-master\\External\Bin\Redist\D3D\x86\D3DCompile*.DLL” “F:\Work\Direct3D-Rendering-Cookbook-master\Ch02_01RenderingPrimitives\bin\Debug\”" с кодом 1. Ch02_01RenderingPrimitives
Ответы
Эта команда призвана скопировать нужные для исполнения программы файлы. Она по каким то причинам не срабатывает.
Вам нужно выяснить почему и устранить проблему. Например может быть действительно надо отредактировать пути в команде. А может быть надо установить что то что создаст каталог с файлами.
У вас есть полная команда:
copy “F:\Work\Direct3D-Rendering-Cookbook-master\\External\Bin\Redist\D3D\x86\D3DCompile*.DLL” “F:\Work\Direct3D-Rendering-Cookbook-master\Ch02_01RenderingPrimitives\bin\Debug\”
Запустите командный процессор (CMD) и выполните ее. Будет написано почему она не сработала. Например нет каталога F:\Work\. Или там нет файлов. Или нет выходного каталога.
Если вы не владейте командной строкой то проверьте наличие указанных каталогов и файлов из эксплорера.
Когда выясните причину то можно будет решать как устранить проблему.
This posting is provided "AS IS" with no warranties, and confers no rights.
Все ответы
Проверьте имеются ли файлы подлежащие копированию, существует ли каталог назначения.
Так же запустите команду в ручную, изучите вывод.
This posting is provided "AS IS" with no warranties, and confers no rights.
Вот что в выводе написано:
1>------ Сборка начата: проект: Ch02_01RenderingPrimitives, Конфигурация: Debug Any CPU ------
1> Ch02_01RenderingPrimitives -> F:\Work\Direct3D-Rendering-Cookbook-master\Ch02_01RenderingPrimitives\bin\Debug\Ch02_01RenderingPrimitives.exe
1> Системе не удается найти указанный путь.
1>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(4548,5): error MSB3073: выход из команды "copy “F:\Work\Direct3D-Rendering-Cookbook-master\\External\Bin\Redist\D3D\x86\D3DCompile*.DLL” “F:\Work\Direct3D-Rendering-Cookbook-master\Ch02_01RenderingPrimitives\bin\Debug\”" с кодом 1.
========== Сборка: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
В References для каждого файла стоит копировать локально - true
Диалог назначения не совсем понимаю как посмотреть, подскажите пожалуйста где это можно увидеть.
В свойства проекта->события сборки->командная строка события после сборки есть вот такая строка: copy “$(SolutionDir)\External\Bin\Redist\D3D\x86\D3DCompile*.DLL” “$(TargetDir)”
Читайте также: