【发布时间】:2015-10-27 00:15:39
【问题描述】:
我编写了一个 winform 应用程序并使用 Inno Setup 创建了一个安装程序,以便与它关联一个自定义文件扩展名。
应用程序已设置好,如果双击关联的文件类型,应用程序会自动打开并加载文件。如果从桌面或文件资源管理器双击文件,这可以正常工作。
但是,我们在尝试从 Outlook 中打开文件附件时发现了一个问题。正在生成此错误:
System.UnauthorizedAccessException
我在我的应用程序中发现了错误并检查了提供给程序的文件路径。它在文件系统中不存在(当我尝试浏览它时)。
C:\User\MyUserName\AppData\Local\Microsoft\Windows\INetCache\Content.Outlook\MXIIIP00\MyFilename.CustomExtension
...\Microsoft\Windows\ 之后的部分不存在(据我所知)。
有其他人遇到过这个问题并知道如何解决吗?
更新:
如果我打开一个 dos 提示 - 我实际上可以到达这个位置,即使它没有显示在 Windows 资源管理器中。
更新 2:
如果我将路径直接复制到 Windows 资源管理器中,我也可以在此处看到文件。但是,如果我从这里双击文件 - 我的应用程序仍然无法加载文件。
更新 3:
Outlook 保存的文件(以及我的应用程序正在尝试打开的文件)似乎是空的。这可以解释为什么我的应用程序无法处理它。当我发送文件时,Outlook 似乎正在对文件执行某些操作。当我发送它时它开始为 72KB,但当我收到它时 - 它是 252B。
【问题讨论】:
标签: c# winforms outlook attachment