我有一个链接到Excel2007工作表的网页。它是一个.xls
文件,而不是.xlsx
文件。当我点击链接时,我会看到通常的对话框,打开/保存Excel文件。单击“打开”时,我收到以下警告消息-
您正在尝试打开的文件,'filename.xls‘的格式与文件扩展名指定的格式不同。在打开该文件之前,请确认该文件未损坏且来源可信。是否要立即打开该文件?
我是否可以通过编程方式隐藏此警告消息(即隐藏或阻止其显示?)我正在使用ColdFusion进行web开发。
发布于 2009-06-02 15:24:02
此问题是由扩展硬化功能导致的,您可以在here中找到有关该功能的更多信息
我在我的项目中经常遇到这个问题,就像Jon所说的,关闭扩展硬化是每个客户端用户必须完成的事情。
不幸的是,上面的链接还指出,至少在Office 14之前,不会对此代码进行预期的更改。
发布于 2009-06-02 15:05:59
如果您不想寻找解决方案,而只是想解决问题,请在您的注册表中插入此键以禁止通知:
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security“ExtensionHardening”=dword:00000000
您可以通过执行以下操作来完成上述操作:
发布于 2013-12-19 01:08:32
对于旧的Excel格式(.xls)
假设您使用以下语法创建电子表格对象:
<cfset sheet = SpreadsheetNew() />
您可以使用下面的代码来创建下载:
<cfheader name="content-disposition" value="attachment;filename=my_spreadsheet.xls">
<cfcontent type="application/vnd.ms-excel" variable="#spreadsheetReadBinary(sheet)#" reset="true">
对于较新的Excel格式(.xlsx)
使用以下语法创建电子表格对象:
<cfset sheet = SpreadsheetNew("", "true") />
并使用此命令创建下载:
<cfheader name="content-disposition" value="attachment;filename=my_xml_spreadsheet.xlsx">
<cfcontent type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" variable="#spreadsheetReadBinary(sheet)#" reset="true">
多亏了Raymond Camden (他的示例是用旧的格式创建电子表格--我更新了新的格式并使用稍有不同的MIME值)。
https://stackoverflow.com/questions/940045
复制相似问题