PDA

View Full Version : حرفه ای: کمک برای autodetect کردن یک وسیله جانبی



sadrap2
جمعه 01 شهریور 1392, 23:20 عصر
با سلام
من می خوام برای یه دستگاه که به پورت usb با مبدل com (سریال) وصل شده یه برنامه بنویسم که بتونه زمانی که دستگاه رو وصل میکنم بصورت autodetect بشناسه
تا الان هم خیلی جلو بردم تا جایی که با زدن یک button میتونم بدون اینکه شماره پورت رو بدم اون رو شناسایی کنم و بهش کانکت شم
ولی برای اینکه بتونه خود نرم افزار اون رو شناسایی کنه نیاز به کار با توابع api دارم که در موردشون هیچی نمی دونم
از دوستانی که در این مورد اطلاعات دارن خواهش می کنم من رو راهنمایی کنن

قبلا از کمکتون کمال تشکر رو دارم
:بوس::کف::کف::کف::کف::کف::کف::بو :

mousa1992
شنبه 02 شهریور 1392, 00:52 صبح
باید از توابع Wmi استفاده کنی - کاری که شما میخواین انجام بدید مثل پر کردن گرید نیست که همه انجام داده باشن و کدشونو بذارن اینجا نه اینکه سخت باشه نه ولی خب عمومیت نداره و باید خودت انجامش بدی
سرچ کن تو گوگل و البته نه فارسی

sadrap2
شنبه 02 شهریور 1392, 06:39 صبح
خيلي ممنون از راهنماييت دوست عزيز
من query رو به زبان wql نوشتم كه اطلاعات رو بدست بياره كه من بفهمم ايا وسيله به سيستم متصل هست يا نه
اما مشكلم دقيقا اينجاست كه نرم افزار چطري متوجه وصل بدن وسيله جانبي بشه
ميتونم اينكار رو با يه تايمر انجام بدم و يه شرط داخلش بذارم اما اين كار اصولي و حساب شده اي نيست
تقريبا مي خوام بدونم تو توابع api رويدادي هست كه بتونه منو مطلع كنه اگه هست نام و نحوه استفاده اش رو مي خوام
باز هم ازتون تشكر مي كنم

sadrap2
شنبه 02 شهریور 1392, 23:09 عصر
آقا یکی نیست راینجا واقعا کمکم کنه خیلی مهمه این موضوع برام لطفا یه راهنمایی کنید:ناراحت::ناراحت::ناراحت:

FastCode
شنبه 02 شهریور 1392, 23:55 عصر
var watcher = new ManagementEventWatcher(); var query = new WqlEventQuery("SELECT * FROM Win32_DeviceChangeEvent WHERE EventType = 2"); watcher.EventArrived += new EventArrivedEventHandler(watcher_EventArrived); watcher.Query = query; watcher.Start();

بعد id رو مقایسه میکنی اگر مثلا 067b:2303 بود یعنی PL2303 وصل شده.
جست و جو کن:WM_CHANGEDEVICE (http://www.codeproject.com/KB/dotnet/devicevolumemonitor.aspx)
منبع:
http://stackoverflow.com/questions/620144/detecting-usb-drive-insertion-and-removal-using-windows-service-and-c-sharp
و خودم

sadrap2
یک شنبه 03 شهریور 1392, 12:06 عصر
اقا خیلی ممنون میرم سراغش ببینم چی میشه