手順tfrm1.button2click(sender:tobject);
var
jpeg:tjpegimage;
BMP:tbitmap;
mystm:tmemorystream;
strfilename、strcard:string;
始める
継承;
strfilename:= extractfilepath(application.exename);
dbedit12.datasource.dataset do
始める
videocap1.saveasdibでない場合
始める
showmessage( '写真が失敗した');
アボート;
終わり;//
bmp:= tbitmap.create;
試す
bmp.loadfromfile(strfilename+ 'capture.bmp');
mystm:= tmemorystream.create;
jpeg:= tjpegimage.create;
試す
jpeg.Assign(BMP);
jpeg.compress;
jpeg.savetofile(strfilename+'capture.jpg');
strfilename:= strfilename+'capture.jpg';
jpeg.loadfromfile(strfilename);
jpeg.savetostream(mystm);
mystm.position:= 0;
openQry(query1、 'count(1)をtb_photoからCNTとして選択(1)card_no =' '+strcard+' ''); //このカード番号があるかどうかを最初に調べます
OpenQry(pubqry、 'select * from tb_photo where card_no =' '+strcard+' '' '); //カード番号データテーブルを開きます
{openQryは、オープニングデータテーブルをカスタマイズする関数です
OpenQry(qry1:tquery、ssql:string);
始める
qry1を使用します
ビーン
アクティブな場合
近い;
sql.clear;
sql.add(ssql);
試す
開ける
キャッチ
e:例外は、errordialog(e.message、e.helpcontext)を実行します。
終了; //試してみてください
終わり;
終わり;
}
query1を使用します
始める
pubqry.fields [0] .sinteger //最初に、このカード番号が存在するかどうかを判断します。
編集
それ以外
入れる;
fieldbyname( 'card_no')。asstring:= strcard;
tblobfield(fieldbyname( 'photo'))。loadfromstream(mystm);
投稿; //統合
終了; // with
ついに
mystm.free;
jpeg.free;
終了してください
ついに
bmp.free;
終了; //試してみてください
終了; //で
終わり;
//最初にtvideocapコントロールをダウンロードしてください