Silverlightfile upload – 文件正在被另一个进程使用(Excel,Word)

所有。 我在Silverlight应用程序中上传文件时遇到问题。 这是一个代码示例。 如果在其他应用程序(例如excel或word)中打开此文件,则无法打开它,否则工作正常。 我使用OpenFileDialog来select文件并将其传递给此函数。

  private byte[] GetFileContent(FileInfo file) { var result = new byte[] {}; try { using (var fs = file.OpenRead()) { result = new byte[file.Length]; fs.Read(result, 0, (int)file.Length); } } catch (Exception e) { // File is in use } return result; } 

有什么办法可以访问这个文件,或者我应该只是通知用户该文件被locking?

您应该通知用户该文件当前正在被另一个程序使用。 如果另一个程序的文件打开的锁确实允许共享读取,则无法绕过此锁。