急!如何在DELPHI的数据库中控制WORD 2000?(200分)

  • 主题发起人 主题发起人 wangny
  • 开始时间 开始时间
W

wangny

Unregistered / Unconfirmed
GUEST, unregistred user!
问题如下:我用DELPHI编了一个数据库程序(基于PARADOX7),现要求库中有一字段,用来存放WORD2000格式的文件,
当在DBGRID中双击该字段时,要求程序自动调出WORD 2000来打开文件,并且可以在WORD 2000中对调出的文件进行修改后按WORD 2000
中的保存按钮把该文件保存回数据库中?

我是用DELPHI 4.0,不知解决这个问题在DELPHI 5.0 或是DELPHI 6.0 中是否能很容量的解决?或者说有免费的控件可使用?

望能帮我的前辈可给出详细的例程。谢谢!
 
將WORD文件以文件流的格式存入到數據庫中。讀出時﹐先還原成WORD文件﹐再用WORD來打開
即可。
 
可用IP2000控件包![^]
 
DELOHI自带了一个OLE的演示程序,你看看吧:
C:/Program Files/Borland/Delphi5/Demos/Activex下
 
楼上的,你会意错了,
Ip2000我没有用过,能否简单的说一下,
我对这个问题会追加200分--如果回答对我有用。
 
我刚写的,不过我用的是sql server2000
procedure Tfrm_sfxm.DBGrid2DblClick(Sender: TObject);
var
filename, confirmconversions, readonly, addtorecentfiles,
passworddocument, passwordtemplate, revert,
writepassworddocument, writepasswordtemplate, format: olevariant;
begin

if uppercase(tblxmxgwj.FieldByName('ext').asstring)='.DOC' then
begin
tblxmxgwjword.SaveToFile(ExtractFilePath(Application.EXEName)+'tmp.doc');
file_name:=opendlg_word.FileName;
ext:=extractfileext(file_name);
wrdapp.Connect;
filename:=ExtractFilePath(Application.EXEName)+'tmp.doc';
confirmconversions := false;
readonly := false;
addtorecentfiles := false;
passworddocument := '';
passwordtemplate := '';
revert := true;
writepassworddocument := '';
writepasswordtemplate := '';
format := wdopenformatdocument;
wrdapp.documents.open( filename, confirmconversions,readonly,
addtorecentfiles, passworddocument, passwordtemplate,
revert, writepassworddocument, writepasswordtemplate, format );

wrdapp.Visible:=true;
wrdapp.Disconnect;
end;
end;

 
我刚在其他地方找了一个贴子
感谢 terry_lzs!!!


来自:terry_lzs, 时间:2001-6-20 10:29:00, ID:574105
procedure TForm1.Button1Click(Sender: TObject);
var str:Tmemorystream;
begin
str:=Tmemorystream.Create;
str.LoadFromFile('f:/page.pas');//这里就是把文件读入到流中了
str.Position:=0;
adoquery1.Append;
Tblobfield(adoquery1.FieldByName('tt')).loadfromstream(str);//将流中内容存到数据库
try
adoquery1.Post;
finally
str.Free;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var str:Tmemorystream;
begin
str:=Tmemorystream.Create;
str.Position:=0;
Tblobfield(adoquery1.FieldByName('tt')).savetostream(str);//数据库中内容读到流中
str.SaveToFile('F:/gg.txt');//流中的数据恢复成文件形式
str.Free;
end;

 
后退
顶部