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

نام تاپیک: اشکال در اجرای task روزانه

  1. #1

    اشکال در اجرای task روزانه

    با سلام و احترام
    طبق کد زیر باید روزانه task مورد نظر اجرا بشه .
    ولی هیچ وقت شرط اولی اجرا نمیشه. چرا؟


    interval=100;



    private void timer1_Tick(object sender, EventArgs e)
    {
    PersianCalendar pc = new PersianCalendar();
    DateTime nowTime = DateTime.Now;
    DateTime scheduledTime = new DateTime(nowTime.Year, nowTime.Month, nowTime.Day, Houre, Minute, Second, 0);


    if (nowTime == scheduledTime)
    {
    timer1.Stop();

    StartTask();

    timer1.Start();

    scheduledTime = scheduledTime.AddDays(1);


    }


    }
    آخرین ویرایش به وسیله SardareEshgh : چهارشنبه 12 تیر 1398 در 21:15 عصر

  2. #2
    مدیر بخش آواتار danialafshari
    تاریخ عضویت
    تیر 1387
    محل زندگی
    هر کجا هستم باشم آسمان مال من است
    پست
    2,909

    نقل قول: اشکال در اجرای task روزانه

    اگر خروجیشون رو چاپ میکردید متوجه میشید
    MessageBox.Show($"nowTime: {nowTime} - scheduledTime:{scheduledTime}");

    بخاطر عدم تنظیم AM/PM هست
    https://stackoverflow.com/questions/...me-format-in-c
    لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
    قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
    قوانین پرسش های دانشجویی
    برای درست وارد شدن کد در قالب C#‎‎‎ سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C#‎‎‎ منتفل کنید
    نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها

  3. #3

    نقل قول: اشکال در اجرای task روزانه

    نقل قول نوشته شده توسط danialafshari مشاهده تاپیک
    اگر خروجیشون رو چاپ میکردید متوجه میشید
    MessageBox.Show($"nowTime: {nowTime} - scheduledTime:{scheduledTime}");

    بخاطر عدم تنظیم AM/PM هست
    https://stackoverflow.com/questions/...me-format-in-c
    برای علامت $ خطا میده. به دات نت مربوطه؟( برای من vs2008 و دات نت 3.5 هستش.)

    اجرا نشدن if فکر میکنم به خاطر میلی ثانیه هستش. چون برای تایمر interval=100 تعریف شده و شمارنده nowTime خیلی سریعتر عمل میکنه(دقیقا نمیدونم) در فاصله زمانی 100 میلی ثانیه که تایمر میخواد چک کنه میلی ثانیه nowTime از میلی ثانیه scheduledTime رد میشه به خاطر همین هیچوقت باهم برابر نمیشن . اما وقتی به شکل زیر تعریف میکنم if اجرا میشه :
                if (nowTime.Day == scheduledTime.Day && nowTime.Hour == scheduledTime.Hour &&
    nowTime.Minute == scheduledTime.Minute && nowTime.Second == scheduledTime.Second)
    آخرین ویرایش به وسیله SardareEshgh : پنج شنبه 13 تیر 1398 در 16:33 عصر

  4. #4

    نقل قول: اشکال در اجرای task روزانه

    یه مشکل دیگه که ایجاد شده با همین روش هم که دستور if اجرا میشه برای بار دوم خطای عدم دسترسی به پوشه مقصد را میده!

    زمان اجرای Task را در هر 1 دقیقه گذاشتم . بار اول درست اجرا میکنه اما بار دوم خطای عدم دسترسی به مقصد رو میده.
      scheduledTime = scheduledTime.AddMinutes(1);

    البته این نکته را بگم پوشه مقصد ، یه پوشه Share شده هستش ولی دسترسی ادمین داره و بصورت دستی هم باز میشه ولی نرم افزار در اجرای دوم خطا میده.
     string farhangiFile = System.IO.Path.Combine(targetPath, fileName);

    یه راهی که به نظرم میرسه اجرا کنم استفاده از using برای کل task هستش تا پس از اتمام using همه چیز به حالت قبلی برگرده. اما نمیدونم از using چطوری استفاده کنم.

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

  1. ارسال sms روزانه با استفاده از Scheduled task
    نوشته شده توسط niloo17 در بخش ASP.NET MVC
    پاسخ: 2
    آخرین پست: پنج شنبه 21 اسفند 1393, 12:43 عصر
  2. اجرا و حذف task از task manager
    نوشته شده توسط ali.rk در بخش VB.NET
    پاسخ: 0
    آخرین پست: یک شنبه 30 تیر 1392, 02:11 صبح
  3. حرفه ای: جلوگیری از بسته شدن برنامه حتی با end task در task manager
    نوشته شده توسط arash020 در بخش VB.NET
    پاسخ: 2
    آخرین پست: یک شنبه 29 بهمن 1391, 02:35 صبح
  4. مشاهده task های جدید ساخته شده در task scheduler ویندوز سون
    نوشته شده توسط حسین فلاحی در بخش گفتگوی عمومی کامپیوتر و فناوری اطلاعات
    پاسخ: 0
    آخرین پست: سه شنبه 06 مهر 1389, 22:54 عصر
  5. ایجاد یک Task در زمانبند ( Scheduled Task) ویندوز
    نوشته شده توسط Erfanian در بخش برنامه نویسی در 6 VB
    پاسخ: 0
    آخرین پست: یک شنبه 25 اردیبهشت 1384, 10:12 صبح

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

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