請教有關使用請教有關DBRichEdit+Query |
答題得分者是:hagar
|
rookie
一般會員 發表:26 回覆:38 積分:12 註冊:2003-04-23 發送簡訊給我 |
請問DBRichEdit中,
如何從Query load 到DataField之前呼叫一個解密的function然後再Show 到DBRichEdit中
======================================================
DBRichEdit1.DataField:='';
QUERY6.SQL.Clear;
QUERY6.SQL.Add('SELECT * FROM V_FILE');
QUery6.CLOSE;
QUery6.OPEN;
這個Function 不知道如何加進去
ST,DEST :TFileStream;
EncryptAESStreamECB(ST, 0, Key,DEST);
DBRichEdit1.DataField:='DOC_FILE'; 可否請網友指導一下,謝謝!
|
rookie
一般會員 發表:26 回覆:38 積分:12 註冊:2003-04-23 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
在 Query6 的 AfterScroll 事件中做解密的動作
解密完畢, 再載入至 DBRichEdit 中
procedure TForm1.Query6AfterScroll(DataSet: TDataSet); var ST: TBlobStream; DEST: TStream; begin ST := TBlobStream.Create(Query6.FieldByName('Doc_File') as TBlobField, bmRead); DEST := TStream.Create; // 這裏做解密的動作 EncryptAESStreamECB(ST, 0, Key, DEST); try DBRichEdit1.Lines.LoadFromStream(DEST); finally DEST.Free; ST.Free; end; end;--- --<-<-<@ |
rookie
一般會員 發表:26 回覆:38 積分:12 註冊:2003-04-23 發送簡訊給我 |
謝謝版主救了我的小命 ST: TBlobStream;
DEST: TStream;
SIZE : Integer;
begin
ST := TBlobStream.Create(Query6.FieldByName('Doc_File') as TBlobField, bmRead);
SIZE:=ST.size;
DEST := TStream.Create;
這裡怪怪的,好像DEST寫不進去 一定要開FILE 才行嗎?
Dest := TFileStream.Create('c:\temp.AES', fmCreate); St.ReadBuffer(Size, SizeOf(Size));
DecryptAESStreamECB(ST, St.Size - St.Position, Key, DEST);
try
DBRichEdit1.Lines.LoadFromStream(DEST);
finally
DEST.Free;
ST.Free;
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
rookie
一般會員 發表:26 回覆:38 積分:12 註冊:2003-04-23 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
rookie
一般會員 發表:26 回覆:38 積分:12 註冊:2003-04-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |