- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果一个文件被另一个应用程序打开,然后我尝试通过 Silverlight SaveDialog 保存它,我可以用异常捕获错误,但在那之后我得到这个错误。
第 57 行错误:Silverlight 应用程序中未处理的错误代码:4004
分类:ManagedRuntimeError
消息:System.InvalidOperationException:此操作只能发生在 UI 线程上。 在 System.Windows.Hosting.NativeHost.VerifyThread() 在 System.Windows.SaveFileStream.Dispose( bool 处理) 在 System.IO.FileStream.Finalize()
我更愿意检测文件是否打开,但似乎无法做到这一点。我尝试了 fs.CanWrite,但它返回 true,即使该文件已被另一个应用程序打开。
编辑:Here是 silverlight 论坛上的一篇帖子,似乎解释了正在发生的事情,尽管他们认为这只是 Office 文件。我遇到了 PDF 文件的问题。
这是我的代码:
public void PDFSaveFile(bool success)
{
// silverlight requires saveFileDialog to be user-initiated,
// so this is called from the OK button of a pop-up window
// ignore success, we only gave an OK option
byte[] fileBytes = doc.ToPDF().ToArray();
PDFClose();
try
{
SaveFileDialog saveFileDlg = new SaveFileDialog();
saveFileDlg.Filter = "PDF files (*.pdf)|*.pdf";
bool? dialogResult = saveFileDlg.ShowDialog();
if (dialogResult == true)
{
using (var fs = saveFileDlg.OpenFile())
{
fs.Write(fileBytes, 0, fileBytes.Length);
fs.Close();
}
}
}
catch (Exception ex)
{
Log.HandleInternalError(string.Format("Unable to save file: {0}",ex.Message));
}
}
最佳答案
你可以使用文件信息.打开如果返回 IOException = File already opened
关于c# - 如何检测文件是否使用 C# 的 silverlight saveDialog 打开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7891023/
Windows 7上的Delphi 2007对saveDialog.Execute调用没有任何作用。我看到有几个人在几周前提到过这个问题,但是Borland c ++就是这样。 最佳答案 请参见emb
在使用 Delphi XE6 和 ReportBuilder ( link) 开发并部署在 Windows 7 计算机上的应用程序中,在屏幕上显示 ReportBuilder 报告后,用户可以选择将其
是否有直接的方法从过滤器中提取扩展名以便始终添加扩展名(如 Word 和记事本)。即使 AddExtension = true,带有句点的文件名也不会获得扩展名,例如,my.file 不会另存为 my
我对后台工作人员控制非常陌生。我有一个构建文件的现有项目,但在整个项目中构建文件时出现死锁错误。我试图通过创建另一个仅由后台工作人员组成的项目来解决这个问题。然后我将合并它们。 我的问题是我不知道在哪
我正在做一个学校项目,但我无法找出最后一个错误。它应该在第一个 if 语句返回 false 时打开一个 saveFileDialog。但是它没有继续进入 else 语句,而是直接抛出异常并且从不打开
如果一个文件被另一个应用程序打开,然后我尝试通过 Silverlight SaveDialog 保存它,我可以用异常捕获错误,但在那之后我得到这个错误。 第 57 行错误:Silverlight 应用
我创建了一个(Delphi XE2)Firemonkey 示例程序,其中包含一个 TButton 和一个带有两个不同过滤器的 TSavedialog。(TSaveDialog组件支持Win32/Win
我是一名优秀的程序员,十分优秀!