2011-11-21 88 views
1

我们可以假定用户正在处理Ms Word文件。使用mssql blob文件保存doc文件的版本

用户选择文件后,软件需要存储它。 这很简单,用Delphi blob和MsSql映像。

现在让我们说用户想要编辑文件, 你能提出一个简单的解决方案,它将打开Ms Word中的文件,允许编辑,然后将更改保存到图像?

如果旧版本可以保存,比如svn会更好。

您可以建议的任何组件?

回答

3
  1. 复制BLOB出到一个临时文件:
  2. C:\ Documents和Settings \\本地设置的\ Temp \ 2011112_1115112.doc

    无论窗口要你存储这个用户的临时文件。

  3. 在该文件上启动WinWord,
  4. 等待程序完成。
  5. 完成后,将其复制回来。

对于多用户的情况,您需要独占访问权限。 WinWord通常会在您共享文件时指出这一点。但在这种情况下,您必须对其进行模拟,也许可以使用表行中的字段来保留/释放文档以进行读/写访问。

+0

程序如何知道程序(word)已经完成? – none

+0

请看这里[如何告诉当一个外部应用程序结束于delphi](http://stackoverflow.com/questions/2102890/how-to-tell-when-an-external-application -ends合的Delphi) –