Visual studio ошибка при попытке запуска проекта
Здравствуйте. Создал новый проект WPF в Студии, покидал нужных виджетов, пытаюсь запустить, получаю ошибку:
Запускаю установщик, выбираю VS17 -> изменить. В сводке указанно (если это важно):
Не могли бы вы подсказать, в чем может быть дело?
Попытка переустановить студию приводит к сбою установки со следующей ошибкой (из журнала)
По совету @Eikhner обновил windows, установил проблемный пакет руками, перезагрузился; никакого эффекта. Попробовал восстановить студию, получаю сбой. Единственная ошибка, которую пока удалось вынуть из журнала:
@PashaPash, файл, о котором вы говорите, отсутствует, но есть с таким же именем и расширением .log.html
Система почему-то определилась как виста. Что бы это могло означать?
попробуите проверить обновления , которые есть в вашей системе . Сначала -KB2919442, потом KB2919355 , так как второе не ставится без первого, а нет фраимворк 4.6 не ставится без KB2919355. Возможно поможет
@Eikhner, Попробовал обновить винду (последний раз делал это почти год назад, наверное, не лучшая идея), не помогло. Хотя в "журнале обновлений" нет ни KB2919442, ни KB2919355, есть только KB2999226.
1 ответ 1
Для того, чтобы создать новый проект WPF в Visual Studio 2017, понадобится компонент:
Данный компонент содержит в себе все необходимое, конечно, можно поставить дополнительные отдельные компоненты, такие как:
Хотя, все что нужно выбирается автоматически и можно вручную выбрать то, чего не хватает:
Если после обновления операционной системы Windows теперь не удается восстановить среду разработки Visual Studio 2017, то тут можно пойти двумя путями. Пробовать нужно сначала с менее затратного:
Сначала показалось, что этот метод менее затратный, но по сути он более затратный, чем следующий, который будет предложен. Итак, быстрый и затратный способ сделать так, чтобы заработало:
- Перенести нужные файлы на диск, хранящиеся на диске с системой. Переустановить систему и накатить среду разработки Visual Studio 2017 с нуля.
Да, я предлагаю такой ответ. Увы, если в среде разработки что-то сыпется, после чего она перестает исправно работать - это приводит к большим проблемам. Решать эти проблемы приходится долго и нудно. Устанавливать пакеты, докачивать компоненты, копировать файлы с рабочего компа на свой, выяснять, почему файлы приложения удалены или почему вдруг антивирус что-то заблокировал и удалил. На все это тратится слишком много времени. Если вам не удалось решить этот вопрос за несколько дней, то решение лежит на поверхности, займет всего пару часов.
Сам недавно столкнулся с проблемой в Visual Studio, обновил - она стала глючить, затем перестал запускаться тестовый клиент WCF, затем стала сама перезагружаться. Переустановил среду разработки и все заработало. Как-то ранее при возникновении больших проблем пытался выяснить в чем проблема в среде разработки, но это отнимает слишком много времени.
Значит нужно установить правильно, а для этого, как минимум, нужно его удалить. А удаляется он лучше всего вместе со всей средой разработки Visual Studio. Как-то так.
Во время разработки решений Office в Visual Studio могут возникнуть проблемы при выполнении следующих задач:
Создание, обновление и открытие проектов
При создании или открытии проектов Office могут возникнуть следующие ошибки.
Не удается создать проект
Произошла ошибка при попытке создать или открыть проект Office, но Visual Studio не имеет достаточно сведений, чтобы определить причину. Попробуйте закрыть проект, завершить работу и снова запустить Visual Studio.
Если вы пытаетесь создать проект уровня документа, возможно, что другой документ с тем же именем, что и документ в новом проекте, уже открыт в Excel или Word. Убедитесь, что все остальные экземпляры Excel или Word закрыты.
Свойства элемента управления теряются при создании нового проекта на основе документа из существующего проекта
При создании нового проекта Office, основанного на документе из существующего проекта, свойства элементов управления в документе не копируются в новый проект. Вам необходимо вручную сбросить свойства существующих элементов управления. Кроме того, можно сохранить свойства элементов управления, создав копию существующего проекта, а не создавая новый проект, или загрузив существующий проект в новое решение (в режиме конструктора) и скопировав и вставив элементы управления из существующего документа в новый документ.
ошибки при создании Excel проекта книги на основе существующей книги
при создании нового Excel проекта книги на основе существующей книги может появиться сочетание следующих ошибок.
В Excel: "Предупреждение о конфиденциальной информации: документ содержит макросы, элементы управления ActiveX, данные пакета расширения XML или веб-компоненты. Они могут включать личные сведения, которые нельзя удалить с помощью инспектора документов".
В Visual Studio: "Не удалось правильно загрузить конструктор".
Эти ошибки могут возникать при попытке создать проект, основанный на книге, из которой персональные данные были удалены с помощью инспектора документов. Чтобы избежать этой ошибки, выполните следующие действия перед созданием проекта.
Откройте книгу в Excel.
Откройте центр управления безопасностью в Excel.
На вкладке Параметры конфиденциальности снимите флажок Удалить персональные данные из свойств файла при сохранении .
Сохраните книгу и закройте Excel.
Не удается открыть проект после миграции
После переноса решения Office в Microsoft Office 2010 не удается открыть проект на компьютере разработки, где установлен только Microsoft Office 2007. Могут возникнуть следующие ошибки.
"Один или несколько проектов в решении были загружены неправильно. Дополнительную информацию см. в окне вывода."
"Не удается создать проект, поскольку приложение, связанное с этим типом проектов, не установлено на данном компьютере. Необходимо установить приложение Microsoft Office, связанное с этим типом проектов".
Или же убедитесь, что перенесенные проекты открываются только на компьютерах разработки с установленным Microsoft Office 2010.
ошибки в обновленных Office 2003 проектах уровня документа, содержащих элементы управления Windows Forms
если обновить проект уровня документа Microsoft Office 2003, а документ содержит элементы управления Windows Forms, то в обновленном проекте могут возникнуть ошибки компиляции или времени выполнения. Чтобы избежать этой проблемы, перед обновлением проекта установите второй выпуск среды выполнения набора средств Visual Studio 2005 для Office на компьютере разработки. Эта версия среды выполнения доступна в виде распространяемого пакета в Центре загрузки Майкрософт на странице Среда выполнения набора средств Microsoft Visual Studio 2005 для Office (второй выпуск) (VSTO 2005 SE) (x86).
После завершения обновления проекта можно удалить среду выполнения набора средств Visual Studio 2005 для Office (второй выпуск) с компьютера разработчика, если она не используется другими решениями Office.
Использование конструкторов
При работе с конструктором документов, книг или листов в проектах уровня документа могут возникнуть следующие ошибки.
Не удалось правильно загрузить конструктор
Visual Studio не удается открыть конструктор в следующих случаях.
Excel или Word уже открыты и отображают модальное диалоговое окно. Чтобы открыть конструктор, проверьте, открыто ли модальное диалоговое окно Excel или Word, и закройте все открытые модальные диалоговые окна. Если модальные диалоговые окна не открыты, возможно, требуются какие-либо другие действия для продолжения работы Excel или Word.
В настоящее время выполняется отладка проекта. Чтобы открыть конструктор, остановите или завершите отладку.
Надстройка VSTO для Excel, установленная на компьютере разработки, отображает диалоговое окно при запуске Excel. Чтобы создать проект уровня документа Excel, вначале необходимо отключить надстройку VSTO.
Элементы управления отображаются как черные прямоугольники в документе или на листе
При группировке элементов управления в документе или листе Visual Studio больше не распознает их. Доступ к сгруппированным элементам управления в окне свойств невозможен, и они отображаются как черные прямоугольники в документе или на листе. Необходимо разгруппировать элементы управления, чтобы восстановить их работоспособность.
Элементы управления в шаблоне Word не отображаются в Visual Studio
При открытии шаблона Word в конструкторе Visual Studio элементы управления шаблона, расположенные не в тексте, могут не отображаться. это связано с тем, что Visual Studio открывает шаблоны Word в нормальном режиме. чтобы просмотреть элементы управления, в меню вид выберите Microsoft Office представление Word , а затем щелкните макет печати.
команда "вставить картинку" ничего не делает в конструкторе Visual Studio
если Excel или Word открыто в конструкторе Visual Studio, при нажатии кнопки коллекция картинок на вкладке иллюстрации на ленте не открывается область задач коллекция картинок . чтобы добавить картинку, необходимо открыть копию книги или документа, находящегося в главной папке проекта (а не в папке \bin ), за пределами Visual Studio, добавить картинку и сохранить книгу или документ.
Написание кода
При написании кода в проектах Office могут возникнуть следующие ошибки.
"Неоднозначность между "Microsoft.Office.Interop.Excel._Application.NewWorkbook" и "Microsoft.Office.Interop.Excel.AppEvents_Event.NewWorkbook"".
Эта ошибка означает, что вы пытаетесь получить доступ к событию, имя которого совпадает с именем другого свойства или метода объекта. Чтобы получить доступ к событию, необходимо привести объект к его интерфейсу событий.
Типы основных сборок взаимодействия Office с событиями реализуют два интерфейса: основной интерфейс со свойствами и методами и интерфейс событий, содержащий события, предоставляемые объектом. Эти интерфейсы событий используют соглашение об именовании objectname Events n _Event, например AppEvents_Event и ApplicationEvents2_Event . Если вам не удается получить доступ к событию, которое должно быть в объекте, приведите объект к типу соответствующего интерфейса событий.
Например, у объектов Application есть событие NewWorkbook и свойство NewWorkbook. Для обработки события NewWorkbook приведите Application к интерфейсу AppEvents_Event. В следующем примере кода показано, как сделать это в проекте уровня документа для Excel.
дополнительные сведения о интерфейсах событий в Office pia см. в разделе общие сведения о классах и интерфейсах в Office основных сборках взаимодействия.
Этот код вызывает следующие ошибки компиляции.
Visual Basic: "ссылка на класс" документкласс "недопустима, если его сборка связана с использованием режима No-PIA."
Чтобы устранить эту ошибку, измените код так, чтобы он ссылался на соответствующий интерфейс. Например, вместо того чтобы ссылаться на объект DocumentClass, обращайтесь к экземпляру интерфейса Document.
ссылки на Office классы не распознаны
Некоторые имена классов, например Application, находятся в нескольких пространствах имен, таких как Microsoft.Office.Interop.Word и System.Windows.Forms . По этой причине инструкция Imports / using в верхней части шаблонов проектов содержит сокращенную подходящее константу, например:
при использовании оператора imports / using необходимо отличать ссылки на Office классы с помощью квалификатора Word или Excel, например:
Ошибки возникают при использовании неполного объявления, например:
несмотря на то, что вы импортировали слово или Excel пространство имен и имеете доступ ко всем классам внутри него, необходимо полностью определить все типы с помощью Word или Excel, чтобы удалить неоднозначность пространства имен.
Сборка проектов
При сборке проектов Office могут возникнуть следующие ошибки.
Невозможно построить проект уровня документа, основанный на документе с ограниченными разрешениями
"Ошибка при добавлении настройки".
Если вы хотите добавить документ с ограниченными разрешениями, используйте документ без ограничений при разработке и сборке решения. Затем после публикации решения примените ограниченные разрешения к документу в папке публикации.
Ошибки компилятора, возникающие после удаления элемента управления NamedRange
При удалении элемента управления NamedRange с неактивного листа в конструкторе невозможно удалить автоматически создаваемый код из проекта, и могут возникать ошибки компилятора. Чтобы удалить код, перед удалением элемента управления необходимо выбрать лист, содержащий элемент управления NamedRange, чтобы сделать его активным. Если автоматически создаваемый код не удаляется при удалении элемента управления, можно удалить код с помощью конструктора, сделав лист активным и изменив его, чтобы пометить его как измененный. При повторной сборке проекта код удаляется.
Отладка проектов
При отладке проектов Office могут возникнуть следующие ошибки.
Запрос на удаление появляется при публикации и установке решения на компьютере разработчика.
При отладке решения Office может возникнуть следующая ошибка.
"Не удается установить настройку, поскольку уже установлена другая версия, обновление которой из этой папки невозможно".
Проекты уровня документа, созданные в сетевых расположениях UNC, не запускаются с Visual Studio
При создании проекта уровня документа для Excel или Word в сетевом расположении UNC необходимо добавить расположение документа в список надежных расположений в Excel или Word. В противном случае настройки не будут загружаться при запуске или отладке проекта в Visual Studio. Дополнительные сведения о надежных расположениях см. в статье предоставление доверия документам.
Потоки после отладки неправильно останавливаются
Проекты Office в Visual Studio следуют соглашению об именовании потоков, которое позволяет отладчику правильно закрывать программу. При создании потоков в решении необходимо присвоить каждому потоку имя с префиксом "VSTA_" для правильной обработки этих потоков при остановке отладки. Например, можно задать Name свойство потока, ожидающего VSTA_NetworkListener сетевого события.
не удается запустить или отладить любое Office решение на компьютере разработчика
"Не удалось загрузить настройку, так как не удалось создать домен приложения".
Ошибка при остановке отладчика в проекте уровня документа после использования функции "изменить и продолжить"
"Завершение процесса в его текущем состоянии может привести к нежелательным результатам, включая потерю данных и нестабильность системы".
при нажатии кнопки да или нет в диалоговом окне Visual Studio завершает Excel или процесс слова и останавливает отладчик. Чтобы остановить отладку проекта без отображения этого диалогового окна, выйдите из Excel или Word напрямую, а не останавливайте отладчик в Visual Studio.
Visual Studio включает эффективный интегрированный набор средств сборки и отладки проектов. Из этой статьи вы узнаете, как Visual Studio может помочь обнаружить проблемы в коде с помощью построения выходных данных, анализа кода, средств отладки и модульных тестов.
Мы разобрались, как работать с редактором, и написали код. Теперь необходимо убедиться, что код работает должным образом. Отладка в Visual Studio, как и в большинстве интегрированных сред разработки (IDE), осуществляется в два этапа: построение кода для обнаружения и устранения ошибок проекта и компилятора и выполнение кода для обнаружения ошибок времени выполнения и динамических ошибок.
Сборка кода
Существует два основных типа конфигурации сборки: отладка и выпуск. При использовании конфигурации отладка создается более крупный и медленный исполняемый файл, обеспечивающий более широкие интерактивные возможности отладки во время выполнения. Исполняемый файл конфигурации отладка никогда не следует отправлять. Конфигурация выпуск позволяет создать более быстрый оптимизированный исполняемый файл, подходящий для отправки (по крайней мере с точки зрения компилятора). По умолчанию используется конфигурация Отладка.
Самый простой способ выполнить сборку проекта — нажать клавишу F7, однако вы также можете начать сборку, выбрав в главном меню пункты Сборка > Собрать решение.
Процесс сборки можно наблюдать в окне Вывод в нижней части пользовательского интерфейса Visual Studio. Здесь отображаются ошибки, предупреждения и операции сборки. При наличии ошибок (или предупреждений выше заданного уровня) сборка завершится ошибкой. Можно щелкнуть ошибку и предупреждение, чтобы перейти к строке, где они возникли. Для перестроения проекта можно нажать клавишу F7 (чтобы перекомпилировать только файлы с ошибками) или CTRL+ALT+F7 (для чистого полного перестроения).
После успешного выполнения построения вы увидите примерно следующие результаты в окне Вывод:
Просмотр списка ошибок
Если вы внесли какие-либо изменения в код, который был ранее и успешно скомпилирован, возможно, возникнет ошибка. Если вы новичок в написании кода, возможно, их будет много. Ошибки иногда очевидны, например простая синтаксическая ошибка или неправильное имя переменной, а иногда их причину трудно выяснить, имея в распоряжении только зашифрованный код. Чтобы получить более четкое представление о проблеме, перейдите вниз окна Вывод сборки и щелкните вкладку Список ошибок. При этом вы перейдете к более организованному представлению ошибок и предупреждений для проекта и получите доступ к некоторым дополнительным параметрам.
Щелкните строку ошибки в окне Список ошибок, чтобы перейти в строку кода, в которой возникла ошибка. (Кроме того, номера строк можно включить, нажав клавиши Ctrl+Q, введя номера строк, а затем выбрав Включить или отключить отображение номеров строк в результатах. Это самый быстрый способ перехода в диалоговое окно Параметры, где можно включить номера строк.
Нажмите клавиши CTRL+G для быстрого перехода к номеру строки, в которой возникла ошибка.
Ошибку можно узнать по подчеркиванию красной волнистой линией Чтобы получить дополнительные сведения, наведите на нее указатель мыши. Внесите исправления, и подчеркивание исчезнет, хотя в результате исправления может возникнуть новая ошибка (это называется "регрессия").
Пройдите список ошибок и устраните все ошибки в коде.
Просмотр подробных сведений об ошибках
Многие ошибки трудны для восприятия, будучи представленными в терминах компилятора. В этом случае могут потребоваться дополнительные сведения. Из окна Список ошибок можно выполнить автоматический поиск в поисковой системе Bing для получения дополнительных сведений об ошибке или предупреждении. Щелкните правой кнопкой мыши по соответствующей строке записи и выберите Показать справочные сведения об ошибке из контекстного меню или щелкните гиперссылку с кодом ошибки в столбце код в списке ошибок.
В зависимости от настроек результаты поиска по коду и описанию ошибки откроются в веб-браузере либо во вкладке Visual Studio с результатами поиска Bing. Представленные результаты — из различных источников в Интернете, и, возможно, не все они будут полезными.
Анализ кода
Средства анализа выполняют поиск общих проблем в коде, которые могут привести к ошибкам времени выполнения или проблемам управления кодом.
Анализ кода C++
Чтобы выполнить анализ кода C++, запустите статический анализ кода. Запустить этот компонент после устранения всех очевидных ошибок, препятствующих успешной сборке, и потратить некоторое время, чтобы устранить создаваемые им предупреждения, — очень полезная привычка. Вы сможете избавиться от определенных будущих проблем, а также научитесь некоторым полезным приемам написания кода.
Нажмите клавиши ALT+F11 (или выберите в верхнем меню команду Анализ > Выполнить анализ кода в решении) для запуска статического анализа кода.
Все новые или обновленные предупреждения отображаются на вкладке Список ошибок в нижней части интегрированной среды разработки. Щелкните предупреждение для перехода к нему в коде.
Использование быстрых действий для исправления или рефакторинга кода
Если вы привыкли работать с клавиатурой, вы можете использовать клавиши со стрелками и сочетание клавиш CTRL+ . для проверки возможностей оптимизации и очистки кода!
Запуск очистки кода
Помимо форматирования пробелов, отступов и т. п., функция Очистка кода применяет определенные вами соглашения о стиле кода. Ваши настройки для каждого стиля кода считываются из файла EditorConfig, если такой существует в проекте, или из раздела Параметры стиля кода, который доступен через диалоговое окно Параметры.
Отладка выполняемого кода
Успешно завершив сборку кода и его очистку, запустите код, нажав клавишу F5 или выбрав команду Отладка > Начать отладку. Приложение будет запущено в среде отладки, и вы сможете пронаблюдать его поведение. Интегрированная среда разработки Visual Studio изменяется во время выполнения приложения: окно Вывод заменяется двумя новыми окнами (в конфигурации окон по умолчанию): окном с вкладками Видимые/Локальные/Контрольные значения и окном с вкладками Стек вызовов/Точки останова/Параметры исключений/Вывод. Эти окна имеют несколько вкладок, которые позволяют просмотреть и проверить переменные, потоки, стеки вызовов приложения и другие характеристики поведения во время выполнения приложения.
Остановите приложение, нажав клавиши SHIFT+F5 или кнопку Остановить. Кроме того, можно просто закрыть главное окно приложения (или диалоговое окно командной строки).
Задание простых точек останова
Точки останова — это один из самых простых и важных компонентов надежной отладки. Точка останова указывает, где Visual Studio следует приостановить выполнение кода, чтобы вы могли проверить значения переменных или поведение памяти либо выполнение ветви кода. После установки или удаления точек останова перестраивать проект не нужно.
Установите точку останова, щелкнув дальнее поле строки, в которой требуется приостановить выполнение, или нажмите клавишу F9, чтобы установить точку останова в текущей строке кода. Выполнение кода прерывается (останавливается) перед инструкциями для этой строки кода.
Чаще всего точки останова используются для решения следующих задач.
Чтобы точнее определить источник аварийного завершения или отсутствия отклика программы, расставьте точки останова вокруг и непосредственно в коде вызова метода, который, по вашему мнению, приводит к сбою. При выполнении кода в отладчике удаляйте, а затем снова устанавливайте точки останова ближе друг к другу, пока не найдете строку кода, вызывающую ошибку. Выполнение кода в отладчике описывается в следующем разделе.
При добавлении нового кода установите точку останова в его начале и выполните код, чтобы убедиться в том, что он работает правильно.
При реализации сложного поведения задайте точки останова для алгоритмического кода, чтобы можно было проверить значения переменных и данные при прерывании программы.
При написании кода C или C++ используйте точки останова для остановки кода, чтобы можно было проверить значения адреса (ищите значение NULL) и просмотреть значения счетчиков при отладке ошибок, связанных с памятью.
Дополнительные сведения о точках останова см. в статье Использование точек останова.
Проверка кода во время выполнения
Когда выполнение кода приостанавливается из-за достижения точки останова, строка кода, помеченная желтым цветом (текущий оператор), еще не выполнена. Вы можете выполнить текущий оператор и проверить, как изменились значения. Для выполнения кода в отладчике можно использовать ряд команд пошагового выполнения. Если отмеченный код является вызовом метода, вы можете выполнить шаг с заходом, нажав клавишу F11. Кроме того, можно выполнить шаг с обходом строки кода, нажав клавишу F10. Дополнительные команды и подробные сведения о пошаговом выполнении кода см. в статье Навигация по коду с помощью отладчика.
Код, представленный на предыдущей иллюстрации, может выполняться отладчиком по одному оператору. Для этого можно нажимать клавишу F10 или F11 (так как здесь нет вызова метода, результат выполнения обеих команд будет одинаковым).
Когда отладчик приостанавливает выполнение, можно проверить переменные и стеки вызовов, чтобы разобраться в происходящем. Находятся ли значения в тех диапазонах, которые вы ожидали увидеть? Выполняются ли вызовы в правильном порядке?
Наведите курсор на переменную для просмотра ее текущего значения и ссылок. Если отображается значение, которое вы не ожидали увидеть, возможно, в предыдущем или вызывающем коде имеется ошибка. Более подробные сведения об отладке см. в статье об использовании отладчика.
Кроме того, Visual Studio выводит на экран окно средств диагностики, где можно наблюдать за загрузкой ЦП и использованием памяти приложением в динамике по времени. В дальнейшем в процессе разработки приложения эти средства можно применять для выявления случаев непредвиденно высокой загрузки ЦП или чрезмерного выделения памяти. Это окно можно использовать в сочетании с окном Контрольные значения и точками останова, чтобы определить причину непредвиденно интенсивного использования или неосвобожденных ресурсов. Дополнительные сведения см. в статье Обзор возможностей профилирования.
Запуск модульных тестов
Модульные тесты — это первая линия защиты от ошибок в коде, так как при правильном проведении они позволяют проверять отдельные "модули" кода (как правило, это отдельные функции), которые проще отлаживать, чем всю программу. Visual Studio устанавливает платформу модульного тестирования Майкрософт для управляемого и машинного кода. Платформа модульного тестирования используется для создания модульных тестов, их запуска и передачи результатов таких тестов. Завершив внесение изменений, запустите модульные тесты повторно, чтобы убедиться, что код по-прежнему работает правильно. При использовании выпуска Visual Studio Enterprise можно настроить автоматический запуск тестов после каждой сборки.
Чтобы приступить к работе с модульными тестами, ознакомьтесь со статьей Создание модульных тестов для кода с помощью IntelliTest.
Дополнительные сведения о модульных тестах в Visual Studio, а также о том, как они могут помочь в создании более качественного кода, см. в статье Основные сведения о модульных тестах.
Приведенные сценарии применимы как к поставщикам услуг размещения Azure, так и к сторонним поставщикам услуг размещения. Дополнительную информацию об устранении неполадок, связанных с веб-приложениями в службе приложений Azure, см. на следующих ресурсах:
Ошибка сервера в приложении "/" — текущая пользовательская ошибка Параметры запретить удаленное просмотр сведений об ошибке
Сценарий
Возможные причины и решение
Если в файле Web.config приложения есть элемент customErrors в элементе system.web, измените атрибут режима на off. В противном случае добавьте в элемент customErrors в элемент system.web с атрибутом mode значение off, как показано в следующем примере:
После устранения ошибки восстановите исходный параметр customErrors и повторно разверните приложение.
Не удается создать или теневое копирование ContosoUniversity, если этот файл уже существует.
Сценарий
Ошибка сервера в приложении «/». Не удается создать или теневое копирование ContosoUniversity, если этот файл уже существует.
Возможные причины и решение
Подождите минуту и обновите браузер или перекомпилируйте сайт и повторите попытку его выполнения.
Доступ запрещен на веб-странице, которая использует SQL Server Compact
Сценарий
Отказано в доступе". (Исключение из HRESULT: 0x80070005 (E_ACCESSDENIED))
Возможные причины и решение
Учетная запись NETWORK SERVICE на сервере должна иметь возможность чтения SQL собственных двоичных файлов Service Compact, которые находятся в папке bin\amd64 или bin\x86, но не имеют разрешений на чтение для этих папок. Задайте разрешение на чтение для NETWORK SERVICE в папке bin , чтобы расширить разрешения для вложенных папок.
Не удается прочитать файл конфигурации из-за недостатка разрешений
Сценарий
При чтении файла конфигурации IIS "MACHINE/REDIRECTION" произошла ошибка. Удостоверение, выполняющее эту операцию. Ошибка: не удается прочитать файл конфигурации из-за недостатка разрешений.
Возможные причины и решение
Чтобы использовать одно щелчком публикации в IIS на локальном компьютере, необходимо запустить Visual Studio с разрешениями администратора. Закройте Visual Studio и перезапустите его с разрешениями администратора.
Не удалось Подключение на конечный компьютер . Использование указанного процесса
Сценарий
Возможные причины и решение
Прокси-сервер прерывает обмен данными с конечным сервером. В Windows панель управления или Internet Explorer выберите "Свойства браузера" и перейдите на вкладку "Подключения". В диалоговом окне "Свойства интернета" щелкните Параметры локальной сети. В диалоговом окне Параметры "Локальная сеть" снимите флажок "Автоматически определять параметры". Затем снова нажмите кнопку публикации.
Если проблема не исчезнет, обратитесь к системному администратору, чтобы определить, что можно сделать с параметрами прокси-сервера или брандмауэра. Проблема возникает из-за того, что веб-развертывание использует нестандартный порт для развертывания службы веб-управления (8172); для других подключений веб-развертывание использует порт 80. При развертывании на стороннем поставщике услуг размещения обычно используется служба веб-управления.
Сценарий
Возможные причины и решение
Формат строки инициализации не соответствует спецификации, начиная с индекса 0.
Сценарий
Формат строки инициализации не соответствует спецификации, начиная с индекса 0.
Возможные причины и решение
Откройте файлWeb.config на развернутом сайте и проверьте, начинаются $(ReplaceableToken_ ли значения строки подключения, как показано в следующем примере:
Если строки подключения выглядят так, измените файл проекта и добавьте следующее свойство в элемент PropertyGroup, который предназначен для всех конфигураций сборки:
Затем повторно разверните приложение.
Сценарий
Возможные причины и решение
Сценарий
Возможные причины и решение
Ошибка входа при открытии базы данных SQL Server Express в App_Data
Сценарий
System.Data.SqlClient.SqlException: не удается открыть базу данных DatabaseName, запрошенную именем входа. Сбой при входе.
Возможные причины и решение
Имя MDF-файла не может совпадать с именем любой SQL Server Express базы данных, которая когда-либо существовала на компьютере, даже если вы удалили MDF-файл ранее существующей базы данных. Измените имя MDF-файла на имя, которое никогда не использовалось в качестве имени базы данных, и измените файлWeb.config , чтобы использовать новое имя. В качестве альтернативы можно использовать SQL Server Management Studio Express для удаления ранее существующих баз данных SQL Server Express.
Не удается проверить совместимость моделей
Сценарий
Невозможно проверить совместимость модели, так как база данных не содержит метаданных модели. Убедитесь, что includeMetadataConvention добавлен в соглашения DbModelBuilder.
Возможные причины и решение
Если имя базы данных, помещенное в файл Web.config, когда-либо использовалось на компьютере, база данных может уже существовать с некоторыми таблицами в ней. Выберите новое имя, которое еще не использовалось на компьютере, и измените файл Web.config таким образом, чтобы он указывал на это новое имя базы данных. В качестве альтернативы можно использовать программу SQL Server Express или SQL Server Management Studio Express для удаления существующей базы данных.
SQL ошибка при попытке скрипта создать пользователей или ролей
Сценарий
Если эта ошибка возникает при настройке развертывания базы данных в мастере публикации веб-сайта, а не на вкладке "Пакет или публикация SQL", создайте поток на форуме по настройке и развертыванию, а решение будет добавлено на эту страницу устранения неполадок.
Возможные причины и решение
Учетная запись пользователя, используемая для выполнения развертывания, не имеет разрешения на создание пользователей или ролей. Например, хостинговая компания может назначить db_datareader, db_datawriter и db_ddladmin роли учетной записи пользователя, настроенной для вас. Они достаточно для создания большинства объектов базы данных, но не для создания пользователей или ролей. Одним из способов избежать ошибки является исключение пользователей и ролей из развертывания базы данных. Это можно сделать, изменив элемент PreSource для автоматически созданного скрипта базы данных, чтобы он включает следующие атрибуты:
Сведения об изменении элемента PreSource в файле проекта см. в разделе "Практическое руководство. Изменение Параметры развертывания" в файле Project. Если пользователи или роли в базе данных разработки должны находиться в целевой базе данных, обратитесь за помощью к поставщику услуг размещения.
SQL Server ошибка времени ожидания при выполнении пользовательских скриптов во время развертывания
Сценарий
Вы указали пользовательские скрипты SQL для выполнения во время развертывания, и когда веб-развертывание запускает их, истекает время ожидания.
Возможные причины и решение
Выполнение нескольких скриптов с разными режимами транзакций может привести к ошибкам времени ожидания. По умолчанию автоматически созданные скрипты выполняются в транзакции, но пользовательские скрипты не выполняются. При выборе схемы извлечения данных и (или) из существующей базы данных на вкладке "Пакет или публикация SQL" и при добавлении пользовательского скрипта SQL необходимо изменить параметры транзакции в некоторых сценариях, чтобы все скрипты использовали одни и те же параметры транзакции. Дополнительные сведения см. в разделе "Практическое руководство. Развертывание базы данных с помощью веб-приложения Project".
Если вы настроили параметры транзакции так, чтобы все они были одинаковыми, но по-прежнему получают эту ошибку, возможный обходной путь — запустить скрипты отдельно. В сетке "Скрипты базы данных" на вкладке "Пакет или публикация SQL" снимите флажок "Включить" для скрипта, который вызывает ошибку времени ожидания, а затем опубликуйте проект. Затем вернитесь в сетку "Скрипты базы данных ", установите этот флажок " Включить " и снимите флажки "Включить " для других сценариев. Затем снова опубликуйте проект. На этот раз при публикации выполняется только выбранный пользовательский скрипт.
Потоковые данные манифеста сайта пока недоступны
Сценарий
Ошибка: потоковые данные sitemanifest/dbFullSql[@path='C:\TEMP\AdventureWorksGrant.sql']/sqlScript пока недоступны.
Возможные причины и решение
Для этого приложения требуется ManagedRuntimeVersion версии 4.0
Сценарий
В пуле приложений, который вы пытаетесь использовать, свойство managedRuntimeVersion имеет значение "v2.0". Для этого приложения требуется версия 4.0.
Возможные причины и решение
Не удается привести Microsoft.Web.Deployment.DeploymentProviderOptions
Сценарий
Не удалось привести объект типа Microsoft.Web.Deployment.DeploymentProviderOptions к Microsoft.Web.Deployment.DeploymentProviderOptions.
Возможные причины и решение
Вы пытаетесь развернуть из диспетчера IIS с помощью пользовательского интерфейса веб-развертывания 1.1 на сервере с установленным веб-развертыванием 2.0. Если вы используете средство удаленного администрирования IIS для развертывания путем импорта пакета, установите диалоговое окно "Новые доступные компоненты " при установке подключения. (Это диалоговое окно может отображаться только один раз при первом установке соединения. Чтобы очистить подключение и начать заново, закройте диспетчер IIS и снова запустите его, введя inetmgr /reset в командной строке.) Если одна из перечисленных функций — пользовательский интерфейс веб-развертывания и имеет номер версии ниже 8, сервер, на котором выполняется развертывание, может быть установлен как 1.1, так и 2.0. Для развертывания с клиента, на котором установлена версия 2.0, на сервере должна быть установлена только веб-развертывание 2.0. Чтобы устранить эту проблему, необходимо обратиться к поставщику услуг размещения.
Не удается загрузить собственные компоненты SQL Server Compact
Сценарий
Возможные причины и решение
Развернутый сайт не содержит вложенных папок amd64 и x86 с собственными сборками в них в папке bin приложения. На компьютере с установленным SQL Server Compact собственные сборки находятся в папке C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Private. Лучший способ получить правильные файлы в правильные папки в проекте Visual Studio — установить пакет NuGet SqlServerCompact. Установка пакета добавляет скрипт после сборки для копирования собственных сборок в amd64 и x86. Однако для развертывания этих элементов необходимо вручную включить их в проект. Дополнительные сведения см. в руководстве по развертыванию SQL Server Compact.
Ошибка "Путь недопустим" после развертывания приложения Entity Framework Code First
Сценарий
Недопустимый путь. Проверьте каталог для базы данных. [Path = c:\inetpub\wwwroot\App_Data\DatabaseName.sdf ]
Возможные причины и решение
Code First пытается создать базу данных, но папка App_Data не существует. При развертывании не было файлов в папке App_Data или вы выбрали "Исключить App_Data" на вкладке "Пакет или публикация" Project окно свойств. Процесс развертывания не создаст папку на сервере, если в ней нет файлов, которые будут скопированы на сервер. Если на сайте уже настроена база данных, процесс развертывания удалит файлы и саму папку App_Data , если вы выбрали "Удалить дополнительные файлы" в профиле публикации. Чтобы решить эту проблему, поместите заполнитель, например файл .txt в папку App_Data , убедитесь, что не выбран параметр "Исключить App_Data" и повторно разверните его.
"COM-объект, который был отделен от его базового RCW, нельзя использовать".
Сценарий
Вы успешно использовали публикацию одним щелчком мыши для развертывания приложения, а затем начнете получать эту ошибку:
Возможные причины и решения
Закрытие и перезапуск Visual Studio обычно требуется для устранения этой ошибки.
Сбой развертывания, так как учетные данные пользователя, используемые для публикации, не имеют центра setACL
Сценарий
Публикация завершается сбоем с ошибкой, указывающей, что у вас нет прав на настройку разрешений на доступ к папкам (используемая учетная запись пользователя не имеет центра установкиACL).
Возможные причины и решения
По умолчанию Visual Studio задает разрешения на чтение корневой папки сайта и разрешения на запись в папке App_Data. Если вы знаете, что разрешения по умолчанию для папок сайта являются правильными и не нужно задавать, отключите это поведение, добавив в файл профиля публикации (чтобы повлиять на один профиль) или в файл wpp.targets (чтобы повлиять на все профили). Сведения об изменении этих файлов см. в разделе "Практическое руководство. Изменение Параметры развертывания в файлах профиля (PUBXML).
Ошибки отказа в доступе при попытке приложения записать в папку приложения
Сценарий
Ошибка приложения при попытке создать или изменить файл в одной из папок приложения, так как у него нет центра записи для этой папки.
Возможные причины и решения
По умолчанию Visual Studio задает разрешения на чтение корневой папки сайта и разрешения на запись в папке App_Data. Если приложению требуется доступ на запись в вложенную папку, вы можете задать разрешения для этой папки, как показано в руководстве по настройке разрешений папки и развертыванию в рабочей среде в этой серии. Если приложению требуется доступ на запись в корневую папку сайта, необходимо запретить ему устанавливать доступ только для чтения в корневой папке, добавив в файл профиля публикации (чтобы повлиять на один профиль) или в файл wpp.targets (чтобы повлиять на все профили). Сведения об изменении этих файлов см. в разделе "Практическое руководство. Изменение Параметры развертывания в файлах профиля (PUBXML).
Сценарий
Поле "Исходная ошибка" на странице ошибки выделяет следующую строку из Web.config в качестве причины ошибки:
Возможные причины и решения
При развертывании веб-проекта ASP.NET 4 или более ранних версий в том же месте назначения установите флажок "Удалить дополнительные файлы" на вкладке Параметры мастера публикации веб-сайта. Если вы не выберете " Удалить дополнительные файлы" в месте назначения, вы продолжите получать страницу "Ошибка конфигурации".
Ошибки среднего доверия
Сценарий
При запуске приложения в рабочей среде возникает ошибка, связанная с средним уровнем доверия.
Возможные причины и решения
Многие сторонние поставщики услуг размещения запускают веб-сайт в среднем доверии, что означает, что есть некоторые действия, которые не разрешены. Например, код приложения не может получить доступ к реестру Windows и не может читать или записывать файлы, которые находятся за пределами иерархии папок приложения. По умолчанию приложение работает в полном доверии на локальном компьютере, что означает, что приложение может иметь возможность выполнять действия, которые завершаются сбоем при развертывании в рабочей среде.
Чтобы устранить неполадки, можно настроить приложение для запуска в локальной среде IIS с средним уровнем доверия. Для этого откройте файл приложенияWeb.config и добавьте элемент доверия в элемент system.web , как показано в этом примере.
Теперь приложение будет работать в службах IIS в среднем доверии даже на локальном компьютере.
Не выполняйте это, если вы развертываете Служба приложений Azure, так как Azure не требует среднего доверия. На момент написания этого руководства в феврале 2012 г. использование этого метода для запуска приложения в среднем доверии приведет к ошибке в Azure.
Если вы используете Entity Framework Code First Migrations и развертываете его в поставщике услуг размещения, который запускает приложение в среднем доверии, убедитесь, что у вас установлена версия 5.0 или более поздняя. В Entity Framework версии 4.3 миграция требует полного доверия для обновления схемы базы данных.
Сценарий
Запрошенный контент представляется скриптом и не будет обслуживаться статическим обработчиком файлов.
Возможные причины и решения
Решил поэкспериментировать с удаленным дебаггом, после его настройки на удаленном компьютере (он находится в локальной сети), и указав в настройках проекта его IP адрес (ну перед этим, естественно поставив галочку "Использовать удаленный компьютер"), выскакивает ошибка после запуска проекта:
Ошибка при запуске проекта: Не удалось запустить программу
"D. \bin\debug\Program.exe"
Не удается найти указанный файл
Естественно, я проверял полностью путь до файла, и он верный, и соответственно, файл там находится.
PS В качестве удаленного компьютера, используется Windows 10
нет, для этого потребуется расшареная папка на удаленной машине, отдельный билд-конфиг для удаленной отладки и собственно билд на эту шару.
2 ответа 2
Этот файл должен находиться на удаленном компьютере, причем в той же папке, что и на хосте. А еще на удаленном компьютере должен работать Remote Tools.
Для автоматического копирования собранного файла на отладочную машину можно использовать вот эти заклинания в Post-Build Step:
Для начала удаленной отладки клиентского приложения необходимо выполнить следующее:
На удаленной машине (виртуальной или реальной не важно):
у тестовой машины должен быть либо фиксированный адрес, либо сетевое имя, прописанное и автоматически обновляемое в DNS сервисе, чтобы не менять настройки проекта в дальнейшем.
настраиваем сетевую папку, доступную на чтение и запись с машины разработчика, для того чтобы не заниматься копированием каждого билда в ручную.
необходимо установить Remote Debuger. Для этого нужно скопировать из папки C:\Program Files (x86)\Microsoft Visual Studio 15.0\Common7\IDE\Remote Debugger версию отладчика нужной разрядности либо скачать инсталлятор по ссылкам из статьи Remote Debugging в документации Microsoft. Не знаю что именно требуется скачивания официального инсталлятора, но моему LiveId явно чего-то не хватило.
прописываем запуск msvsmon.exe в автозагрузку при логине пользователя любым удобным способом (групповые политики, ярлык в папке SturtUp, планировщик заданий, logon-скрипт). Можно пропустить этот пункт и запускать каждый раз ручками.
настраиваем эталонного пользователя для входа в систему и тестирования приложения, выдаем ему необходимые права и, самое главное, отбираем все заведомо лишние права.
В настройках проекта:
создать отдельную конфигурацию для удаленной отладки
в разделе Build созданной конфигурации в параметре Output folder указать сетевую папку удаленной машины
в разделе Debug выбрать Remote debug
Процесс отладки клиентского приложения
перед отладкой нужно явно запустить билд решения, при этом файлы приложения будут скопированы в сетевую папку удаленной машины (если сделано все, перечисленное выше). В принципе это требуется сделать только один раз, при последующих изменения кода в студии, билд будет запускаться автоматически, как при локальной отладке.
подключиться к удаленной машине любым клиентом, позволяющим взаимодействие с рабочим столом.
запускаем msvsmon.exe, если это не было сделано автоматически при логине.
в студии запускаем отладку обычным образом, при этом на удаленной машине запуститься отлаживаемое приложение. Все точки останова и исключения будут обрабатываться на машине разработчика.
Для отладки web- и других серверных приложений лучше установить Remote Debuger в качестве службы.
Читайте также: