溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

房產(chǎn)交易評估基準(zhǔn)價(jià)格比對-Delphi外掛方式獲取并修改其他程序輸入框信息

發(fā)布時(shí)間:2020-07-11 19:41:14 來源:網(wǎng)絡(luò) 閱讀:589 作者:coolingxyz 欄目:開發(fā)技術(shù)

2009年,×××交易契稅實(shí)行新的政策,在系統(tǒng)錄入的時(shí)候,需要實(shí)現(xiàn)交易價(jià)格和基準(zhǔn)交易價(jià)格進(jìn)行比對。但契稅軟件是VB程序開發(fā)的,已經(jīng)很久沒有更新,也沒有源代碼。要實(shí)現(xiàn)該功能,只能通過外掛的方式實(shí)現(xiàn)。

主要思路是用hook原系統(tǒng)的錄入界面,當(dāng)輸入交易價(jià)格的時(shí)候,通過熱鍵呼叫外掛軟件,進(jìn)行基準(zhǔn)價(jià)格比對。比對過程需要讀取原系統(tǒng)界面上的錄入信息,并根據(jù)這些信息,如房屋朝向、樓層、建造年份、區(qū)域等綜合因素查詢事先錄入數(shù)據(jù)庫的基準(zhǔn)價(jià)格,比對計(jì)算。大于等于基準(zhǔn)價(jià)格的保留原價(jià)格,小于基準(zhǔn)價(jià)格的,把外掛查詢的總價(jià)發(fā)送到原系統(tǒng)錄入界面的相應(yīng)控件。

房產(chǎn)交易評估基準(zhǔn)價(jià)格比對-Delphi外掛方式獲取并修改其他程序輸入框信息

主要程序代碼如下:

房產(chǎn)交易評估基準(zhǔn)價(jià)格比對-Delphi外掛方式獲取并修改其他程序輸入框信息

procedure TFrmMain.tm1Timer(Sender: TObject);

var

hts, hw: LongInt;

lsh: string;

buffer:array[0..255] of char;

begin

//cooling qq:21156410 http://xu-laoshi.cn

//判斷

hw := FindWindow(nil, '契稅納稅申報(bào)');

hts := FindWindow(nil ,'提示');

if (hw <> 0) then

begin

if hts <> 0 then

begin

//取流水號(hào)

ClearList1;

EnumChildWindows(hts, @EnumChildWndProc1, 0);

SendMessage(LongInt(List1.Items[n_lsh]^), WM_GETTEXT, 255, longint(@buffer));

lsh := buffer;

lsh := Copy(lsh, 9, 15);

savexz(lsh);

end;

end else

begin

tm1.Enabled := false;

if self.Visible then self.Visible := false;

end;

end;

房產(chǎn)交易評估基準(zhǔn)價(jià)格比對-Delphi外掛方式獲取并修改其他程序輸入框信息


procedure TFrmMain.btQdClick(Sender: TObject);

var

buffer:array[0..255] of char;

pgj, cjj: real;

pgjstr, cjjstr: String;

begin

//發(fā)送到vb程序

SendMessage(LongInt(List.Items[c_cjj]^), WM_GETTEXT, 255, longint(@buffer));

try

cjjstr := buffer;

if cjjstr = '' then cjjstr := '0';

cjj := strToFloat(cjjStr);

pgjstr := edZj.Text;

if pgjstr = '' then pgjstr := '0';

pgj := strToFloat(pgjstr);

if cjj > pgj then

begin

pgj := cjj;

end;

except

exit;

end;

pgjstr := Format('%.2f', [pgj]);

SendMessage(LongInt(List.Items[c_pgj]^), WM_SETTEXT, 0, longint(pgjstr));

Self.Visible := false;

tm1.Enabled := true;

end;


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI