السلام عليكم ورحمة الله:
كنت قد وجدت كود فيجول لتعريب الرسائل وقمت بتحويله لدلفى فتوصلت للكود التالى.
procedure TForm1.Button1Click(Sender: TObject);
Const
mb_ok = 1;
mb_CANCEL = 2;
mb_YES = 3;
mb_NO = 4;
mb_ABORT = 5;
mb_RETRY = 6;
mb_IGNORE = 7;
WH_CBT = 5;
GWL_HINSTANCE = (-6);
HCBT_ACTIVATE = 5;
var
m_hHook:hHook;
Procedure MessageBoxH(hwndThreadOwner :integer);
var hInstance,hThreadId: THandle;
Function MsgBoxHookProc(uMsg :integer; wParam: integer; lParam: Longint): Longint; export;
begin
If uMsg = HCBT_ACTIVATE Then
begin
SetDlgItemText(wParam, mb_OK, 'موافق');
SetDlgItemText(wParam, mb_CANCEL, 'إلغاء الأمر');
SetDlgItemText(wParam, mb_ABORT, 'إحباط');
SetDlgItemText(wParam, mb_RETRY, 'إعادة المحاولة');
SetDlgItemText(wParam, mb_IGNORE, 'تجاهل');
SetDlgItemText(wParam, mb_YES, 'نعم');
SetDlgItemText(wParam, mb_NO, 'لا');
// UnhookWindowsHookEx(m_hHook)
end;
End;
Begin
hInstance := GetWindowLong(hwndThreadOwner, GWL_HINSTANCE);
hThreadId := GetCurrentThreadId();
m_hHook := SetWindowsHookEx(WH_CBT, @MsgBoxHookProc, hInstance, hThreadId);
end;
begin
MessageBoxH(Application.Handle);
MessageBox(0,'هذه تجربة'+^J+'إبراهيم دياب','العنوان',mb_ok);
end;
ولكنه للأسف لم يعمل / فالرجاء المساعدة أو لو أن لديكم طريقة لتعريب الرسائل سواء فى الإتجاه أو أسماء الزراير.
وشكراً