PDA

View Full Version : اتصال برنامه تحت وب به دستگاه داراي كارت شبكه از طريق IP



faramosh
دوشنبه 01 خرداد 1391, 13:26 عصر
سلام
يك برنامه تحت وب با ASP.NET 2 هست كه بايد بتونه به يك دستگاه (بوسيله IP آن) متصل بشه و دستور ارسال كند
اين دستگاه دارايdll هست .بعد از اينكه ip دستگاه را برنامه پيدا مي كنه براي اتصال , مقادير ip ازبين مي رود و نميتونم به دستگاه وصل بشم
چطوري ميتونم اين دستگاه را سمت كلاينت كنترل كنم آيا JQuery يا SL ميتونن فايده داشته باشند من با آنها كار نكردم اگر ممكن راهنمايي نماييد
(با برنامه تحت ويندوز هيچ مشكلي وجود ندارد)

مهدی کرامتی
دوشنبه 01 خرداد 1391, 14:38 عصر
شما می توانی یک سرویس WCF رو در دستگاه مورد نظر ایجاد و اجرا کنی که منتظر شنیدن دستورات باشه (دستگاه مورد نظر میبایست یک IP ثابت داشته باشه) و در برنامه ASP.NET به اون سرویس متصل شوید و تابع مورد نظر رو اجرا کنید.

faramosh
دوشنبه 01 خرداد 1391, 15:01 عصر
با تشكر از پاسخ شما
من با WCF كار نكردم ممكن است لطفا كمي بيشتر توضيح بدهيد چطوري براي دستگاه سرويس ايجاد كنم ديگه اينكه آيا اگر ip دستگاه بصورت DHCP باشه ولي بتونم ip را بخونم مشكلي پيش مياد؟

مهدی کرامتی
دوشنبه 01 خرداد 1391, 17:05 عصر
شما باید یک سرویس WCF ایجاد کنید که توابع درون DLL فوق را به صورت توابع یک سرویس ارائه بده. شما می توانید سرویس فوق را درون IIS یا حتی یک Console Application بر روی دستگاه مورد نظر میزبانی کنید. اگر دستگاه مورد نظر IP اش تغییر نکند مهم نیست.

faramosh
سه شنبه 02 خرداد 1391, 15:10 عصر
شما باید یک سرویس WCF ایجاد کنید که توابع درون DLL فوق را به صورت توابع یک سرویس ارائه بده. شما می توانید سرویس فوق را درون IIS یا حتی یک Console Application بر روی دستگاه مورد نظر میزبانی کنید. اگر دستگاه مورد نظر IP اش تغییر نکند مهم نیست.
با تشکر از شما جناب Delphiassistant
یک وب سرویس ایجاد کردم و درون متدهای آن از متدهای dll را فراخوانی کردم لازم به ذکراست که

جهت استفاده از dll این دستگاه می بایست


1- هندل event ها در ضمن برنامه تعریف شود و سپس در برنامه روتین آنها نوشته شود

2-متدها نیز در برنامه فراخوانی شود بطوریکه اجرا بعضی آنها باعث فراخوانی enevt ها می شود

در برنامه ویندوزی مشکلی نیست اما اکنون که سرویس را تعریف کردم نه می تواند ip دستگاه را پیدا کنه و نه با ip دستی به دستگاه وصل میشه

این طوری استفاده از dll صحیح است؟ آیا روش دیگری به جز WCF نیست که آن را امتحان کنم؟