Visual Studio 2008 не будет редактировать файлы только для чтения - PullRequest
5 голосов
/ 19 ноября 2008

Итак, до сегодняшнего дня, когда я пытался редактировать файл только для чтения в VS2008, всплывал диалог, предоставляющий мне три варианта:

  • Редактировать в памяти
  • Сделать доступным для записи
  • Сохранить копию

Был также флажок, который гласил: «Никогда не разрешать в редактировании памяти».

Внезапно он прекратил предлагать эти опции и просто не будет принимать какие-либо данные в окне редактора, если файл доступен только для чтения. Я должен зайти в Windows Explorer и пометить файл как не только для чтения, а затем снова открыть его в VS, прежде чем я смогу внести какие-либо изменения. Я работаю над большим проектом с большим количеством файлов, контролируемых исходным кодом, и часто мне нужно вносить в файлы только локальные изменения, так что это настоящая PITA.

Полагаю, я, наверное, по ошибке установил флажок никогда не разрешать редактирование в памяти.

В меню Инструменты .. Параметры .. Среда .. Есть опция, которая гласит:

«Разрешить редактирование файлов только для чтения, предупреждать при попытке сохранения»

Этот флажок отмечен, и в настоящее время его значение не изменяется. Я пытался закрыть и открыть студию, перезапустить мою машину и т. Д. - все безрезультатно.

Кто-нибудь знает, как восстановить предыдущее поведение?

Ответы [ 5 ]

14 голосов
/ 21 ноября 2008

В случае, если кому-то будет интересно, сброс следующей записи реестра в 0 восстановит предыдущее поведение:

HKCU\Sofware\Microsoft\Visual Studio\9.0\Source Control\UncontrolledInMemoryEditDialogSuppressed
2 голосов
/ 26 октября 2010

Я сделал то же самое в Visual Studio 2010. Диалоговое окно не совсем ясно в формулировке. Проблема (и решение Уинстона) та же самая в Visual Studio 2010. Так что установите это 0 в реестре:

HKEY_CURRENT_USER \ Software \ Microsoft \ Visual Studio \ 10.0 \ Контроль версий \ UncontrolledInMemoryEditDialogSuppressed

1 голос
/ 01 сентября 2012

У меня была такая же проблема сегодня, и я обнаружил, что выбранный источник управления в меню Инструменты-> Параметры-> Управление исходным кодом изменился. Итак ... возможно, вы захотите убедиться, что выбранная вами система контроля версий соответствует вашим ожиданиям.

1 голос
/ 29 марта 2012

Похоже, что в игре находятся другие переменные реестра, в том же месте реестра ...

Как и раньше, перейдите в HKEY_CURRENT_USER \ Software \ Microsoft \ Visual Studio \ 10.0 \ Source Control \

И сбросить все три из:

  • AllowUncontrolledInMemoryEditing
  • AllowInMemoryEditing
  • UncontrolledInMemoryEditDialogSuppressed

вернуться к нулю.

(Кажется, мой собственный компилятор вернулся к поведению по умолчанию).

0 голосов
/ 20 ноября 2008

На самом деле, самое логичное, что нужно сделать, это:

  1. Если файл не предназначен для редактирования, пометьте его только для чтения
  2. Если файл предназначен для редактирования, пометьте его как доступный для записи!

Это частично целая точка атрибута только для чтения.

Если вы думаете, что я как-то не прав, конечно, меняйте меня, но все остальные логически должны согласиться со мной, потому что в настоящее время не слишком ясно, почему вам нужно использовать вещи неправильно.

Пока объяснение не будет расширено, ваша проблема находится на одном уровне с жалобами на то, что, когда вы что-то удаляете, вы не можете получить это позже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...