PDA

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



m_zamani
چهارشنبه 29 فروردین 1386, 13:39 عصر
سلام
من یه windows application نوشتم حالا بخوام تحت شبکه(کلاینت سرور) کار کنه باید چه تنظیماتی انجام بدم؟

near_86
چهارشنبه 29 فروردین 1386, 20:39 عصر
منم می خوام اینکارو باvb.net2005 انجام بدم
هر کاری کردم نشد

اگه تنظیمی داره لطفا بگین

مهدی نان شکری
چهارشنبه 29 فروردین 1386, 21:40 عصر
میشه بگین بر نامه شما چی کار انجام می ده؟

DonetKarvb
پنج شنبه 30 فروردین 1386, 00:29 صبح
اگر منظورتون سکوت پروگرمینگ است که یک نگاه به اینجا بندازید:
winsock در net. (http://www.dotnetsource.com/fa/forum/default.aspx?g=posts&t=444)
اگر منظورتون یک برنامه ای است که دیتابیس دارد باید بدین صورت عمل کنید که روی سرور دیتابیس را قرار میدهید و روی کلاینت(ها) برنامه را و در داخل کانکشن استرنگ به جای نام سرور نام کامپیوتر سرور یا IP سرور را مینویسید. برای دیتابیس Access هم آدرس شبکه ای فایل را قرار میدهید که چیزی شبیه زیر میشود.
//Server Computer Name/Access Datapase path

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

m_zamani
شنبه 01 اردیبهشت 1386, 07:53 صبح
Dim servernam As String
servernam = "ip"
strcon = "workstation id='" & servernam & "';packet size=4096;integrated security=SSPI;data source='" & servernam & "' ;persist security info=False;initial catalog=enter"


این constring اشتباست؟
آخه ارتباط با سرور برقرار نمیشه که
ip همون ip سرور رو میذارم

iman_s52
شنبه 01 اردیبهشت 1386, 08:01 صبح
پس شما اطلاعات رو از کجا میخواین ببینی ؟؟؟

m_zamani
شنبه 01 اردیبهشت 1386, 08:25 صبح
من از روی سرور دیگه، مگه نباید اینجوری باشه؟

DonetKarvb
شنبه 01 اردیبهشت 1386, 08:32 صبح
Dim servernam AsString
servernam = "ip"
strcon = "workstation id='" & servernam & "';packet size=4096;integrated security=SSPI;data source='" & servernam & "' ;persist security info=False;initial catalog=enter"


این constring اشتباست؟
آخه ارتباط با سرور برقرار نمیشه که
ip همون ip سرور رو میذارم
جناب زمانی اولا" این Connection string شما مشکوک میزنه.
ثانیا" .قتی که شما میخواهید به یک سرور وصل شید دارید به صورت ریموت کانکت میشوید پس در سمت سرور شما یک لوگین (که عضو رول sysAdmin باشه)+ پسورد ایجاد کنید و بعد در کانکشن استرینگتون این یوزر نیم و پسورد رو وارد کنید.


Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

در ضمن SQL Server باید اجازه SQL Authentication رو هم بدهد. که میتونید روی سرور راست کلیک کنید در بخش تنظیمات Security این گزینه را به mixMode نغییر دهید. همچنین تو بخش Connection گزینه RemoteConnection را نیز تیک بزنید.
حتما" نیاز نیست که IP وارد کنید. میتوانید نام کامپیوتر سرور را نیز وارد کنید.
اگر در ادامه کار به اروری برخوردید لطف کنید که ارور را اینجا کپی کنید.

m_zamani
شنبه 01 اردیبهشت 1386, 08:47 صبح
میشه بیشتر توضیح بدین؟

DonetKarvb
شنبه 01 اردیبهشت 1386, 08:56 صبح
میشه بیشتر توضیح بدین؟
کجاش رو؟ لطف کنید برای اینکه خودتون زودتر به نتیجه برسید سوالتون رو کامل بپرسید.
من توی صبحت هام به چند تا نکته اشاره کردم. کدامش برای شما مبهم بود؟

m_zamani
شنبه 01 اردیبهشت 1386, 09:35 صبح
login رو چجوری ایجاد کنم؟
من وقتی sql رو ایجاد میکردم براش یوزر و پسوورد نذاشتم

DonetKarvb
شنبه 01 اردیبهشت 1386, 09:54 صبح
login رو چجوری ایجاد کنم؟
من وقتی sql رو ایجاد میکردم براش یوزر و پسوورد نذاشتم
با این دستور شما یک لوگین ایجاد میکنید که به کل سرور دسترسی دارد:


Create login zamani with password='1'
SP_addsrvroleMember 'Zamani','Sysadmin'

حالا تو کانکشن استرنگت بنویس:

Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=zamani;Password=1;
حالا ادامه بده.
هر جا به مشکل بر خوردی بگو.

m_zamani
شنبه 01 اردیبهشت 1386, 10:28 صبح
خوب این login رو تو کدوم قسمت برنامه ایجاد کنم؟
ببخشیدا

DonetKarvb
شنبه 01 اردیبهشت 1386, 10:41 صبح
خوب این login رو تو کدوم قسمت برنامه ایجاد کنم؟
ببخشیدا
خواهش میکنم.
تو SQL Server این دستورات رو بنویس
اون تنظیمات ریموت کانکشن و .. هم مال SQL server بود.

m_zamani
شنبه 01 اردیبهشت 1386, 11:15 صبح
من ازsql خود دات نت استفاده میکنم و اصلا کاری با خود sql ندارم

DonetKarvb
شنبه 01 اردیبهشت 1386, 12:55 عصر
من ازsql خود دات نت استفاده میکنم و اصلا کاری با خود sql ندارم
شما از ویرایش Express استفاده میکنید. این ویرایش فاقد محیط گرافیکی است. شما نمیتوانید کاری با خود SQL Server نداشته باشید. چون در نهایت باید تنظیماتی را روی SQL Server انجام دهید. شما یا magment Studio را از سایت مایکروسافت دانلود کنید و یا اینکه این تنظیماتی را به یه نحوی از داخل خود VS انجام دهید.

یعد از طی این مراحل و دیدن پست آخرتون خیلی کنجکاو شدم که بدانم منظور و هدف واقعیتون از ایجاد این تاپیک چیه؟ آیا شما در یک شبکه دارید کار میکنید و به مشکل برخوردید یا دارید از مشکلات احتمالی پیشگیری میکنید و...
اگر در شکبه هستید که بهتره روی سرور یک ویرایش مناسب نصب بشه و داری محیط های گرفیکی جهت مدیریت باشد. هرچند که خود SQL Server 2005 Express Edition به تنهایی یک ویرایش کامل هست.
اگر در شبکه کار نمی کنید پس این مراحل را چگونه میخواهید تست کنید؟؟

m_zamani
شنبه 01 اردیبهشت 1386, 13:10 عصر
ببینید من sql server 2000 رو نصب کردم رو سیستم خودم که میخوام بعنوان سرور امتحانی ازش استفاده کنم. تنها کاری که با sql انجام دادم فقط ایجاد database بود. بقیه کارها رو تو خود دات نت انجام دادم اما برای sql2000 نه express حالا میخوام برنامم که روی کامپیوتر خودم اجرا میشه و هیچ مشکلی نداره رو بتونم روی کامپیوترهای دیگه توی یک شبکه lan اجرا کنم.بطوریکه پایگاه داده فقط روی سیستم خودم باشه

DonetKarvb
شنبه 01 اردیبهشت 1386, 13:49 عصر
ببینید من sql server 2000 رو نصب کردم رو سیستم خودم که میخوام بعنوان سرور امتحانی ازش استفاده کنم.
منظورتون از سرور امتحانی چیه؟


تنها کاری که با sql انجام دادم فقط ایجاد database بود. بقیه کارها رو تو خود دات نت انجام دادم
یعنی از SP,Veiw, Function و... استفاده نمی کردی و فقط با استفاده از SQLCommand یک دستور SQL نظیر Select را اجرا میکردید؟؟


اما برای sql2000 نه express
یعنی شما از SQL Server 2005 استفاده نکردید؟


حالا میخوام برنامم که روی کامپیوتر خودم اجرا میشه و هیچ مشکلی نداره رو بتونم روی کامپیوترهای دیگه توی یک شبکه lan اجرا کنم.
تنها تفاوت برنامه ای که به صورت لوکال با برنامه ای که در شبکه کار میکنه تفاوت در کانکشن استرینگ های آنها هست. پس وقتی که دارد به صورت لوکال کار میکنید همانند این است که برنامه شما در شبکه است.


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

m_zamani
شنبه 01 اردیبهشت 1386, 14:08 عصر
نمیخوام هر کامپیوتری یه sql server داشته باشه، اما connection string رو نمیدونم چطوری تنظیم کنم که از روی کامپیوترهای دیگه هم اجرا بشه.
اسم کامپیوتر سرور رو تو connection string میدم اما نمیشه