PDA

View Full Version : برنامه تحت شبکه



negar_programmer
چهارشنبه 02 اسفند 1385, 08:08 صبح
من یه برنامه با vb.net2003 و mssql نوشتم ولی تک کاربره است می خوام تحت شبکه بشه با دسترسی نامحدود کسی می تونه از ابتدا منو راهنمایی کنه ؟
با تشکر

programmermp
چهارشنبه 02 اسفند 1385, 08:52 صبح
من یه برنامه با vb.net2003 و mssql نوشتم ولی تک کاربره است می خوام تحت شبکه بشه با دسترسی نامحدود کسی می تونه از ابتدا منو راهنمایی کنه ؟
با تشکر

سلام

من یک سری اطلاعات محدود در این زمینه دارم که خدمتون می گم

برنامت اگه می خواهد تحت شبکه باشه اولا باید مفهوم تحت شبکه رو مشخص کنی یعنی

چی اگه منظورت اینکه برنامت و بانکت رو ی سرور نصب بشه و بقیه کاربران فقط دسترسی

به برنامت رو از طریق میانبر داشته باشند همون شورتکات که فقط کافیه نام کامپیوتر رو در

کانکشن استرینگ نقطه یا لوکال بزاری اما اگه قرار باشه برنامه رو روی کلاینت ها نصب کنی

باید نام کامپیوتر یا ای پی اون رو بدی سرور رو می گم

در ضمن به نظر من روش اولی بهتر رو سرور نصب کن بزار با شورت کات کار کنند کاربرها

دیگه از این بیشتر نمی دونم دیگر دوستان هم باید کمک کنند

با تشکر

dostmohammady
چهارشنبه 02 اسفند 1385, 12:56 عصر
من یه پروژه راجع به برنامه ثبت نام کامپیوتری دانشجویان دارم که باید تحت windowsوwebباشه لطفا منو راهنمایی کنید.

iman_s52
چهارشنبه 02 اسفند 1385, 13:16 عصر
در ضمن باید بحث همزمانی رو هم یادت نره.
اگه جایی تو برنامه ات کد خودکار تولید میکنی و ممکن با شبکه کردن برنامه تکراری بشه باید جلوشو بگیری.

saeed_rezaei
چهارشنبه 02 اسفند 1385, 13:39 عصر
همانطور که دوستان گفتن دو راه حل برای شبکه کردن یک برنامه هستش که بهترین راه حل به این صورت هست که sql server رو روی دستگاهی نصب کنی که ویندوز 2000 یا 2003 سرور داره. بعد بانکی رو که قبلا ایجاد کردی روی اون سیستم قرار می دی
اما چند تا نکته وجود داره.
اول اینکه تو تا حالا بانک اطلاعاتیت روی کامپیوتر محلی یا همون local بوده. این یعنی توی conection string آدرس سرورت رو کامپیوتر محلیت زدی.
باید توی سورس برنامه آدرس سرورت رو تغییر بدی. که این یه کمی کار کد نویسیت رو بیشتر می کنه اما سادس مثل آب خوردن.
اما یه نکته مهم دیگه هم هست که بحث همزمانیه. ممکنه روی یک رکورد بانک اطلاعاتیت دو کاربر به صورت همزمان کار کنن که در این صورت در سورس برنامت باید مواظب این قضایا باشی.
البته چیزی که نوشتم کلیات بود. مطمئنن توی قسمت تغییر آدرس سرورت یه کمی کارت زیاد می شه و جزئیات بیشتری رو باید مد نظر قرار بدی.

DonetKarvb
چهارشنبه 02 اسفند 1385, 13:39 عصر
من یه برنامه با vb.net2003 و mssql نوشتم ولی تک کاربره است می خوام تحت شبکه بشه با دسترسی نامحدود کسی می تونه از ابتدا منو راهنمایی کنه ؟
با تشکر
با سلام
به نظر من سخت نگیرش. شما فرض کن که داری برای یک سیستم برنامه مینویسی. فقط هنگام طراحی برنامه جایی رو در نظر بگیر که بتونی از آنجا کانشکن استرینگت رو تغییر بدی. مثلا" یک بخش تنظیمات داشته باش که نام سرور, نام دیتابیس و پسورد رو بگیره و دخیره کنه. بعد از اینکه برنامه ات نوشته شد روی سرور SQL server رو نصب کن. و روی کلاینت هات هم دات نت فریم ورک رو. حالا به سادگی با وارد کردن IP و یا نام کامپیوتر سرور میتونی به داده ها دسترسی داشته باشی. هیچ محدودیتی هم وجود نداره.
فعلنه توجه زیادی به همزمانی کاربران نداشته باش که این نکته بیشتر به برنامه هایی بر میگرده که کاربران زیادی داره. تا 10 الی 20 تا کاربر بعید میدونم مشکلی ایجاد کنه!!


همانطور که دوستان گفتن دو راه حل برای شبکه کردن یک برنامه هستش که بهترین راه حل به این صورت هست که sql server رو روی دستگاهی نصب کنی که ویندوز 2000 یا 2003 سرور داره. بعد بانکی رو که قبلا ایجاد کردی روی اون سیستم قرار می دی
نیازی نداره که حتما" ویندوز سرور باشد.

موفق باشید

programmermp
چهارشنبه 02 اسفند 1385, 13:57 عصر
سلام


منظورتون از همزمانی یعنی اینکه یک کاربر یک رکورد رو ویرایش کنه در ان واحد یک کاربر دیگه

بخواهد همون رکورد رو مثلا حذف کنه درسته ؟

برای این جلوگیری از این قضیه یک تاپیک قبلا مطرح شده بود فکر کنم باید یه جواریی

رکورد رو که در حال ویرایش هست برای دیگر کاربران قفل کرد

چجوریش رو دیگه نمی دونم ؟؟؟؟؟؟؟؟؟؟؟؟

در ضمن در مورد ای پی سرور فکر نکنم نیازی باشه تغییر کن خوب اگه قرار باشه برنامه به همراه بانک روی سرور باشه و فقط شورت کات اون در اختیار کاربران باشه دیگه اگه تو کانکشن استرینگ سرور رو لوکال تعریف کرده باشیم
مشکلی پیش نمیاد که میاد به نظر شما؟

با تشکر

rezaei manesh
چهارشنبه 02 اسفند 1385, 14:12 عصر
از طریق میانبر داشته باشند همون شورتکات که فقط کافیه نام کامپیوتر رو در

کانکشن استرینگ نقطه یا لوکال بزاری اما اگه قرار باشه برنامه رو روی کلاینت ها نصب کنی

باید نام کامپیوتر یا ای پی اون رو بدی سرور رو می گم

در ضمن به نظر من روش اولی بهتر رو سرور نصب کن بزار با شورت کات کار کنند کاربرها



یعنی بدون نصب فریم ورک و کامپوننت ها و... می شه از کلاینت با سرور ارتباط گرفت؟ فریم ورک رو بعید می دونم بعضی ها رو می شه اما بعضی ها رو فکر نکنم
در مورد برنامه تخت شبکه هم باید مراقب همسان سازی اطلاعات باشی

programmermp
چهارشنبه 02 اسفند 1385, 14:20 عصر
سلام حامد جان

نه فریم ورک که باید نصب بشه

ولی بقیه چیزها مثل کامپوننت ها باید کنار فایل اجرایی باشه که هست ما فقط می خواهیم

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

باشه رو کلاینت

فقط کامپوننت ها جایی باید باشه که فایل اجرایی هست

حالا من امتحان نکردم اگه دوستان امتحان کردن بگند

با تشکر

rezaei manesh
چهارشنبه 02 اسفند 1385, 16:11 عصر
بعضی از کامپوننت ها روی پوشه های ویندوز هم dll دارند مثل همین فریم ورک هستند البته اینم یه روشی هست دیگه که خیلی وقت ها هم جواب می ده اما معمولا برای این حور برنامه ها باید 2 تا ستاپ درست بشه
اگه یه جستجو تو همین تارار بکنید یه تاپیک که فکر کونم من زده باشم در این رابطه زده شده که همه دوستان و اساتید لطف کردن جواب دادن

programmermp
چهارشنبه 02 اسفند 1385, 19:49 عصر
حامد جان این تاپیک شما تحت چه عنوانی هست

چیرو سرچ کنم تا پیداش کنم

با تشکر

rezaei manesh
پنج شنبه 03 اسفند 1385, 08:03 صبح
من حقیقتش یادم نیست اسمش چی بود
الان هم گشتم نتونستم چیزی پیدا کنم متاسفانه
اما تا اونجایی که یادم هست لپ گلام همون چیزی بود که گفتم
که البته در اونجا من به این نتیجه رسیده بودم اگه تعداد کلاینت هام زیر 5-6 تا باشه رو همه نصب کنم