السلام عليكم
احتاج مساعده في تحويل كود من لغة delphi إلي C#
كود الدولفي ..
var
winhandle : Thandle;
begin
winhandle := findwindow(nil,' Name active window ');
setforegroundwindow(winhandle);
sleep(300);
begin
keybd_event(vkkeyscan('8'), MapVirtualKey(vkkeyscan('8'), 0), 0, 0);
sleep(30);
keybd_event(vkkeyscan('8'), MapVirtualKey(vkkeyscan('8'), 0), KEYEVENTF_KEYUP, 0);
end;
end;محاولتي في تحويل الكود ..
C#
using System.Runtime.InteropServices; using System.Threading;
[DllImport("user32.dll")]
static extern void keybd_event(byte bVk, byte bScan, uint dwFlags,
int dwExtraInfo);
[DllImportAttribute("User32.dll")]
private static extern int FindWindow(String ClassName, String WindowName);
[DllImportAttribute("User32.dll")]
private static extern IntPtr SetForegroundWindow(int hWnd);int hWnd = FindWindow(null, " Name active window ");
SetForegroundWindow(hWnd);
Thread.Sleep(300);
keybd_event(0x38, 0x38, 0, 0);
Thread.Sleep(30);
keybd_event(0x38, 0x38, 0, 0);الكود باختصار يقوم بالضغط علي key 8 في تطبيق direct X
مع العلم كود الدولفي يعمل بدون مشكله
اما السي شارب فيقوم بالضغط علي key 8 ولكن ليس داخل تطبيق direct x >>
فهل هنالك خطأ في تحويلي للكود ؟ او ربما ينقصني شئ ؟
رجااااء المساعده في اقرب وقت
وجزاكم الله خيرا ..