# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > WCF , Web Services , .Net Remoting >  برنامه نویسی تحت شبکه در vb.net

## jas1387

بسم الله الرحمن الرحیم

با سلام خدمت دوستان

بعد از جستجو درباره برنامه نویسی تحت شبکه در اینترنت به این نتیجه رسیدم که یک تایپک ایجاد 

کنم و از دوستانی که دارای دانش و تجربه کاری در این ضمینه هستند بخواهم که دانش خود را در 

اختیار بنده و امثال بنده قرار دهند

زکات علم ، آموختن است

----------


## __H2__

سلام
برنامه هایی که در دات نت در شبکه کار میکنند عموماً به تقسیم بندی من، دو گروه هستند.
-اول آنها هستید که یک بانک اطلاعاتی را تحت شبکه مشترکاً استفاده و اپدید میکنند.
این قبیل برنامه ها بسیار ساده تر هستند، و اگر شما به یک سری بازدهید کلی در حالت چند کاربر آنلاین و مشکلات اماکن درج و ویرایش و حذف همزمان در رایانه های دگیر دت کنید و دستورات SQL مناسبی را بنویسید، میتوانید اصل کار ارتباط بین رایانه ها را به SQLServer محول کنید.

یعنی SQLServer به راحتی با یک تغییر در ConnectionString اجازه میدهد به منبعی در آن سوی شبکه و حتی کره زمین وصل شوید.

-دوم برنامه های دیگر هستند که ربطی به SQLServer ندارند، مثل چت ها یا برنامه های انتقال فایل و...
برای این گروه دوم باید مستقیماً به سوکت های ویندوز وصل شد و برنامه نویسی سوکتی کرد.

البته دات نت امکاناتی مثل NetRemoting هم در نظر گرفته، ولی به سرعت و بازدهید کد نویسی مستقیم سوکت نمیرسد.

بد نیست سری هم به این تاپیک بزنید.
barnamenevis.org/showthread.php?t=113361

----------


## ALI TT

> سلام
> برنامه هایی که در دات نت در شبکه کار میکنند عموماً به تقسیم بندی من، دو گروه هستند.
> -اول آنها هستید که یک بانک اطلاعاتی را تحت شبکه مشترکاً استفاده و اپدید میکنند.
> این قبیل برنامه ها بسیار ساده تر هستند، و اگر شما به یک سری بازدهید کلی در حالت چند کاربر آنلاین و مشکلات اماکن درج و ویرایش و حذف همزمان در رایانه های دگیر دت کنید و دستورات SQL مناسبی را بنویسید، میتوانید اصل کار ارتباط بین رایانه ها را به SQLServer محول کنید.
> 
> یعنی SQLServer به راحتی با یک تغییر در ConnectionString اجازه میدهد به منبعی در آن سوی شبکه و حتی کره زمین وصل شوید.


میشه در این مورد بیشتر توضیح بدید ؟

من بانکم Access هست ، با اون هم میشه ؟

----------


## __H2__

سلام



> میشه در این مورد بیشتر توضیح بدید ؟


کافیست در SQLServer یک لوگین جدید با user و pass تایین کنید، و ip یا نام دامین سرور را داشته باشید.
بعد حتی اگر سرور در آنسوی کره زمین هم باشد، به راحتی میتوانید با شبکه شدن یا اینترنت،
با اطلاعات سرور مورد نظر کار کنید، خود sqlserver ارتباطات سطح سوکت را مدیریت میکند.

در اصل و از نظر ظاهری در کد شما فقط ConnectiuonString است که اصلاح میشود.

Data Source=192.168.1.10;Initial Catalog=Databasename;Persist Security Info=True;Connect Timeout=45;User ID=Username;Password=Password

البته همانطور که گفتم، باید برخی موارد کارآیی و همزمانی هم دقت کنید، ولی رعایت این اصول در برنامه غیر شبکه ای هم بد نیست.
البته در یک برنامه واقعی شما نیاز به تغییر ConnectionString هم ندارید!
چون احتماً در پنجره "تنظیمات پیشرفته" نرم افزارتان، گزینه تنظیمی برای تغییر و ویرایش ConnectionString و پارامترهای ان برای کاربر تعبیه کرده اید.




> من بانکم Access هست ، با اون هم میشه ؟


متاسفانه access گزینه مناسبی برای کار کرد شبکه ای نیست، در یک شبکه محلی و LAN میشود کارهایی کرد ولی اصولی نیست.
از sqlserver استفاده کنید، به نظر من که خیلی راحت تر و را دست تر است، نسخه Express خیلی سبک و سریع است و برای کارهای کوچک به راحتی جواب دهد.

----------


## ALI TT

> سلام
> 
> کافیست در SQLServer یک لوگین جدید با user و pass تایین کنید، و ip یا نام دامین سرور را داشته باشید.
> بعد حتی اگر سرور در آنسوی کره زمین هم باشد، به راحتی میتوانید با شبکه شدن یا اینترنت،
> با اطلاعات سرور مورد نظر کار کنید، خود sqlserver ارتباطات سطح سوکت را مدیریت میکند.
> 
> در اصل و از نظر ظاهری در کد شما فقط ConnectiuonString است که اصلاح میشود.
> 
> Data Source=192.168.1.10;Initial Catalog=Databasename;Persist Security Info=True;Connect Timeout=45;User ID=Username;Password=Password
> ...


میشه یه مثال روی این ConnectionString که دادم پیاده کنی (همون IP دادن و ... ) ؟
SqlConnection1.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector  y|\Customers.mdf;Integrated Security=True;User Instance=True"

ممنون

----------


## jas1387

من یه نرم افزاری دیدم ( نرم افزار حسابداری ) که همه بر روی سرور نصب می شود و هم روی کلاینت 

که می توانست کاربر کلاینت اطلاعات را در کامپیوتر خود ذخیره کند و سرور می توانست تغییرات را 

ببیند ( مثل اینکه دیتابیسش یکی بود !! ) و همه کارهای در سطح کلاینت را نیز انجام دهد

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

لطفا توضیح بدهید ( ممنون )

----------


## __H2__

سلام



> میشه یه مثال روی این ConnectionString که دادم پیاده کنی (همون IP دادن و ... ) ؟


این Connection شما اصلاً جزء ذات sqlserver نبوده و نیست و فقط و فقط و فقط نگارش رایگان express از ان پشتیبانی میکند.
شما باید دیتابیس را attach کنید. تمام امکانات امنیتی و شبکه ای هم فقط روی دیتابیس های attach شده کار میکند.
این روش connectionstring فقط برای برنامه های ساده و غیر شبکه ای و تک کاربره با نسخه express قابل استفاده است و کار را مثل استفاده از بانک های access ساده میکند.

تاکید میکنم، دیتابیس شما باید attach شود، چیزی که همه نسخه های کوچک و بزرگ sqlserver آن را دارند.





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


هیچ فرقی ندارد، میتواند با connectionstring دیگری وصل شود ولی لزومی به تفاوت و پارتی بازی نیست.
جایی connectionstring را تغییر میدهد که بخواهید یکی از سه پارامتر اصلی را عوض کنید. server یا database یا جفت user و pass

در اصل در تئوری sqlserver شما اصلاً نباید بدانید فایلهای اصلی کجا هستند، شما فقط به نرم افزار sqlserver وصل شوید.
امکان دارد یک دیتابیس بسیار بزرگ شود، طوری که دیتا ها روی یک هارد و یک رایانه جا نشود.
پس تکلیف چیست؟
(منظورم این نیست که حتماً این اتفاق می افتد، میخواهم متوجه تفکر پشت sqlserver شوید.)

جواب ساده است، به ما ربطی ندارد! مدیریت فایلها و مکان ها و... به عهده sqlserver است، شما باید به sqlserver وصل شوید نه فایلها! پس اصلاً اهمیتی ندارد فایلها در همین رایانه است که برنامه در ان اجرا میشود یا در چند رایانه در نقاط مختلف پخش شده.
شما ip اتصال به sqlserver و user و pass با اجازه نامه و اعتبارنامه های لازم برای اتصال به دیتابیس مشخصی را دارید، فقط همین اهمیت دارد.

امیدوارم متوجه اصل مطلب و کلام و تفکر در محیط sqlserver شده باشید.


Data Source=192.168.1.10;Initial Catalog=Databasename;Persist Security Info=True;Connect Timeout=45;User ID=Username;Password=Password

----------


## ALI TT

ممنون . من از نسخه ای که خود ویژوال استدیو ارائه کرده استفاده کردم . 
باید چه نرم افزاری رو تهیه کنم ؟
چه ورژن و چه نسخه ای ؟
نام نرم افزار چه هست ؟

----------


## __H2__

سلام



> من از نسخه ای که خود ویژوال استدیو ارائه کرده استفاده کردم ...


اون نسخه Express است، نسخه مجانی و پایین ترین نسخه.
ولی اصلاً نگران نباشید، همین Express هم بسیار عالی است.
من اصولاً ادم سخت گیری هستم و به این راحتی ها راضی نمیشوم ولی با ضعیف ترین نسخه sqlserver هیچ مشکلی ندارم.
تا وقتی رایانه هایی که همزمان قصد اتصال دارند، تعدادشان معقول و حجم دیتابیستان زیر 4G است با نسخه express مشکل نخواهید داشت.
نکته مثبت هم انجا است که هر وقت دیتابیس بزرگ شد یا شبکه به طرز وحشتناکی گسترش یافت، بدون کمترین مشکلی میتوانید نسخه های بالاتر sqlserver را نصب کنید و دیتابیس را به این نسخه های جدید attach کنید.
(
البته یک سری امکانات پیشرفته را هم ساپورت نمیکند، ولی اگر نیاز به ان امکانات هم شد، میتوان باز نسخه های تکمیلی مجانی را برایش دانلود کرد یا نسخه بالاتر را خریداری و نصب کرد.
)


در کل برای پروژه های متوسط و کوچک بد نیست.




> باید چه نرم افزاری رو تهیه کنم ؟
> چه ورژن و چه نسخه ای ؟
> نام نرم افزار چه هست ؟


اگر به فرامین t-sql مسلط باشید، هیچ چیز را نمیخواهد تهیه کنید.!!!!
شما فقط نیاز به یک نسخه sqlserver دارید، چه Express یا Standard یا Workgroup یا Developer یا Enterprise.

(
البته در لفظ یک نسخه با نام Compact هم وجود دارد، ولی من که به شخصه ان را sqlserver حساب نمیکنم، مایکروسافت و دیگران هر چه میخواهند بگویند!
بیشتر شبیه access است، حتی برای اتصال به این نسخه باید کدهای خودتان را هم تغییر دهید و provider را عوض کنید.
کلاً فراموشش کنید.
)

اگر به دستورات t-sql زیاد مسلط نیستید و میخواهید دیتابیس و لوگین و اجازه نامه ها و رمزهای عبور و... و... و... را با کلیک های ماوس تنظیم کنید میتوانید برنامه کمکی Microsoft SQL Server Management Studio را تهیه کنید.

نسخه رایگان Express-2005-Sp2 را میتوانید از زیر دانلود کنید
http://www.microsoft.com/downloads/d...displaylang=en

لازم به توضیح است که اگر CD های نسخه های بالاتر sqlserver را تهیه کنید، ابزار کمکی فوق در آنها هم موجود است.

البته نسخه 2008 هم چند روزی است عرضه شده و فعلاً فقط نسخه 180 روزه آن قابل دانلود است.

----------


## __H2__

سلام
الان یک چرخی در سایت مایکروسافت زدم و متوجه شدن نسخه express2008 هم برای دانلود عرضه شده.
http://www.microsoft.com/downloads/d...DisplayLang=en

----------


## ALI TT

ممنون از توجه تان ----- پس اگه همین نسخه ای که در VS هستش خوبه ، پس چرا گفتید برای کانکشن استرینگی که دادم نمیشه تحت شبکه کار کرد و مثالی نزدید ؟

من یه نرم افزار دارم ، اینه :
EMS MySQL Manager Professional 1.6.5

----------


## __H2__

سلام
اون ConnectionString ای که شما نوشته بودید، نوع غیر attach شده بود.
شما باید دیتابیس را attach کنید و بعد از آن ConnectionString که نوشته بودم (یا چیزی مشابه ان استفاده کنید)

یعنی با نسخه express هم میتوان اینکار را کرد و بدون attach نمیتوان.
اگر با attach مشکل دارید، آن مشکلی جدا است و قابل رفع است.

اون نرم افزار هم که گفتید همانطور که از نامش مشخص است مخصوص MySQL است نه SQLServer.

----------


## ALI TT

> اگر با attach مشکل دارید، آن مشکلی جدا است و قابل رفع است.


میشه کمی توضیح بدید چه جوری میشه attach کرد ؟

----------


## __H2__

سلام
برای attach هم یک سری به تاپیک همچنان فعال زیر بزنید.
barnamenevis.org/showthread.php?t=115957

----------


## ALI TT

اتفاقا خودم از اون موقعی که گفتید (attach) به این تایپیک رفتم .

می خواستم بدونم میشه بصورت اتوماتیک این کار رو کرد . یعنی با نصب نسخه Standard و یا هر چیز دیگه ، خودش این کار رو بکنه ؟

می خواهم از نسخه Express استفاده نکنم ، نسخه چی بخرم ؟

تو همون تایپیک ، اولین پستی که زدید ، من کجا باید اون کد رو وارد کنم ؟

ممنون

----------


## arsalansalar

حالا فرض كنيم كسي حتما بايد با برنامه access نرم افزارش را تحت شبكه كند.مي خواستم اگه راهنماييم كنيد ممنون ميشم.

----------


## fat_roze2000

> حالا فرض كنيم كسي حتما بايد با برنامه access نرم افزارش را تحت شبكه كند.مي خواستم اگه راهنماييم كنيد ممنون ميشم.


تنها راهت ODBC هستش. به غیر از اون فکر نکنم امکانش وجود داشته باشه

----------


## ALI TT

> حالا فرض كنيم كسي حتما بايد با برنامه access نرم افزارش را تحت شبكه كند.مي خواستم اگه راهنماييم كنيد ممنون ميشم.


من هم اول همین فکر رو کردم .... ولی وقتی SQL رو دیدم پشیمون شدم .. SQLserver خیلی باهاله

----------


## __H2__

سلام



> تو همون تایپیک ، اولین پستی که زدید ، من کجا باید اون کد رو وارد کنم ؟
> می خواستم بدونم میشه بصورت اتوماتیک این کار رو کرد . یعنی با نصب نسخه Standard و یا هر چیز دیگه ، خودش این کار رو بکنه ؟


اگر پست 12 همان تاپیک را دیده باشید، من یک نمونه برنامه گذاشته ام که عمل فوق را انجام میدهد، گرچه دوستمان جناب bahar2008 گفتند که کار نکرده ولی در تالار دیگری هم مشکل دوستان حل کرد.

شما هم دانلود کنید و تستی کنید، کدش هم که موجود است، پس نباید جای ابهامی بماند.
فقط کافیست کد را در محل مناسبی از برنامه خودتان استفاده کنید.
https://barnamenevis.org/showth...986#post573986





> می خواهم از نسخه Express استفاده نکنم ، نسخه چی بخرم ؟


تا جایی که من میدانم پنج نسخه اصلی وجود دارد
Express
Standard
Workgroup
Developer
Enterprise

نسخه express مجانی و سبک ترین عضو گروه است
نسخه developer هم نسخه خوب و جامعی است که خودم هم دارم و مخصوص توسعه دهندگان نرم افزارها است.
نسخه Enterprise هم نسخه صنعتی است و سنگین ترین و خفن ترین عضو گروه است.

باید توجه داشت که لزوماً نسخه مثل Enterprise شاید تحت نیاز شما و سیستم شما بهتر از نسخه پایین تر عمل نکند.
نسخه پیشرفته تر و کاملتری که برای مدیریت connection ها و تراکنش ها زیادی طراحی شده یقیناً مصرف RAM و CPU بالاتری دارد و از زمان راه اندازی منابع بیشتری را مصرف میکند تا در اوج ارتباط و پردازش مجبور نباشد مدام منابع را کم و زیاد کند و باعث کاهش سرعت شود.

شما باید نیاز خود را شناسایی کنید و با توجه به ان انتخاب کنید.
چند pc؟ چند کاربر انلاین؟ چند گیگ اطلاعات؟ چقدر ترافیک؟

لینک های زیر شاید بتواند شما را در انتخاب بهتر یاری کند.
www.microsoft.com/sql/editions/default.mspx
technet.microsoft.com/en-us/library/ms143761.aspx
www.microsoft.com/sql/prodinfo/features/compare-features.mspx

فکر کنم به عنوان انتخاب بعد از express نسخه standard بد نباشد.

----------


## jas1387

چگونه ip سروری را پیدا کنم که برنامه قرار است بر روی آن نصب بشود

----------


## __H2__

سلام



> چکار کنم ؟؟؟؟؟


یعنی چی؟؟؟ CD را در سرور بگذارید و چندتا Next ناقابل بزنید تا نصب شود!




> چگونه ip سروری را پیدا کنم که برنامه قرار است بر روی آن نصب بشود


معمولاً در یک شبکه محلی که برای یک شرکت، موسسه یا نهاد و... راه اندازی میشود خودتان دستی ip ها را برای سرور ست میکنید.
پس بدیهی است که آنها را میدانید.

Vista
ControlPanel->Network And Sharing Center->Manage Network Connections->Local Area Connection->RightClick->Properties->TCP/IPv4

XP
ControlPanel->Network Connections->Local Area Connection->RightClick->Properties->TCP/IP


میتوان از آیکون شبکه کوچک کنار ساعت هم استفاده کرد و یا برای ip متناظر نام از ping استفاده کرد و...


در کل اگر شرایط طوری است که نمیتوان به ثبات ip اطمینان داشت میتوانید از نام رایانه استفاده کنید.

Vista
ControlPanel->System->Advanced System Settings->Computer Name

Xp
ControlPanel->System->Computer Name

----------


## ALI TT

تا اینجا که درسته !!!!!

پس این گفته شما چی ؟




> باید توجه داشت که لزوماً نسخه مثل Enterprise شاید تحت نیاز شما و سیستم شما بهتر از نسخه پایین تر عمل نکند.
> نسخه پیشرفته تر و کاملتری که برای مدیریت connection ها و تراکنش ها زیادی طراحی شده یقیناً مصرف RAM و CPU بالاتری دارد و از زمان راه اندازی منابع بیشتری را مصرف میکند تا در اوج ارتباط و پردازش مجبور نباشد مدام منابع را کم و زیاد کند و باعث کاهش سرعت شود.


برم پسش بدم ؟

چون موقع نصب میگه باید VS 2008 SP1 داشته باشی و من SP1 رو ندارم . 
برم با 2005 عوضش کنم .... با هم چقدر فرق دارن ؟

----------


## __H2__

سلام



> برم پسش بدم ؟


به نظر من که باید 2008 بهتر از 2005 باشد، کارایی و امکانات بالاتر و سرعت بیشتر.




> چون موقع نصب میگه باید VS 2008 SP1 داشته باشی و من SP1 رو ندارم .


درسته. این لینک دانلود SP1 است.
http://www.microsoft.com/downloads/d...displaylang=en





> با هم چقدر فرق دارن ؟


متاسفانه من هنوز اطلاعات کاملی در مورد نسخه 2008 ندارم و در این مورد نمیتوانم کمکتان کنم.
پیشنهاد میکنم به خود سایت مایکروسافت مراجعه کنید.
نسخه express را دانلود کردم، ولی خرید یک نسخه کامل را به هفته های آینده موکول کرده ام.
مهمترین امکان کاربردی که تا این لحظه میدانم اضافه شده، پشتیبانی فارسی برای collation است.

----------


## spanishtrain

آقا در مورد برنامه نویسی سوکتی بیشتر توضیح میدی که اصلا چی همون کار با پورتهای TCP/IP هستش یا چیز دیگه ای؟؟؟؟؟

----------


## jas1387

> آقا در مورد برنامه نویسی سوکتی بیشتر توضیح میدی که اصلا چی همون کار با پورتهای TCP/IP هستش یا چیز دیگه ای؟؟؟؟؟


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

----------


## __H2__

سلام



> آقا در مورد برنامه نویسی سوکتی بیشتر توضیح میدی که اصلا چی همون کار با پورتهای TCP/IP هستش یا چیز دیگه ای؟؟؟؟؟


سوکت مثل یک ترمینال است، یک پایانه ورودی و خروجی اطلاعات.
میتوان انواع و اقسام بلوک های بایتی اطلاعات را به وسیله سوکت رد و بدل کرد.

حال اینکه چگونه و با چه فرمت و قالب و استاندارد همگانی تعریف شده ای اطلاعات را بین سوکت ها رد و بدل کنیم، میشود پروتکل.

TCP/IP یکی از پروتکل های تحت شبکه و کار با سوکت ها است.
این پروتکل اتصال گرا است و اطمینان از دست نرفتن اطلاعات در آن زیاد است و پروتوکل استاندارد وب هم شده.

شاید بتوان TCP را معروف ترین و پرکاربرد ترین پروتکل به حساب آورد
خود SQLServer هم از همین TCP استفاده میکند و خیلی دیگر از برنامه های شبکه ای هم تحت TCP کار میکنند.

دات نت هم امکانات وسیعی برای کار تحت TCP دارد.
در مورد کلاسهای مهم زیری ترین لایه و متدهای اصلی و مهمشان، من بسیار بسیار بسیار مختصر در تاپیک زیر توضیحاتی داده ام.
یک نگاهی بیاندازید از هیچی بهتر است.
forum.p30world.com/showthread.php?t=231073&page=2

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

----------


## jas1387

سلام دوست عزیز 

اگر می شود چندتا منبع یا ebook درباره برنامه نویسی تحت شبکه معرفی کنید

----------


## jas1387

نکنه منبع ای برای برنامه نویسی تحت شبکه در اینترنت وجود ندارد و ما بی خبریم

----------


## vb_bmw

سلام.

یه کتاب برای Net Remotting. هست که خود از انتشاراته MMpress هست!خود مدیر بخش توسعه ماکروسافت نوشتش!البته چند نفر دیگه ای هم هستند.

کتابش زبون اصلی و فوق الاده بد نوشته شده و میشه گفت بهترین منبع برای Souket و TCP/IP هست!

کتاب حجمش بالاست من گذاشتم upload بشه.تموم که شد لینکشو میزارم!

من خودم 3 ماه تول کسشد تا بتونم تمومش کنم!نوشتارش مزخرفه ولی سورس کد هاش عالیه!

----------


## jas1387

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

----------


## __H2__

سلام



> نکنه منبع ای برای برنامه نویسی تحت شبکه در اینترنت وجود ندارد و ما بی خبریم


اگر یک کم زبانتان را قوی کنید یا از یک دیکشنری استفاده کنید، به نظر من MSDN خوب است و اغلب کافی است.

----------


## jas1387

پر روی است ولی اگر میشه لینکی از MSDN بگذارید تا ما برای انگلیسی دست پا شکست همان یه فکری بکنیم

----------


## __H2__

سلام
معمولاً این برنامه حجیم را همراه VS خرید و فروش میکنند، شما اگر یک DVD مناسب از VS2008 در ایران بخرید، به احتمال خیلی زیاد MSDN هم دارد.

البته نمونه انلاین هم دارد.
msdn.microsoft.com

مثلاً لینک ریشه اطلاعات در مورد کلاسس System.Net.Sockets.Socket این است: (به الگوی درختی سمت چپ دقت کنید.)
msdn.microsoft.com/en-us/library/system.net.sockets.socket.aspx

msdn برای هر کلاس و ساختاری در دات نت، حداقل یک توضیح مختصر دارد.

در آخر لازم به ذکر است که msdn در توضیح اطلاعات Windows و VS و...، بالاترین درجه مرجعیت را دارد.

----------


## jas1387

> سلام.
> 
> یه کتاب برای Net Remotting. هست که خود از انتشاراته MMpress هست!خود مدیر بخش توسعه ماکروسافت نوشتش!البته چند نفر دیگه ای هم هستند.
> 
> کتابش زبون اصلی و فوق الاده بد نوشته شده و میشه گفت بهترین منبع برای Souket و TCP/IP هست!
> 
> کتاب حجمش بالاست من گذاشتم upload بشه.تموم که شد لینکشو میزارم!
> 
> من خودم 3 ماه تول کسشد تا بتونم تمومش کنم!نوشتارش مزخرفه ولی سورس کد هاش عالیه!


دوست گرامی چی شد ؟ یادتون رفت اگر ممکنه upload کنید که من خیلی بهش نیاز دارم

----------


## jas1387

سلام دوست عزیز

ممنون از لینک MSDN  ، ولی هیچی سر در نیاوردم ( هر چی بیشتر خواندم کمتر فهمیدم)

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

من خیلی دنبال کشتم ولی مثل اینک چاره دیگه ای نیست جز اینک مزاحم شما بشم

بازم ممنون

----------


## __H2__

سلام
اگر بتوانید خودتان را با MSDN مچ کنید و از توضیحات و کدهای نمونه آن استفاده کنید، خیلی خوب و موثر است و شما را به نوعی بی نیاز میکند.

اما در ضمینه کتاب، من به شخصه فقط یک کتاب قدیم را دیدم که در خصوص سوکت هم صحبت هایی کرده بود و مثالهایی اورده بود که البته نسخه مورد بحث Framework1.0 بوده (یعنی قبل از نسخه رسمی VS2003! یک چیز تو مایه های بدو تولید دات نت!) البته مطالب چندان تفاوتی نکرده.
کتاب از دیباگران بوده و نامش هم "برنامه نویسی شبکه در دات نت" بوده است.

----------


## jas1387

سلام

دوست گرامی آیا از برنامه نویسی تحت شبکه به غیر از چت استفاده دیگری می شود لطفا توضیح دهید

ممنون می شوم

----------


## __H2__

سلام
چت فقط یک نمونه است، نمونه ای شاید خیلی ملموس تر باشد.
هر کجا که شما بخواهید دو برنامه در دو رایانه مختلف با هم ارتباط داشته باشند، در اصل نوعی جریان برنامه نویسی شبکه و سوکت در بین است.

رایانه های امروزی دیکر تک و تنها نیستند و استفاده نمیشوند.
- همین اینترنت نمونه عظیمی از برنامه نویسی تحت شبکه شده است. http و ftp و smtp و...

- بالاخره برنامه های بانک های اطلاعاتی مشترک هم نوعی برنامه نویسی شبکه است، گرچه یک موتور دیتابیس رابطه ای مثل SQLServer ظاهراّ ما را از کد نویسی شبکه راحت میکند.
چه برنامه هایی که در یک ساختمان استفاده میشوند چه برنامه های با وسعت بیشتر.

- دنیای بازی را هم نباید فراموش کرد، برنامه نویسی بازی ها و تجارت بازی های رایانه ای بعد از مواد مخدر و تجارت اصلحه و چند تجارت تابلو دیگر، جزء صدر جدول نقل و انتقالات پولی دنیا است.
اغلب بازی های امروزی هم چه تحت کنسول خودشان و چه تحت PC قابلیت شبکه شدن و بازی گروهی دارند.
نمونه بارز آن هم همین بازی های سبک استراتژیک که با همکاری گروهی قابل انجام است و حتی بالای 10 PC هم این بازی ها واقعاً معنی میدهد.

- یا برنامه های مدیریت کافی نت ها و امسال این ها... که رایانه مرکزی میتوانید بقیه رایانه ها را کنترلر کند.
یک چیزی شبیه RemoteDesktop مایکروسافت ولی در بعدی دیگر.

بحث فقط سر چت نیست.

موفق باشید.

----------


## jas1387

سلام 

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

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

یه سوالی داشتم در مورد این کد

 Dim socket As Socket
        socket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
میشه کلش را توضیح بدهید


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

این کار شما دو مزیت خواهد داشت اول اینکه این مقاله شما منبع ای برای برنامه نویسی socket به زبان فارسی می 

شود دوم من هم از این بلاتکلیفی در می آییم ( و البته امثالی مثل من)

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

----------


## jas1387

شاید این حرف من جواب نداشته باشد



> یه پشنهاده داشتم اونم اینک بیاید و یک مقاله در مورد برنامه نویسی socket بنویسید 
> 
> این کار شما دو مزیت خواهد داشت اول اینکه این مقاله شما منبع ای برای برنامه نویسی socket به زبان فارسی می 
> 
> شود دوم من هم از این بلاتکلیفی در می آییم ( و البته امثالی مثل من)
> 
> این حرف من فقط و فقط جنبه پیشنهادی دارد و بس


ولی فکر کنم که این یکی یه جوابی دارد




> یه سوالی داشتم در مورد این کد
> 
>  Dim socket As Socket
>         socket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
> میشه کلش را توضیح بدهید

----------


## __H2__

سلام



> ولی فکر کنم که این یکی یه جوابی دارد


دوست من چقدر عجله دارید، کی گفت جواب نداره؟  :لبخند: 


این دستور فقط یک شی سوکت جدید میسازد، 
که سه پارامتر میگیرد:
addressFamily As System.Net.Sockets.AddressFamily
socketType As System.Net.Sockets.SocketType
protocolType As System.Net.Sockets.ProtocolType

-پارامتر اول ساختار و نوع IP را مشخص میکنید که پرکاربرد ترین گزینه ها InterNetwork برای IPv4 و InterNetworkV6 برای IPv6 است.
(ورژن 4 قدیمی یک عدد 32 بیتی است که برای تعداد رایانه های امروزی دارد کم می آورد! ورژن 6 یک عدد 128 بیتی است که طبیعتاً 2 به توان 96 بار بزرگتر است)

-پارامتر دوم نوع رد و بدل شدن و انتقال دیتا ها را توسط سوکت مشخص میکند. که پرکاربرد ترین آن Stream است که یک زنجیره اطلاعات را مشخص میکند.
احتمالاً باید بدانید Stream به چه مفهوم است، یک قطار دیتا، مثل نوارنقاله  یک کارخانه که بسته های کالا رویش حرکت میکند.
به ذات بسته ها تکرار نمیشوند و قابلیت دسترسی به هر نقطه را ندارید، یک چیزی شبیه دانلود، که بایت به بایت را میگیرد و در هارد ذخیره میکنید.

-پارامتر سوم و اخر هم پروتکل کاری را ست میکند، یک لایه استاندارد بالاتر.
پرکاربرترین گزینه ها هم Tcp و Udp هستند، TCP/IP معروف ترین و پرکاربردترین پروتکل شکه است که اتصال گرا است و یک تضمینی روی اتصال ایمن و رسیدن بسته ها در صورت خطا هم دارد.
==============
سوکت را که ساختید میتوانید از متدهایش استفاده کنید.
شاید معروفترین متد Bind باشد که سوکت را به یک IP و Port خاص وصل میکند.

متدهای Listen و Accept و Send و Receive و Close و BeginXXXX و... هم با توجه به شرایط و نیاز استفاده میشوند.





> یه پشنهاده داشتم اونم اینک بیاید و یک مقاله در مورد برنامه نویسی socket بنویسید


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

البته سوالات این تیپی که بتوان در چند خط جواب داد را در خدمت هستم.

----------


## jas1387

> ولی شرمنده ام که متاسفانه بعد میدانم که وقت کنم


حق با شما است توقع بیجای کردم 




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


این مورد را بعید می دانم




> سری به بخش مقالات و شبکه همین سایت بزنید، شاید چیزی باشد.


یه سری قبلا زدم ولی متاسفانه چیزی پیدا نکردم



> البته سوالات این تیپی که بتوان در چند خط جواب داد را در خدمت هستم.


بزرگوار هستید

----------


## jas1387

سلام 

از محبت های شما سپاسگزارم

برای وصل شدن به سرور بهIP و port نیاز است ( طبق گفته های شما )


 
socket.Bind(پورت و آی پی)
اگر می شود درباره این کدها نیز توضیح بدهید

 
Dim ip As IPAddress = IPAddress.Parse("127.0.0.1") 

به غیر از IPAddress.Parse

IPAddress.Any،IPAddress.BroadcastوIPAddress.Loopback نیز دارد لطفا در مورد هر کدام توضیح 

مختصر و مفیدی بدهید( ممنون می شوم )

فکر کنم باید به IP، IPAddress.Parse کامپیوتر سرور را بدهیم درسته ؟

خبه ولی این که آدرس کامپیوتر سرور نیست



 
Dim ip As IPAddress = IPAddress.Parse("127.0.0.1") 

بعد ازIP به Port نیاز داریم

 
Dim ipep As New IPEndPoint(ip, 5050) 

آیا این کد یک port را تعریف می کند ؟ ( لطفا توضیح دهید)

(IPEndPoint(ip, 5050 ، آیا 5050 شماره پورت است اگر هست فقط از این شماره استفاده می  
شود یا می توان از شماره پورت های دیگر استفاده کرد ، راستی چرا نیاز به پورت داریم مگر آی پی به 

تنهایی کافی نیست


 
socket.Bind(ipep) 

ببخشید که وقتتون را گرفتم اگر وقت ندارید لازم نیست همه سوالات را یک دفعه جواب بدهید

----------


## __H2__

سلام



> چرا نیاز به پورت داریم مگر آی پی به تنهایی کافی نیست


نه کافی نیست.

اول این را مشخص کنم که کامپیوتر شما میتواند بیش از یک IP داشته باشد، چون میتوانید بیش از یک کارت شبکه داشته باشید.
همانطور که خودتان هم میدانید، IP نشانی و آدرس پستی رایانه شما در شبکه است. که مشخص میکند بسته اطلاعات باید تحویل چه رایانه ای شود.

Port به نوعی میتوان گفت کد پستی برنامه داخل رایانه شما است!
شما در یک لحظه میتوانید در حال چک کردن ایمیلتان در برنامه ای باشید، میتوانید با IE یک صفحه وب را ببینید یا به ftp وصل شده باشید و تازه یک برنامه چت هم باز باشد و SQLServer هم در گوشه ای کار خودش را کند ... !
(چه شود! آش شبکه ای!)

در این گیروداد و با یک IP مشخص چگونه اطلاعات تفکیک میشوند و به برنامه مناسب میرسند؟
==============
اعداد پورت های زیر 1024 برای استانداردهای خاصی رزو شده اند
مثلاً

21-FTP control
20-FTP data
80-HTTP
443-HTTPS
135-RPC
53-DNS
143-IMAP
993-IMAP SSL
110-POP3
995-POP3 SSL
135-RPC
23-Telnet 
25-SMTP
 
1433-SQLServer 

اگر برایتان نام پورتهای مهم جالب است، سری به این لینک بزنید
http://www.microsoft.com/resources/d....mspx?mfr=true

یا

http://www.iana.org/assignments/port-numbers


این رزو به معنای این نیست که شما نمیتوانید به انها وصل شوید و استفاده کنید، بلکه یک استاندارد جهانی است
همه انتظار دارند یک سوکت سرور روی پورت 80 خدمات HTTP بدهد نه اینکه سیب زمینی بفروشد!

شما میتوانید از هر پورتی که خالی باشد و برنامه دیگری از آن استفاده نکند، استفاده کنید، برای کارهای خودتان و خارج از چارت پروتکلهای پایه شبکه، بهتر است اعداد بالای 1024 را انتخاب کنید، مثل همان 5050.
==============
برخی اعداد IP ، انحصاری هستند و معنی خاصی دارند
مثلاً
ip4-127.0.0.1 برابر ip6-::1 معروف به loopback همواره به رایانه جاری اشاره میکنند.
(پس هر رایانه حداقل یک ip دارد، حتی بدون کارت شبکه.)
یا
ip4-255.255.255.255 معروف به broadcast آدرسی است که اگر چیزی به آن ارسال شود، همه رایانه ها در شبکه آن دیتا را دریافت میکنند.(ip6 دیگر این را ساپورت نمیکند)
یا
ip4-0.0.0.0 برابر ip6-:: معروف به widcard یا any معرف هر آدرس و هر رابطی است.
و...

==============
حالا میرسیم به IPAddress و IPEndPoint

اینها هیچ پویایی ندارند، فقط یک مخزن ساده هستند مثل ساختار Integer یا Long .
UInteger یک عدد 32 بیتی بدون علامت را نگه میدارد.
String یک متن
IPAddress یک IP را نگه میدارد.
IPEndPoint هم یک IPAddress و یک Integer برای معرفی Port را نگاه میدارد.

متد Parse هم در ساختارهای دات نت عموماً وظیفه تبدیل از String را بر عهده دارد.
مثلاً ورودی که از یک TextBox گرفته شده.
حتی Integer هم متد Parse دارد.
==============
متد Bind که از شما IPEndPoint را میگرید (IP+Port) و میتوانید به یک سوکت وصل شوید.
این سوکت میتواند هر کجا باشد، رایانه خودتان، یا رایانه شبکه، این سر دنیا یا ...

حتماً نباید به سرور وصل شوید! شاید سرور خود شما باشید!
متوجه میشوید؟ یعنی شاید خود شما پورتی را در رایانه خودتان میخواهید باز کنید تا به دیگر رایانه های شبکه سرویسی را ارائه دهید.

اصلاً میتوان در یک رایانه واحد روی یک پورت خاص هم سرور بود و هم کلاینت.
یعنی هم برای خود سرور بود و هم برای دیگران!

یعنی برنامه A در رایانه خود شما که اصلاً کارت شبکه هم ندارد، پورتی را تحت tcp باز میکند و به درخواستهایش پاسخ میدهد
و برنامه B در رایانه خودتان می تواند همان پورت را برای خدمات گیری باز کند و شروع به انتقال دیتا با برنامه A کند.
در یک رایانه واحد و بدون کارت شبکه! چون آدرس loopback را داریم.

البته پروتکلهای اتصال گرایی مثل tcp در هر لحظه فقط و فقط به یک برنامه اجازه میدهند یک پورت را برای سرور بودن و پذیرش درخواستها باز کند.
یعنی در همین مثال فوق:
اگر شما نمونه جدیدی از A را باز کنید تا دو تا شوند، برنامه دوم به خطا میخورد.
ولی اگر 10 تای دیگر از B را باز کنید، مشکلی پیش نمی آید.

واضح است، سرور ثابت است و کلاینت ها خیلی زیاد و خیلی پخش.

پس برای تست کدها و دیدن نتایج حتماً لازم نیست در شبکه ای با چند رایانه باشید.
دلیل اینکه در مثالها این همه آدرس loopback را می بینید برای همین است.
که مثال مربوطه به راحتی در یک رایانه واحد اجرا و تست شود و نتیجه مشاهده شود.
==============
فکر کنم همه سوالات را در متن پاسخ داده ام.

----------


## hector2000

> فکر کنم همه سوالات را در متن پاسخ داده ام.


حاجی سایت برنامه نویس را ترکوندیدها..
خوش بحال اقای کرامتی و اقایون کرامتی ها...

----------


## msh_gold

با سلام آقاي H2 واقعا از توضيحاتتون تشكر مي كنم و از شما خواهش مي كنم كه اين تاپيك را فعال نگه داريد چرا كه عده اي مثل من واقعا به اين اطلاعات نياز داريم.باز هم از تمامي زحماتي كه براي اين سايت مي كشيد تشكر مي كنم  :تشویق:  :تشویق:

----------


## jas1387

سلام 

از توجه شما بسیار ممنونم

 
Dim ip As IPAddress = IPAddress.Parse("127.0.0.1")
 
 
Dim ipep As New IPEndPoint(ip, 5050)
 
Dim socket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
 
 socket.Bind(ipep) 

ببخشید فرق Bind و connect در چه چیزی است ؟

آیا برای فرستادن پیغام کد زیر کافی است ؟ یا نیز به تنضیمات بیشتر دارد.


 
Dim context As String = "welcome"
  Dim t() As Byte
   t = Encoding.ASCII.GetBytes(context)
 socket.Send(t) 


ببخشید این کدهای بالا برای کلاینت است . درسته ؟ ( که آدرس سرور و یه پورت را تعیین می کنیم و 

به وسیله socket به آن وصل می شویم ) اگر هست کد سرور باید چگونه باشد تا بتواند پیغام کلاینت 

را بگیرد

اگر می تواند به صورت مختصر درباره الگریتم سرور و کلاینت توضیح بدهید( من دارم گیج می شم)

----------


## Dariuosh

سلام به آقاي _H2_
ميگم برا اينکه همه از اين اطلاعات استفاده کنند و يه مقدار نظم بيشتري بگيره يه تاپيک به نام آموزش Socket ايجاد کنيد و از ابتدا شروع کنيد (ميدونم اينجا خيلي از مسائل پايه ايي رو گفتيد ) ولي نظم و پي در پي بودن مطالب و چند تا مثال به بهره وري بيشتر کمک ميکنه ، در ضمن اگه شما لطف کردين و زحمت اين کارو کشيدين از آقاي مداح هم خواهش ميکنم که اون تاپيک رو اعلان کنه ، که بعد چند وقت به فراموشي سپرده نشه 
در هر صورت ممنون

----------


## salimi1331

چگونه محتویات داخل یک فایل از نوع ورد  (متن داخل ورد) در یک تکست باکس قرار دهم

----------


## __H2__

سلام



> حاجی سایت برنامه نویس را ترکوندیدها..
> خوش بحال اقای کرامتی و اقایون کرامتی ها...


فرمایشاتی میفرمایید دوست من، شوخی ...





> ..مقدار نظم بيشتري بگيره يه تاپيک به نام آموزش Socket ايجاد کنيد ..


نمیدانم...
انگار تاپیک داره به سمت توضیح بیشتر پیش میره و شاید خواهد رفت.
تا نظر دوستان دیگر چه باشد.
*این تاپیک هم مشکل خاصی ندارد، یعنی آیا تاپیک جدید لازمه؟*
بحرحال اگر دوستان صلاح بدانند من مشکلی ندارم.

البته به نظر من بهتر است اگر قرار بر تاپیک جدید شد، در جایی باشد که در دید هم VB.Net کارها و هم C#‎.Net کارها باشد







> ببخشید این کدهای بالا برای کلاینت است . درسته ؟ ( که آدرس سرور و یه پورت را تعیین می کنیم و 
> 
> به وسیله socket به آن وصل می شویم ) اگر هست کد سرور باید چگونه باشد تا بتواند پیغام کلاینت 
> 
> را بگیرد
> 
> اگر می تواند به صورت مختصر درباره الگوریتم سرور و کلاینت توضیح بدهید( من دارم گیج می شم)


یک کم اجازه دهید تا در فرصت خالی جوابتان را کاملتر تایپ میکنم، و تا ببینیم نظر دوستان راجب تاپیک جدید هم به کجا میرسد.







> چگونه محتویات داخل یک فایل از نوع ورد (متن داخل ورد) در یک تکست باکس قرار دهم


ربطش را به شبکه کردن درک نمیکنم. ولی جهنم ضرر، دو راه ساده دارید، (با اجازه صاحب تاپیک خیلی خیلی کوتاه جواب میدهم.)
- WebBrowse بگذارید و Navigate کنید به ادرس doc.
- فایل Microsoft.Office.Interop.Word را به پروزه Reference کنید و استفاده کنید.



من به شخصه خودم نظر خاصی ندارم (نه این ور و نه ان ور، فقط دات نت!) پس منتظر نظر دوستان در خصوص تاپیک جدید هستم.
جمیعاً موفق و پیروز باشید.

----------


## ALI TT

سلام


یه سوال ساده

من تازه SQL server 2005 رو نصب کردم ، کجا باید برم جدول و پایگاه داده رو درست کنم ؟؟

توی منوی استارت و آل پروگرم یه گزینه اضافه شده

Microsoft SQL Server 2005

و توی آن دو گزینه هست :

SQL Server Management Studio
SQL Server Business Intelligence Development Studio

کدومشه ؟؟

اصلا کجا باید برم ؟؟؟

----------


## __H2__

سلام



> من تازه SQL server 2005 رو نصب کردم ، کجا باید برم جدول و پایگاه داده رو درست کنم ؟؟


برنامه کمکی SQL Server Management Studio یک ابزار جانبی بسیار قدرت متد و ساده در مدیریت SQLServer است.
بعد از اجرا و اتصال به نمونه SQLServer میتواند با رالست کلیک روی Databases بانک جدید خود را تولید کنید.




> ..مقدار نظم بيشتري بگيره يه تاپيک به نام آموزش Socket ايجاد کنيد ..


با توجه به pm دوستان و کمی بالا و پایین کردم تاپیک جدیدی ایجاد کردم.

لینک تاپیک جدید:
https://barnamenevis.org/showthread.php?t=121111

انشا ا... با پیگیر و اتمام هر چه زودتر تاپیک به تمام سوالات بنیادین دوستان در متن تاپیک و در محل مناسب جواب داده خواهد شد.

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

----------


## ALI TT

> اتصال به نمونه SQLServer


این یعنی چی ؟

سرور از کجا بیارم ؟

ممنون ...

----------


## __H2__

سلام



> این یعنی چی ؟
> سرور از کجا بیارم ؟


شما در یک رایانه میتوانید چندین نمونه و نسخه SQLServer را نصب کنید.
یک نمونه SQLServer میتواند پیش فرض باشد و بدون دادن نام هم به ان وصل شد.
سرور هم میتواند رایانه خودتان باشد.

مثلاً اگر در رایانه خودتان برای اتصال به نمونه پیش فرض SQLServer کافیست در کادر اولی management مقدارد ServerName را یک نقطه قرار دهید و اگر User و Pass هم دارید که وارد کنیدف ورگنه OK کنید تا به نمونه پیش فرض SQLServer روی رایانه خودتان وصل شوید.

یا اگر نسخه Express را استفاده میکنید در رایانه خودتان باید از SQLEXPRESS\. استفاده کنید که نقطه معرف رایانه جاری است و....

موفق باشید.

----------


## ALI TT

ممنون

این نسخه Standard هستش .

نقطه زدم ارور داد . اینم متن ارورش :
TITLE: Connect to Server
------------------------------

Cannot connect to ..

------------------------------
ADDITIONAL INFORMATION:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 2)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLS  erver&EvtID=2&LinkId=20476

------------------------------
BUTTONS:

OK
------------------------------



ببین اصلا پنجرش این شکلیه ؟؟؟؟

راستی توی سیدیش دو تا پوشه هستش . یکی زده Tool و دیگری Server . کدومشه ؟؟
من Tool رو نصب کردم ...... Server هم می خواد ؟؟؟

----------


## jas1387

سلام

شما باید در قسمت ServerName نام کامپیوترتان را وارد کنید

----------


## __H2__

سلام



> ببین اصلا پنجرش این شکلیه


میشه گفت بله.
ذات SQLServer اصلاً پنجره ای نداره!
این پنجره برنامه کمکی SQL Server Management Studio است.




> راستی توی سیدیش دو تا پوشه هستش . یکی زده Tool و دیگری Server .


در اصل باید Server نصب شود و Tools ابزار کمکی است، مثل همین برنامه که عسش را گذاشتید.
ولی فکر تا حالا تستی نکرده ام و بعید میدانم بدون نصب هسته SQL Server برنامه SQL Server Management Studio نصب شود.!!!!

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

Start->Programs->Microsoft SQL Server 2005->Configuration Tools->SQL Server Configuration Manager->SQL Server Services

ببنید سرویسی با نام (SQL Server (MSSQLSERVER یا کلاً (SQL Server(XXXXX دارید؟
روشن است یا نه (State=Run)؟ اگر در حال اجرا نیست، راست کلیک کنید و Start را بزنید.
سپس برگردید و مجدداً تست کنید.

----------


## heliaheidari

سلام دوستان من یه برنامه تحت شبکه میخوام بنویسم .برنامم به این صورته که در سرور داده ها از طریق پورت comخونده میشه ودر پایگاه داده ذخیره میشه و من میخواهم که این داده ها در کامپیوتر clientنمایش داده شود برای این کار از socket programmingباید استفاده کنم یا از طریق خود sqlیعنی از امکانات sqlاستفاده کنملطفا راهنماییم کنید خیلی گیج شدم.

----------

