将byte 作为文件打开而不首先将其实际保存为文件

打开在数据库中存储为byte []的Word文件的最佳方法是什么?

我必须将一些文档存储在Access数据库中–Word文件,2003及更高版本 – 在严格用于CD的应用程序上。 不幸的是,他们必须在数据库中,不能存放在文件夹中。 我将它们存储为OLE对象,我可以将它们作为byte []进行读取和写入。

但是,我不知道在Word中重新打开这些文档的最佳方法。 现在我正在使用FileStream在某处重新创建文件,然后拍摄System.Diagnostics.Process.Start(filename)以使其打开。 这将在政府计算机上使用,有时可能会有一些时髦的安全规则,所以我不知道这是否是最好的方法。

是否可以打开以前存储为byte []的文件而不使用保存到硬盘驱动器的任何中间文件? 我知道他们至少会拥有Word 2003,所以我愿意使用Word互操作。

谢谢你的任何输入!

我怀疑你是否能够在内存中提供Word文件而不将其保存到至少RAMDisk或类似的东西。

为什么不使用系统临时文件夹或GetTempFile()方法在使用Word打开文件之前将字节数组写入文件,然后在完成后清理临时文件?

  string fullPathToATempFile = System.IO.Path.GetTempFileName(); // or string tempDirPath = System.IO.Path.GetTempPath();