PDA

نسخه کامل مشاهده نسخه کامل : دریافت فایل از سرور



sari-1369
15-04-2010, 16:18
سلام .

من یه نرم افزار دارم که تحت شبکه هستش . بانک اون روی سرور و فایل های exe روی کامپیوتر کاربران ( بگذریم .. :31: )

من توی سرور یه فولدر share شده دارم و درون اون هم یک فایل . حالا میخوام برنامم بتونه این فایل رو روی سیستم خودش کپی کنه .

من برای این کار از این دستور استفاده کردم :


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنیدکار میکنه ، ولی به شرطی که حداقل یک بار سیستم مقصد از قبل به سرور لاگین شده باشه . :13:

تعداد کاربران زیاد هست و نمیشه برای هر کدوم (حتی برای یک ) بار لاگین کرد . در ضمن در صورت تعویض ویندوز اون کامپیوتر ها این عمل باید دوباهر تکرار بشه . :41:

حالا میخوام شما راهنماییم کنید که کلا برای دریافت فایل چیکار کنم . استفاده روش بالا منطقی هست ؟

در کل راهنماییم کنید .

sari-1369
16-04-2010, 14:12
الو :41:

هلپ می :31:

mahdi7s
16-04-2010, 17:37
شاید بهتر باشه فایل مورد نظر رو داخل خود دیتابیس بریزید.
که نیازمند یک جدول کوچک یا اگر به جدولی مرتبط هست به یک ستون جدید نیاز دارید.

می تونید یک کلاس کوچک هم برای دریافت و درج همون فایل از/به دیتابیس تحت یک class library بنویسید و هم در خود برنامه و هم در یک برنامه کوچک برای دریافت و درج فایل استفاده کنید.

sari-1369
16-04-2010, 20:50
یعنی منظورتون اینه که فایل رو توی دیتابیس ذخیره کنم ؟ :13: فکر خوبیه . فایل من exe هستش و حجمش هم حدودا 10 مگ .

من تاحالا فایل ذخیره نکردم . میشه در مورد درج ، ویرایش و بازخوانی فایل از دیتا بیس (sqlserver) مثال بزنید ؟

_H2_
16-04-2010, 23:08
سلام
پوشه share شده این مسائل را دارد و نمیتواند راه حل مناسبی برای برنامه شبکه ای باشد.
مخصوصاً کهوقتی از وازه شبکه استفاده میشود، لزوماً فقط به معنی شبکه که شما با سوییچر و هاپ و کابل LAN و... ایجاد میکنید نیست.

و برنامه سما باید با شرایط خاص تر هم کار کند.
مثلاً منظور از شبکه میتواند شبکه در بستر اینترنت هم باشد!

=====

میشود از دیتابیس SQLServer هم استفاده کرد ولی باید منظور و هدف شما از این کار مشخص شود؟
چه کار دارید میکنید و اصل کار و هدفتان رسیدن به چیست؟

=====

بسته به شرایط و کاربرد 1) میتوانید از SQLServer استفاده کنید تا در سرور IIS نصب کنید و 2) یک صفحه [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] را مسئول تحویل و دانلود فایل کنید 3) میتوانید از webservice استفاده کنید 4) میتوانید یک winservice یا winapp ایجاد کنید که روی پرت خاص TCP ای خدمات دانلود این فایلها و آپدیت برنامه را ارائه دهد و....

=====

شب بخیر.

sari-1369
17-04-2010, 00:23
همون ، من واسه به روز رسانی نسخه جدید برنامه میخوام .

_H2_
24-04-2010, 18:19
سلام
شرمنده وقت نکردم ...
اگر در سرورتان امکان نصب IIS را دارید میتوانید و یا امکان دارد در آینده سرور شما به اینترنت منتقل شود و برنامه ها از نقاط مختلف بتوانند آپدیت شوند...
میتوانید از یک [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] و یا یک webservice استفاده کنید.

نمونه کد یک webservice و نجوه اتصال یک exe به وب سرویس روی سایت:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

توضیحی در مورد آپدیت برنامه با کمک فرمت xml و یک [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

=====

ولی در حالت کلی میتوانید از یک winservice یا یک برنامه عادی که با ویندوز آغاز میشود و در startup قرار دارد استفاده کنید.
بدین صورت که یک پورت خاص سرور را برای آپلدیت برنامه تان باز میکنید و اطلاعات را از سوکت های کلاینت دریافت و پردازش میکنید و فایل درخواستی را به صورت بلاک های مشخص (8K یا 16 و 32 و 64K بایتی) برای کلاینت میفرستید.

قبلاً توضیحی در مورد برنامه نویسی سوکت ها داده بودم که احتمالاً باید دیده باشید:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

==============

اگر برنامه من قرار بود در یک شبکه محلی با LAN و... کار کند آپدیت با روش سوکتی دوم را ترجیح میدادم ولی اگر تسلط کافی به کار مستقیم با سوکت ها ندارید، پیشنهاد میکنم IIS را در سرور نصب کنید و از یک [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] یا یک webservice استفاده کنید.

==============

مجدد عضر خواهی میکنم و موفق باشید.

pezhmax
24-04-2010, 20:10
بهترین راه همون ذخیره فایل تو SQL Server هست. هم ساده اس و هم مشکلات برنامه نویسی سوکت رو نداره.تو مقاله زیر طریقه ذخیره کردن عکس و خوندنش از دیتابیس توضیح داده شده. برای همه فایلها هم همینطوریه :

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

BabyBoy
24-04-2010, 23:58
سلام

اگه فقط هدفت آپدیت برنامه است چرا از Click Once استفاده نمیکنی؟