سلام
مدتی بود که این برنامه رو نوشته بودم ولی چون وقت نمی کردم تا سر و سامونی بهش بدم (تا غیر خودم کسای دیگه هم سر دربیارن) همینطوری مونده بود که بالاخره امروز (شب!) قسمتم شد
اهداف اصلی برنامه:
مدیریت بصری (شبه Explorer) فایل و عملیات های مربوطه بر روی سیستم راه دور (Remote System)
ارائه امکانات دسترسی و کنترل میز کار راه دور (Remote Desktop) با تمامی امکانات موس و صفحه کلید(تایپ)
از هر بخش می تونید تصویری رو در انتهای مطلب ببینید
تکنولوژی مورد استفاده :
Visual Basic 2010
FrameWork 4 (قابل تغییر به 3.5)
Net Remoting.
دوستان توجه کنن همانطور که از پیشوند موضوع هم پیداست این پروژه در سطح حرفه ای هست پس در مورد سادگی کد ها تضمینی وجود نداره (البته تمام سعیم رو کردم که کد ها روان و به توابع و متد های قابل درک تر شکسته بشه)
توضیح مختصر:
پروژه راحل (Solution) شامل سه پروژه به شرح زیر است:
RemotingObject:
این پروژه از نوع کتابخنه ای (Class Library یا DLL) است که وظیفه اصلی پیاده سازی اجرای دستور را به عهده دارد
این پروژه شامل تمامی متد ها و توابعی است که برنامه کلاینت (شرح در پایین) برای رسیدن به اهداف خود دارد است
یک رفرنس از این پروژه در دو پروژه بعدی وجود دارد
RemoteExplorerServer: این پروژه از نوع کنسولی بوده شامل بیش چند خط کد (حیاتی) نیست!
وظیفه این برنامه باز کردن پورت بر روی رایانه هدف (سرور) و ارائه امکانات موجود در RemotingObject به کلاینت (ها) است
(این برنامه بر روی سرور اجرا خواهد شد)
RemoteFileBrowserClient: این پروژه از نوع ویندوزی بوده و وظیفه دارد با اتصال به برنامه RemoteExplorerServer که بروی سرور قرار دارد و با استفاده از امکانت مهیا شده توسط RemotingObject اهداف مورد نظر ما را محقق سازد
(این برنامه بر روی کلاینت اجرا خواهد شد)
----------
توجه داشته باشید ممکن است در هر دو سمت (سرور و کلاینت) نیاز داشته باشید که پورت مورد نظر (که من پیش فرض رو بر روی 1760 قرار دادم) رو در Firewall تنظیم کنید تا امکان ارتباط وجود داشته باشه (این نکته در برنامه سرور گوش زد می شه!)
نکته:
گزینه دیگه که برای رسیدن به این اهداف وجود داره استفاده از WCF هست که داری قدرت و انعطلاف بیشتر و بالطبع پیچیدگی بیشتری هم هست
توصیه :
این برنامه ( و تکنولوژی) اون بسیار قدرتمند هست که با کمی کار خیلی بیشتر هم می تونه باشه پس مواظب باشید شیطون گولتون نزنه و یادمون باشه باید به حریم شخصی دیگران احترام گذاشت
Remte_Send_File.jpg
Remote_Desktop.jpg
توصیه آخرم یادتون نره!