如何从Windows资源管理器中以只读方式打开文件?


10

是否有一种简单的方法可以从Windows资源管理器中以只读方式打开文件?

我的中间兴趣是在Microsoft Access文件中。我正在对旧的MS Access数据库进行完整性检查,我发现打开它们时它们的日期会自动更新。我不喜欢这样,因为看起来今天所有旧文件都已被修改。

我正在使用Windows XP。

更新:正如尤达所说,

不,不要尝试。做...还是不做。没有尝试。

就我而言,这是“不”。我最终将整个(大)文件夹树复制到MyDocuments,然后从那里打开所有数据库。


2
您是否有理由不能简单地将只读标志添加到文件中?右键单击,选择“属性”,然后选中“只读”框。
音乐2

@ music2myear现在(2年后;)我认为您是对的,这是正确的方法。
Daniel Daranas 2011年

Answers:


7

  • 打开Windows资源管理器。
  • 从视图菜单中选择文件夹选项。(在某些Windows版本中,从“视图”菜单中选择“选项”,或从“工具”菜单中选择“文件夹选项”。)Windows显示“文件夹选项”(或仅显示普通选项)对话框。
  • 确保已选择“文件类型”选项卡。(单击此处查看相关图。)在已注册文件类型列表中,找到并选择Microsoft Word文档。单击编辑按钮。Windows将显示“编辑文件类型”对话框。(单击此处查看相关图。)
  • 在“操作”列表中选择“打开”选项。
  • 单击高级。出现“编辑文件类型”对话框。
  • 单击“动作”字段中的“打开”。
  • 单击编辑。出现“编辑动作”对话框。
  • 选择“用于执行操作的应用程序”框的内容。(单击此处查看相关图。)
  • 按CTRL + C。这将复制“用于执行操作的应用程序”框的内容。
  • 单击取消。
  • 单击新建按钮。Windows将显示“新建操作”对话框。
  • 在“操作”框中,输入要显示在快捷菜单中的名称。例如,您可以键入Open Read-Only。
  • 将插入点放在“用于执行操作的应用程序”框中,然后按CTRL + V。您在步骤8中复制的信息将粘贴到框中。
  • 选择使用DDE复选框。“新建操作”对话框将展开。
  • 在“ DDE消息”框中,输入以下文本:[FileOpen(“”“”%1“”“),. ReadOnly]
  • 在“应用程序”框中,输入以下单词:WinWord。
  • 在“主题”框中,输入以下单词:System。
  • 根据需要单击“关闭”或“确定”以关闭所有对话框。


  • 感谢您的答复。我尝试使用它,将WinWord更改为MsAccess。右键单击该文件并选择我的新操作“以只读方式打开”后,将显示此消息:Microsoft Office Access找不到宏'FileOpen(“”“ K:\ MyLongishPath ...该消息实际上已被修剪。
    丹尼尔·达拉斯

    4
    这不属于“简单方法”。
    暗影巫师为您耳边

    24

    我在Windows 7上遇到了相同的问题。上述答案不适用于W7,因为文件关联的界面已更改。好消息是,“以只读方式打开”现在是一个更简单的过程。

    Shift + 右键单击 ->以只读方式打开


    4
    这不能解决问题,但是我使用了右键单击,以只读方式打开,msword仍然打开文件,通常是:(
    Luke

    12
    仅供参考,对于那些通过Google到达这里的用户,请右击并在“受保护的视图中打开”。以只读方式打开似乎无济于事。已在Windows 7 / Office 2010中测试
    Andrew Grothe

    1
    我尝试在Office 2016中将Excel文件作为“只读”打开,它让我进行了更改并保存...糟糕。“保护视图”按预期工作。
    杰夫B

    4

    如果要在Office程序中打开文件,另一个选择是遵循MS的说明

    • 打开您需要的Office程序
    • 单击Office按钮,然后打开
    • 浏览到要打开的文件并选择它
    • 在底部的“打开”按钮上,单击箭头,然后选择“以只读方式打开”

    我用Excel尝试过,它实际上以只读方式打开了文件。

    使用Shift +右键单击时,资源管理器中的“以只读方式打开”选项似乎无效。我没有看到“在受保护的视图中打开”选项。

    我将文件以只读方式打开的全部原因是,让其他人可以在我打开文件时对其进行编辑,因此将文件设置为只读是行不通的。

    我也不想经过18个步骤来添加操作或编辑注册表(甚至不确定是否允许我工作)。

    我知道从技术上讲,这并不是从Windows资源管理器打开的,但是很多人(像我一样)从Google来到这里,并希望在Office程序中打开某些内容。


    3

    在程序中找到了只读选项,执行了以下操作,但是显然做错了。如果可以纠正,请告诉我。

    在Windows XP中,Explorer 8中-请选择工具 - 文件夹选项 - 文件类型选项卡 -请选择Microsoft Word文档 -Clicked上的高级[编辑文件类型对话框想出] -在操作框中选择开放为只读 -Clicked OK -Clicked 编辑

    • 标题为“ 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)
    

    单击显示帮助

    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 \ command
    • 导入以下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
    James

    @James链接已断开...另外,针对此问题的其他答案的不足,似乎也发布了此答案
    杰夫·B

    1

    我同意music2myear,除非有其他用户禁止这样,否则正确且最简单的方法是:

    • 右键点击文件夹
    • 去属性
    • 选择只读
    • 应用于所有子文件夹。

    -1

    我的问题是shift +右键单击“以只读方式打开”选项不起作用。
    我在这里尝试了Windows 7的注册表编辑解决方案:
    https : //answers.microsoft.com/zh-cn/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命令行开关以只读方式(在sharepoint中)打开Word文档,但是对于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中的该键。

    By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
    Licensed under cc by-sa 3.0 with attribution required.