Как запретить Excel блокировать файлы по умолчанию?

17

Когда я дважды щелкаю файл CSV на сетевом ресурсе, файл открывается в Microsoft Excel (что я и хочу). Тем не менее, Excel предполагает, что я собираюсь изменить файл, и что все остальные тоже, и поэтому устанавливает его.

На практике я очень редко хочу изменить эти файлы, просто прочитав их. И если у меня есть файл, открытый в окне Excel на заднем плане, он останавливает кого-либо еще от открытия того же файла.

Мне известно, что я могу вручную открыть файл только для чтения из диалогового окна Файл -> Открыть в Excel. Однако я почти всегда открываю файлы, дважды щелкая по ним в Проводнике (или Outlook, для вложений). Можно ли изменить сопоставление файлов, чтобы обработчиком по умолчанию для файлов CSV был «Excel в режиме только для чтения»? Есть ли аргумент командной строки, который я могу использовать в диалоге Открыть с помощью ... для достижения этой цели?

Или более грубо - когда я смотрю на CSV-файл в Windows Explorer, есть ли более простой способ открыть его только для чтения, чем сам запуск Excel, выбрав «Файл» -> «Открыть», выбрав «только для чтения» из выпадающего списка, перемещаясь вручную в ту же папку в иерархии, а затем открыть файл?

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

Анджей Дойл
источник

Ответы:

12

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

[HKEY_CLASSES_ROOT\Excel.CSV\shell\Open_in_read_only_Excel]
@="Open read-only in Excel"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\Open_in_read_only_Excel\command]
@="\"C:\\Program Files (x86)\\Microsoft Office\\Office12\\EXCEL.EXE\" /r \"%1\""

Это создает запись в контекстном меню оболочки в проводнике Windows, которая называется «Открыть только для чтения в Excel». При выборе этого запускается Excel с /rфлагом (согласно команде во втором ключе), который открывает файл в режиме только для чтения.

Это не идеально - я бы предпочел, чтобы это было действие по умолчанию для файла CSV, и что для запуска в режиме чтения-записи требовалась опция контекста. Однако это значительно улучшило ситуацию.

Анджей Дойл
источник
4
Вы почти там - к теперь установлено , что действие по умолчанию, установите ключ [HKEY_CLASSES_ROOT\Excel.CSV\shell, значение (Default)для Open_in_read_only_Excel
SeanC
3

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

Файл> Сохранить как> Инструменты> Общие параметры ...> Рекомендуется только для чтения

Пит Оки
источник
5
Это не похоже на работу с CSV-файлами (что имеет смысл, поскольку им негде хранить метаданные). Кроме того, файлы создаются с помощью автоматической загрузки по FTP, поэтому, если процесс Unix не может установить этот флаг, я не думаю, что этот подход принесет свои плоды.
Анджей Дойл
3

Вот эквивалент ответа Анджея Дойла для Excel 2013, который использует DDE, а также устанавливает «Открыть (только для чтения)» в качестве действия по умолчанию:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Excel.CSV\shell]
@="OpenReadOnly"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly]
@="Open (read-only)"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly\command]
@="\"C:\\Program Files\\Microsoft Office 15\\Root\\Office15\\EXCEL.EXE\" /dde"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly\ddeexec]
@="[open(\"%1\" /ou \"%u\",,1)]"

[HKEY_CLASSES_ROOT\Excel.CSV\shell\OpenReadOnly\ddeexec\topic]
@="system"

(Да, именно ,,1это делает файл доступным только для чтения. Как мало!)

EM0
источник
Просто чтобы уточнить: принятый метод больше не работает для Excel 2013? Что именно DDE? (еще не
погуглил
Он по-прежнему работает, если вы обновляете путь к Excel EXE, но стандартная команда «Открыть» для Excel 2013 использует DDE, поэтому я подумал, что лучше придерживаться этого, чтобы быть безопасным.
EM0
@nixda DDE - это старый способ межпроцессного взаимодействия, который все еще хорошо поддерживается несколькими частями MS Office.
Безымянный
3

Существует легкая программа от Microsoft, которая называется Microsoft Excel Viewer. (просто Google) Это не блокирует файлы при просмотре. Его можно установить, даже если присутствует полноразмерный Microsoft Excel.

К сожалению, я еще не нашел, как настроить окна для использования «Viewer» в качестве приложения по умолчанию для Excel (если только я не удалю полноразмерный Excel). Если бы я мог сделать это, у всех нас было бы очень аккуратное решение. Так кто-нибудь знает, как это сделать?

Тони Иствуд
источник
1
Я тоже не мог этого сделать. Никто не мог закрепить инструмент на панели задач. Но это все равно хорошее решение.
Алиса
2
Для потомков они пользуются поддержкой Excel Viewer за апрель 2018 года - тогда она все равно будет работать, но вы не сможете скачать ее или получить обновления после этого.
drzaus
Программа просмотра Excel была удалена в апреле 2018 года ( docs.microsoft.com/en-us/office/troubleshoot/excel/… ).
Брайан,