PDA

View Full Version : برنامه ای شبیه به direct type



mossaferin
یک شنبه 13 بهمن 1387, 16:11 عصر
سلام

کی میدونه چه جوری میشه یه برنامه شبیه direct type مریم نوشت

این برنامه اینطوری کار میکنه که بعد از اجرا به صورت مینیمایز و مخفی در می آید و در صورت زده شدن کلید f11 با کد پیج مشخص (فارسی ) درون برنامه فعال تایپ می شود.

البته این نمونه کد که مخصوص فرستادن یه رشته به یه برنامه دیگه می باشد رو توی سایت about پیدا کردم ، ولی نمی دونم چه جوری میشه جلوی تایپ شدن حروف انگلیسی در زمان تایپ فارسی رو گرفت
یعنی وقتی برنامه فعال شد بجای اینکه برنامه فعال از کیبرد ورودی بگیرد ، از این برنامه ورودی بگیرد



procedure TForm1.Button1Click(Sender: TObject);
var
wnd: HWND;
i: Integer;
s: string;
begin
wnd := FindWindow('notepad', nil);
if wnd <> 0 then
begin
wnd := FindWindowEx(wnd, 0, 'Edit', nil);

// Write Text in Notepad.
// Text ins Notepad schreiben.
s := 'Hello';
for i := 1 to Length(s) do
SendMessage(wnd, WM_CHAR, Word(s[i]), 0);
// Simulate Return Key.
PostMessage(wnd, WM_KEYDOWN, VK_RETURN, 0);
// Simulate Space.
PostMessage(wnd, WM_KEYDOWN, VK_SPACE, 0);
end;
end;
این کد برای Notepad است که میشه برای برنامه های دیگه هم گسترش داد

mossaferin
دوشنبه 14 بهمن 1387, 17:40 عصر
از هر گونه راهنمایی نیز تشکر می شود