Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome 从Chrome下载MHT文件_Google Chrome_Mhtml - Fatal编程技术网

Google chrome 从Chrome下载MHT文件

Google chrome 从Chrome下载MHT文件,google-chrome,mhtml,Google Chrome,Mhtml,我们的SaaS web应用程序使用MHT文件作为用户创建的模板 最近,Chrome开始阻止下载,显示以下消息: 这显然吓坏了用户,需要一些笨拙的步骤来解决,即使是对一个精通技术的人来说也是如此 IE 11和Firefox 39对该文件没有任何问题 有没有比重写应用程序以停止使用MHT文件更容易防止此问题的方法?不幸的是,我找到的唯一解决方案是打开chrome://settings,单击“高级设置”,在“隐私”下,取消选择“保护您和您的设备免受危险站点的攻击”有一个解决方法,但它比它应该做的更多

我们的SaaS web应用程序使用MHT文件作为用户创建的模板

最近,Chrome开始阻止下载,显示以下消息:

这显然吓坏了用户,需要一些笨拙的步骤来解决,即使是对一个精通技术的人来说也是如此

IE 11和Firefox 39对该文件没有任何问题


有没有比重写应用程序以停止使用MHT文件更容易防止此问题的方法?

不幸的是,我找到的唯一解决方案是打开chrome://settings,单击“高级设置”,在“隐私”下,取消选择“保护您和您的设备免受危险站点的攻击”

有一个解决方法,但它比它应该做的更多:

当您看到上面问题中显示的下载栏时,请单击最右侧的显示
显示所有下载内容的位置

在被阻止的文件上,单击
恢复恶意文件
,然后在文件夹中显示
。现在,您可以在下载文件夹中查看该文件。有点费劲,但肯定有用

感谢Lifehacker的评论:


(编辑#2)

我发现了一种变通方法,允许您在新的Chrome选项卡中从web打开.mht链接:

  • 安装
  • 右键单击Chrome工具栏中的IE选项卡图标,然后选择“IE选项卡选项”->“选项”
  • 为“启用自动URL”选项启用(单击复选框)
  • 要允许在Chrome中单击时自动下载.mht文件,请在IE选项卡设置的“自动URL”部分添加您能找到的最具体的URL。例如,“*.mht”
  • 关闭IE选项卡选项页面
  • 如果希望它们在Chrome选项卡中自动打开,则还需要执行以下步骤:

  • 将.mht文件下载到本地磁盘
  • 右键单击它并选择“打开方式”
  • 启用(选中该框)选项,显示“始终使用此应用程序打开.mht文件”
  • 选择chrome.exe,或使用“选择另一个应用程序”选项并导航到“C:\Program Files(x86)\Google\chrome\Application\chrome.exe”(或电脑上安装chrome的任何位置)
  • 返回IE选项卡选项页面,添加您可以找到的最具体的本地磁盘URL,该URL与您单击IE选项卡下载.mht文件的位置相匹配。例如,”file:///C:/Users/your_name/AppData/Local/Microsoft/Windows/INetCache/*.mht“
  • 关闭IE选项卡选项页面
  • 此时,当您单击与在步骤(5)中设置的通配符匹配的.mht URL时,您应该会看到在chrome中打开一个选项卡,一个对话框将询问您是否要打开该文件。单击“打开”,文件将在Chrome中打开,使用Chrome选项卡中运行的嵌入式IE实例


    这只适用于Windows PC(因为它允许IE实例在Chrome网页内运行),但这已经足够满足我的要求了。

    解决方法是使用
    doc
    扩展名而不是
    mht
    ,即使该文件实际上是
    mht
    。Word将自动打开它,并默认以相同的格式保存。

    不幸的是:1)这将是一个糟糕的主意,因为实际上有很多危险的文件。2) SaaS,而不是企业。我们无法告诉世界各地的一千名用户更改浏览器设置以使用我们的应用程序。从87.0.4280.88版开始,禁用eml或mht文件扩展名不会影响此行为。这对我们来说也是一个非常现实和不可接受的问题。FWIW,我知道我的一些mht文件包括一些对Outlook扩展(如WebEx)的调用。起初,我认为它阻止了这些,因为它将它们视为“可执行文件”,但它肯定是我所有的mht文件,甚至只是纯文本和图像。我创建了一个扩展名为
    .mht
    的空文件,chrome不允许我下载。它们确实有一个API
    chrome.pageCapture.saveAsMHTML
    来捕获页面。而且他们根本不允许您使用正确的扩展名保存捕获的页面。太悲哀了。我知道这是一个老问题,但对于任何其他在Outlook
    .mht
    解决方案中发现此问题的人,请尝试使用
    .eml
    扩展,而不是对我们的案例没有用处的扩展。我知道怎么做(我大概花了一分钟才弄明白),但我不能指望最终用户在正常的应用程序使用中这样做。我目前正在重写该模块以使用DOCX文件。这并不能解决问题,这不是关于我下载MHT文件,而是关于我的SaaS用户。是的,不幸的是,它不能解决应用程序级别的问题。但在谷歌允许Chrome将URL列入白名单之前,这可能是你的客户可以利用的最佳解决办法。它甚至可能是他们的It部门可以自动部署的东西。SaaS意味着软件即服务。这里没有IT部门——来自世界各地不同组织的应用程序用户可以在任何平台上使用任何受支持的浏览器。白名单也不起作用。我熟悉这个缩写词;我开发了这个变通方法,用于我们组织使用的SaaS产品。很抱歉,对于您的产品来说,这不是一个可行的解决方案,但希望它对其他人有用。