Как открыть файл только для чтения из проводника Windows?


10

Существует ли простой способ открыть файл только для чтения из проводника Windows?

Мой непосредственный интерес к файлу Microsoft Access. Я делаю некоторые проверки работоспособности в старых базах данных MS Access и вижу, что их дата автоматически обновляется, когда я их открываю. Мне это не нравится, так как похоже, что все старые файлы были изменены сегодня.

Я работаю с Windows XP.

Обновление: как сказал Йода,

Нет. Попробуй нет. Делай ... или нет. Там нет попытки.

В моем случае это было «нет». В итоге я скопировал все (большое) дерево папок в MyDocuments, а затем открыл все базы данных оттуда.


2
Есть ли причина, по которой вы не можете просто добавить в файл флаг только для чтения? Щелкните правой кнопкой мыши, выберите «Свойства», установите флажок «Только чтение».
music2myear

@ music2myear Теперь (спустя 2 года;) Я думаю, что вы правы, это был правильный подход.
Даниэль Даранас

Ответы:


7

  • Откройте проводник Windows.
  • Выберите «Свойства папки» в меню «Вид». (В некоторых версиях Windows вы выбираете «Параметры» в меню «Вид» или «Параметры папки» в меню «Инструменты».) Windows отображает диалоговое окно «Параметры папки» (или просто «Параметры»).
  • Убедитесь, что выбрана вкладка «Типы файлов». (Нажмите здесь, чтобы увидеть связанный рисунок.) В списке типов зарегистрированных файлов найдите и выберите Microsoft Word Document. Нажмите на кнопку Изменить. Windows отображает диалоговое окно «Редактировать тип файла». (Нажмите здесь, чтобы увидеть связанный рисунок.)
  • Выберите опцию Открыть в списке действий.
  • Нажмите на Дополнительно. Откроется диалоговое окно «Редактировать тип файла».
  • Нажмите Открыть в поле Действия.
  • Нажмите на Изменить. Откроется диалоговое окно «Редактирование действий».
  • Выберите содержимое поля «Приложение, используемое для выполнения действия». (Нажмите здесь, чтобы увидеть связанный рисунок.)
  • Нажмите CTRL + C. Это копирует содержимое поля «Приложение, используемое для выполнения действия».
  • Нажмите на Отмена.
  • Нажмите кнопку Новый. Windows отображает диалоговое окно New Action.
  • В поле «Действие» введите имя, которое вы хотите отобразить в контекстном меню. Например, вы можете напечатать Open Read-Only.
  • Поместите курсор в поле «Приложение, используемое для выполнения действия» и нажмите CTRL + V. Информация, скопированная на шаге 8, будет вставлена ​​в поле.
  • Установите флажок «Использовать DDE». Откроется диалоговое окно «Новое действие».
  • В окне сообщения DDE введите следующий текст: [FileOpen ("" "% 1" ""), ReadOnly]
  • В поле «Приложение» введите одно слово: WinWord.
  • В поле Тема введите одно слово: Система.
  • Нажмите Закрыть или OK, если необходимо, чтобы закрыть все диалоговые окна.


  • Спасибо за ваш ответ. Я попытался использовать его, изменив WinWord на MsAccess. После щелчка правой кнопкой мыши по файлу и выбора моего нового действия «Открыть только для чтения» появляется следующее сообщение: Microsoft Office Access не может найти макрос «FileOpen (» »« K: \ MyLongishPath ... Сообщение фактически обрезано.
    Даниэль Даранас,

    4
    Это НЕ подпадает под "легкий путь".
    Shadow Wizard - это ухо для тебя

    24

    У меня была такая же проблема в Windows 7. Приведенный выше ответ не работает для W7, потому что интерфейс для сопоставления файлов изменился. Хорошей новостью является то, что «Открыть как доступный только для чтения» теперь стало более простым процессом.

    Shift + правый клик -> Открыть только для чтения


    4
    это не решает проблему, однако я использовал щелчок правой кнопкой мыши, открыть только для чтения, msword по-прежнему открывать файлы НОРМАЛЬНО :(
    Luke

    12
    К вашему сведению, для тех, кто попал сюда через Google, работает сдвиг правой кнопкой мыши и «Открыть в режиме защищенного просмотра». Открытое как только для чтения, кажется, ничего не делает. Протестировано в Windows 7 / Office 2010
    Эндрю Грот

    1
    Я попытался открыть файл Excel в Office 2016 как «только для чтения», и он позволил мне внести изменения и сохранить ... упс. «Защищенный просмотр» работал, как и ожидалось.
    Джефф Б

    4

    Другой вариант, если вы открываете файл в программе Office, это следовать инструкциям MS .

    • Откройте нужную вам программу Office
    • Нажмите кнопку Office и откройте
    • Найдите файл, который хотите открыть, и выберите его.
    • Нажмите кнопку «Открыть» внизу, нажмите стрелку и выберите «Открыть только для чтения».

    Я попробовал это с Excel, и он фактически открыл файл только для чтения.

    При использовании Shift + правый щелчок параметр «Открыть как доступный только для чтения» в проводнике, похоже, не имел никакого эффекта. Я не вижу опцию «Открыть в режиме защищенного просмотра».

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

    Я также не хочу пройти 18 шагов, чтобы добавить действие или отредактировать реестр (даже не уверен, что мне разрешено работать).

    Я знаю, что технически это не открывается из Windows Explorer, но многие (как и я) приходят сюда из Google и хотят что-то открыть в программе Office.


    3

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

    В Windows XP Explorer 8 -Выбранные инструменты - Параметры папки - Вкладка «Типы файлов» -Выбранный документ Microsoft Word -Нажмите «Дополнительно» [появилось окно «Редактировать тип файла»] -В поле « Действия» выбран открытым как доступный только для чтения -Нажмите « ОК» - Нажатие « Изменить»

    • Коробка под названием «Редактирование действия для типа Microsoft Word Docu. ...» содержала следующую информацию:

      Действие: Открыть только для чтения

      Приложение, используемое для выполнения действия: «C: \ Program Files \ Microsoft Office \ OFFICE11 \ WINWORD.EXE» / h / n / dde

      Сообщение DDE: [AppShow] [REM _DDE_ReadWriteOnSave] [FileOpen .Name = "% 1",. Revert = 0]

      Применение: WinWord

      Приложение DDE не запущено: [пусто]

      Тема: Система

    -Щелкнул ОК на всем протяжении.

    -Пошёл в Проводник и щелкнул правой кнопкой мыши по документу Word, теперь в меню появилась опция только для чтения , щелкнув по нему со следующими результатами:

    Error
    The command cannot be opened because a dialog box is open.  Click OK, and then close the dialog boxes to continue.
    
    Clicked ok
    
    Got second error
        Word experienced an error trying to open the file.
        Try these suggestions.
            *Check the file permissions for the document or drive.
            *Make sure there is sufficient memory or disk space.
            *Open the file with the text recovery converter.
            (F:\24th)
    

    -Clicked Показать Помощь

    The file you tried to open was not found. It may be missing, in a different location, locked by another application, or unavailable due to file permissions. If you are sure the file exists but you cannot locate it using the Word File Open dialog, start Microsoft Windows Explorer and perform a search. If the search dialog returns a listing of your file, double-click on it to open it. If the file does not open, it is either corrupt, locked by another application, or is protected by file permissions.
    
    -Clicked OK
    -Filed opened, but not as read-only.
    
    -Tried another document, and this one opened immediately, but not as read-only.
    

    3

    Вот что сработало для меня в Windows 7 после прочтения этой и аналогичных тем:

    Для Word:

    • Отредактируйте ваши ключи HKEY_CLASSES_ROOT \ Word.Document.12 \ shell \ OpenAsReadOnly \ так, чтобы "% 1" в обеих подстатьях был заменен на / dde, если это еще не было сказано
    • Снова для документов Word2003: отредактируйте команду HKEY_CLASSES_ROOT \ Word.Document.8 \ shell \ OpenAsReadOnly \, как указано выше
    • Импортируйте следующий файл reg или сравните с вашим реестром:

      Windows Registry Editor Version 5.00
      
      [HKEY_CLASSES_ROOT\Word.Document.12\shell\OpenAsReadOnly\ddeexec]
      @="[AppShow][REM _DDE_ReadWriteOnSave][FileOpen .Name="%1",.ReadOnly=1]"
      
      [HKEY_CLASSES_ROOT\Word.Document.12\shell\OpenAsReadOnly\ddeexec\Application]
      @="WinWord"
      
      [HKEY_CLASSES_ROOT\Word.Document.12\shell\OpenAsReadOnly\ddeexec\IfExec]
      @=""
      
      [HKEY_CLASSES_ROOT\Word.Document.12\shell\OpenAsReadOnly\ddeexec\Topic]
      @="System"`
      
      [HKEY_CLASSES_ROOT\Word.Document.8\shell\OpenAsReadOnly\ddeexec]
      @="[AppShow][REM _DDE_ReadWriteOnSave][FileOpen .Name=\"%1\",.ReadOnly=1]"
      
      [HKEY_CLASSES_ROOT\Word.Document.8\shell\OpenAsReadOnly\ddeexec\Application]
      @="WinWord"
      
      [HKEY_CLASSES_ROOT\Word.Document.8\shell\OpenAsReadOnly\ddeexec\IfExec]
      @=""
      
      [HKEY_CLASSES_ROOT\Word.Document.8\shell\OpenAsReadOnly\ddeexec\Topic]
      @="System"`
      

    Для Excel:

    • Как и слова, убедитесь, что команды в HKEY_CLASSES_ROOT \ Excel.Sheet.12 и HKEY_CLASSES_ROOT \ Excel.Sheet.8 имеют параметр / dde (это уже было для меня)
    • Импортируйте следующий файл reg или сравните с вашим реестром:

      Windows Registry Editor Version 5.00
      
      [HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\ddeexec]
      @="[open("%1",,1)]"
      
      [HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\ddeexec\application]
      @="Excel"
      
      [HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\ddeexec\topic]
      @="system"
      
      [HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly\ddeexec]
      @="[open("%1",,1)]"
      
      [HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly\ddeexec\application]
      @="Excel"
      
      [HKEY_CLASSES_ROOT\Excel.Sheet.8\shell\OpenAsReadOnly\ddeexec\topic]
      @="system"
      

    Он должен работать аналогично для других типов Office, но я этого не пробовал.


    2

    Вместо Shift + щелчок правой кнопкой мыши -> Открыть только для чтения, используйте Открыть в режиме защищенного просмотра. Кажется, делает то, что нужно и мешает редактированию документа. Это должно работать для файлов Word и Excel.


    2
    ты на самом деле пробовал это? если нет, то, вероятно, не стоит публиковать в качестве ответа, особенно на вопрос 2009 года. FWIW ответ, скорее всего, можно найти здесь office.microsoft.com/en-gb/access-help/…
    Джеймс

    @James Ссылка не работает ... также этот ответ, кажется, опубликован в ответ на недостатки в этом другом ответе на этот вопрос.
    Джефф Б

    1

    Я согласен с music2myear , если нет других пользователей, которые запрещают это, правильным и простым способом будет:

    • щелкните правой кнопкой мыши на папке
    • перейти к свойствам
    • выберите только для чтения
    • Применить ко всем подпапкам.

    -1

    Моя проблема в том, что опция shift + правый клик «Открыть только для чтения» не работала.
    Я попробовал решение для редактирования реестра здесь для Windows 7:
    https://answers.microsoft.com/en-us/windows/forum/windows_7-files/files-not-opening-read-only/3a4242d4-bdfb-42a1-b6d2 -a70775588101? page = 1
    (Примечание: ответ в связанной ветке также ссылается на этот вопрос)

    Но я в конечном итоге решить, изменив значение по умолчанию ключа
    (Примечание: Excel.Sheet.12соответствует к xlsmфайлам в моем случае, вы, вероятно , придется изменить его для других типов файлов.)
    HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\OpenAsReadOnly\command
    От
    "C:\Program Files (x86)\Microsoft Office\Root\Office16\EXCEL.EXE" /h "%1"
    до
    "C:\Program Files (x86)\Microsoft Office\Root\Office16\EXCEL.EXE" /r "%1"

    объяснение

    В соответствии с документами , /hпереключатель командной строки открывает документы Word только для чтения (в sharepoint?), Но для Excel это /r.

    Что-то я не пробовал

    Ремонт MS Office с помощью установщика.

    Обновление 2020-01-17

    После переустановки MS Office эти ключи реестра были сброшены. Как оказалось, в моем первоначальном ответе пропущен важный шаг!
    В ответе я изначально упоминал:

    В ключе ddeexec вам нужно изменить значение по умолчанию: [open("%1",,1)]

    В процессе внесения изменений в реестре, я нашел инструмент под названием RegScanner , который сделал это так гораздо проще найти ключи реестра.
    Вот настройки поиска, которые я использовал (скриншот поиска) :

    • Найти строку: Excel.*OpenAsReadOnly\\command
    • Совпадение: Registry item contains the specified regular expression
    • Смотреть на: Keys
    • Проверьте Scan the following base keys:и выберите:HKEY_CLASSES_ROOT

    Вы можете дважды щелкнуть по каждому результату поиска, чтобы перейти к этому ключу в regedit.

    Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
    Licensed under cc by-sa 3.0 with attribution required.