PDA

View Full Version : انتقال کارکترهای تولیدی توسط برنامه چک سام بانک ملی به برنامه حقوق



khoshblagh
یک شنبه 27 آذر 1390, 13:21 عصر
با سلام خدمت دوستان
در زمان تهیه فایل پرداخت حقوق مربوط به بانک ملی برنامه ای به نام check sum اجرا میشود که خروجی آن یک رشته کارکتری میباشد. حالا میخواهم این رشته تولیدی را به درون برنامه حقوق واکشی و استفاده نمایم.توضیح اینکه برنامه بانک ملی را از درون برنامه حقوق اجرا مینمایم. ولی نمیدانم چگونه رشته تولیدی را به درون ادیت باکس فرم مورد نظر انتقال دهم. احتمالا دوستان هوک نمودن را پیشنهاد میدهند. در این صورت من تجربه ای در این مورد ندارم. لذا درخواست ارائه قطعه کد نمونه که بتواند این کار را انجام دهد مینمایم. با تشکر

Felony
دوشنبه 28 آذر 1390, 19:18 عصر
Hook ؟ چی رو میخواین Hook کنید ؟!
در مورد SendMessage و PostMessage و WM_GetText تحقیق کنید , خودم چندین بار نمونه های مختلفی برای این کار تو این انجمن قرار دادم .

khoshblagh
سه شنبه 29 آذر 1390, 07:10 صبح
جناب تاجیک با سلام
همانطور که عرض کردم میخواهم یک رشته تولیدی به وسیله یک برنامه دیگر را به یک ادیت باکس در برنامه خودم منتقل نمایم. حالا به نظرم رسید که احتمالا این کار از طریق هوک انجام میگیرد. اگر نظرم در این باره غلط است لطف نمائید و طریق صحیح این کار را توضیح دهید. متشکرم

Felony
سه شنبه 29 آذر 1390, 10:00 صبح
میشه تابعی به صورت زیر نوشت :

function GetText(Wnd: THandle): string;
var
TextLen: Integer;
Text: PChar;
begin
TextLen := SendMessage(Wnd, WM_GETTEXTLENGTH, 0, 0);
if TextLen = 0 then
Exit('')
else
begin
SendMessage(Wnd, WM_GETTEXT, TextLen + 1, Integer(Text));
Result := Text;
end;
end;