نمایش نتایج 1 تا 10 از 10

نام تاپیک: زدن اتوماتیک دکمه ای از کیبورد

  1. #1

    زدن اتوماتیک دکمه ای از کیبورد

    با سلام
    من میخوام یه برنامه بنویسم که سر یه زمان خاص دکمه Pause روی کیبورد رو واسه توقف موزیک در حال پخش بزنه.
    کسی میدونه چجوری میشه این کار رو کرد؟!!
    کار اصلی اینه که موزیک در حال پخش از پلیر رو متوقف کنه.

    از اساتید محترم ممنون میشم راهنمایی کنید.

  2. #2
    کاربر دائمی آواتار mehdy.programmer
    تاریخ عضویت
    خرداد 1391
    محل زندگی
    from Sanandaj lives in Tehran
    سن
    28
    پست
    254

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    دوست عزیز راستشو بخوای منم کنجکاو کردی!
    برای کلید های دیگه روی کیبرد می تونی از این کد استفاده کنی:

    SendKeys.Send("{keycode}");

    که می تونی keyCode ها رو هم از اینجا بگیری
    ولی keycode ی برای MediaPlayPause وجود نداره!
    اگه راهی برای اونم پیدا کردم بهت می گم!

  3. #3

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    اول باید هندل برنامه مدنظرتو پیدا کنی.
    بعد برنامه رو فوکاس میکنی.
    در آخر همانطور که آقا مهدی گفته کلیدهایی که مدنظرته به برنامه میفرستی.(که برای کار شما Ctrl+p هستش)

  4. #4

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    اینم یک نمونه برای درک بهتر. که مقادیر 125*8= رو به ماشین حساب میفرسته.
    موفق باشید.

    using System.Runtime.InteropServices;



    namespace test
    {
    public partial class frmSendKey : Form
    {
    public frmSendKey()
    {
    InitializeComponent();
    }

    // دریافت هندل برنامه
    [DllImport("USER32.DLL", CharSet = CharSet.Unicode)]
    public static extern IntPtr FindWindow(string ClassName,string WindowName);

    // فعال کردن (انتقال فوکاس) به برنامه
    [DllImport("USER32.DLL")]
    public static extern bool SetForegroundWindow(IntPtr hndl);

    // مثال: به دست آوردن هندل برنامه ماشین حساب
    // برای اشاره به پوینتر و هندل به کار میره IntPtr متغیرهای نوع
    IntPtr myHandle = FindWindow(null, "Calculator");

    private void button1_Click(object sender, EventArgs e)
    {
    // چک کردن اینکه ماشین حساب درحال اجرا باشد
    if (myHandle == IntPtr.Zero)
    {
    MessageBox.Show("برنامه ماشین حساب در حال اجرا نیست نیست");
    return;
    }

    SetForegroundWindow(myHandle);
    SendKeys.SendWait("125");
    SendKeys.SendWait("*");
    SendKeys.SendWait("8");
    SendKeys.SendWait("=");
    }
    }
    }


  5. #5

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    عالی بود mamiz جان
    خیلی ممنون.

  6. #6
    کاربر دائمی آواتار vof.ir
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    تهران
    پست
    249

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    یک سوال؛ از کجا باید اسم پنجره مورد نظر را بدانیم؟
    آیا این اسم استانداردی دارد؟ آیا این اسم کاملا دلبخواهی هست؟
    روی هر سیستمی یک سان هست؟
    و اینکه با چه کدی میشه اسم تمام پنجره های فعال را به دست آود؛ مثلا فرض کنید میخواهیم برنامه ما با هر پلیری این کار را انجام دهد!
    یک منبع داریم از اسامی برنامه های پلیر معروف
    در اکثرشان هم دکمه Pause کار مشابهی انجام می دهد
    بعد اسم به دست آمده را با اسامی موجود در این منبع میخواهیم مقایسه کنیم و الی آخر....
    با تشکر
    در ضمن برای دریافت برنامه SPY++ که برای به دست آوردن اسامی پنجره ها و یک سری کارهای این چنینی مناسب هست نیز از لینک ذیل قابل دریافت هست
    http://meyex.romanaco.com/2011/11/spy/

  7. #7

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    منظور از نام پنجره همان Caption است. مسلما نام پنجره ماشین حساب در همه سیستمها یکسان است. اما در مجموع اگر قصد نوشتن یک برنامه کامل داشته باشید به نکات ریز زیادی باید توجه بشه و کدی که ارسال کردم فقط حکم تابلویی برای نشان دادن مسیر خواهد بود.

    پیروز باشید

  8. #8

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    داخل task manager اسم برنامه ها هست. همون اسم رو بنویسید جواب میده.
    بعضی از پلیر ها با space متوقف میشن که کدش اینه " " فقط یه فاصله باید گذاشت. واسه اونایی هم که با Ctrl+P کار میکنن کدش "p^" هست.

  9. #9

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    من از AIMP3 استفاده میکنم که اسم پنجره به اسم آهنگ تغییر داده میشه. اما اگر داخل کد AIMP3 رو بنویسید جواب میده.

  10. #10

    نقل قول: زدن اتوماتیک دکمه ای از کیبورد

    نقل قول نوشته شده توسط smart_twists مشاهده تاپیک
    من از AIMP3 استفاده میکنم که اسم پنجره به اسم آهنگ تغییر داده میشه. اما اگر داخل کد AIMP3 رو بنویسید جواب میده.
    منظورت اسم خود برنامه exe هستش؟

تاپیک های مشابه

  1. ردیف زدن اتوماتیک یک گزارش در Qreport
    نوشته شده توسط داوود در بخش ابزارهای گزارش سازی در دلفی
    پاسخ: 3
    آخرین پست: پنج شنبه 06 شهریور 1393, 08:38 صبح
  2. پاسخ: 6
    آخرین پست: یک شنبه 08 آبان 1390, 14:46 عصر
  3. فراخوانی یا زدن یک دکمه بعد از چند ثانیه؟
    نوشته شده توسط Zarghami_A در بخش C#‎‎
    پاسخ: 2
    آخرین پست: یک شنبه 21 خرداد 1385, 17:18 عصر
  4. چه طوری مشه یک نوشته ای رو با زدن یک دکمه به یک ایمیل خاص ارسال کرد ؟
    نوشته شده توسط Mahmood_M در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: دوشنبه 24 بهمن 1384, 08:40 صبح
  5. فرستادن دکمه ها از کیبورد به فرم
    نوشته شده توسط sjj در بخش برنامه نویسی در 6 VB
    پاسخ: 5
    آخرین پست: چهارشنبه 27 مهر 1384, 18:15 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •