PDA

View Full Version : سوال: ساخت لیستی از BackgroundWorker



EhsanAvr
چهارشنبه 20 مهر 1390, 11:46 صبح
با سلام من میخوام یه لیست از BackgroundWorker درست کنم که بتونم با ایندکس دادن٬اونا رو کنترل کنم.
من این کد رو که مینویسم موقع اجرا خطا میگیره

List<BackgroundWorker> bg = new List<BackgroundWorker>();
bg[0].RunWorkerCompleted += new RunWorkerCompletedEventHandler(bg_RunWorkerComplet ed);


متن خطا:

Cannot create instance of 'Window1' defined in assembly 'Bluetooth-Demo, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Exception has been thrown by the target of an invocation. Error in markup file 'Window1.xaml' Line 1 Position 9.

Amir Oveisi
چهارشنبه 20 مهر 1390, 13:29 عصر
اول اینکه این exception کلی هست که پیغامشو گذاشتید. InnerException اش رو باز کنید و پیغام اونو ببینید چیه.
دوم اینکه آیا اصلا BackgroundWorker ای Add کردید تو لیست یا نه؟
سوم اینکه اگر add‌کردید آیا اون backgroundworker هایی که add کردید رو new کردید؟

EhsanAvr
چهارشنبه 20 مهر 1390, 16:36 عصر
من add کردم ولی با پیغام خطا روبرو شدم.اگه میشه یه نمونه کد ساده بزارین

Amir Oveisi
چهارشنبه 20 مهر 1390, 22:42 عصر
شما با چه کدی Add‌ می کنید؟ کدتون رو بزارید تا اگر ایرادی داشت بررسی کنیم با هم

EhsanAvr
پنج شنبه 21 مهر 1390, 00:47 صبح
List<BackgroundWorker> mainb = new List<BackgroundWorker>();
BackgroundWorker L1 = new BackgroundWorker();


mainb.Add(L1);

EhsanAvr
پنج شنبه 21 مهر 1390, 00:48 صبح
اینم بگم که موقع اجرا خطا میگیره

Amir Oveisi
پنج شنبه 21 مهر 1390, 12:01 عصر
کدتون ظاهرا مشکلی نداره. من همین کد رو تست کردم و درست کار می کنه.
BackgroundWorker b = new BackgroundWorker();
List<BackgroundWorker> list = new List<BackgroundWorker>();
list.Add(b);
شما متن InnerException رو هم بزارید اینجا تا مشخص بشه دلیلش چیه.

EhsanAvr
جمعه 22 مهر 1390, 11:30 صبح
کد من موقع اجرا خطا میده. وقتی که event های BackgroundWorker رو مینویسم موقع اجرای برنامه خطا میگیره.
event های BackgroundWorker رو باید برای لیست تعریف کنیم یا تک تک برای هر کدوم از کنترلها؟
مثلا تو کدی که شما نوشتین event ها رو باید برای b تعریف کنیم یا برای list ؟ و نحوه تعریف برای لیست چجوریه؟

Amir Oveisi
جمعه 22 مهر 1390, 12:26 عصر
خوب مسلما برای backgroundworker باید event تعریف کنید. من تا الان فکر می کردم که موقع Add کردن تو لیست خطا میده. شما بالاخره متن کامل exception ای که اتفاق میفته رو و کدی از برنامتون که exception اونجا اتفاق میفته رو نزاشتین اینجا.

مهدی فرزاد
چهارشنبه 27 مهر 1390, 08:44 صبح
سلام
با عرض پوزش که یک دفعه پریدم وسط ماجرا !
میخواستم بدونم چرا دارید لیستی از backgroundworker تهیه میکنید و قراره چه استفاده ای ازش بشه ؟؟؟

EhsanAvr
یک شنبه 15 آبان 1390, 23:56 عصر
برنامه ای دارم که قراره به صورت همزمان به تعداد زیادی دستگاه ٬ فایل رو با بلوتوث بفرسته.ماژولی که دارم تا ۷۱ دستگاه رو پشتیبانی میکنه و برای ارسال همزمان از لیستی از backgroundworker استفاده میکنم! به نظر شما این کار مشکل داره؟

سوداگر
چهارشنبه 18 آبان 1390, 20:28 عصر
برنامه ای دارم که قراره به صورت همزمان به تعداد زیادی دستگاه ٬ فایل رو با بلوتوث بفرسته.ماژولی که دارم تا ۷۱ دستگاه رو پشتیبانی میکنه و برای ارسال همزمان از لیستی از backgroundworker استفاده میکنم! به نظر شما این کار مشکل داره؟

بله مشکل داره!

از لحاظ سخت افزاری شما می توانید با 7 وسیله دیگر ارتباط داشته باشید.
امَا اگر از سرور بلوتوثی استفاده میکنید تا حدود 84 وسیله را پشتیبانی می کند.
موفق باشید.:تشویق:

EhsanAvr
چهارشنبه 18 آبان 1390, 21:34 عصر
من از سخت افزاری استفاده می کنم که تعداد زیادی وسیله را پشتیبانی می کند.در حالت عادی سخت افزارهای موجود در بازار تا 7 کانکشن رو ساپورت میکنن