-
نوشتن برنامه تحت شبکه محلی
سلام
زیاد در این سایت جستجو کردن ولی خیلی برام پیچیده بود .
من در برنامه تحت شبکه تازه کارم .
می خوام سوال بگیرم برای اینکه بتونم یک برنامه برای یک شبکه محلی بنویسم :
به این صورت که یک سرور و دو کلاینت داشته باشم . از چه کنترل هایی در دلفی استفاده کنم بهتره ؟
در ضمن SQL Server هم روی سیستم سرور نصب باشه و بقیه دو سیستم دیگه از طریق شبکه از سرور سرویس بگیرند(حذف و اضافه کردن رکورد و ...).
با تشکر
-
نقل قول: نوشتن برنامه تحت شبکه محلی
اگر فقط صرف کار با بانک اطلاعات تحت شبکه و SQLسروره از کامپوننت خاصی نیاز نیست که استفاده کنی همون ADO کافیه ، چون قرار نیست بین کلاینتها اطلاعاتی رد و بدل بشه که نیاز به سوکت و غیره داشته باشی!
-
نقل قول: نوشتن برنامه تحت شبکه محلی
اگه SQL Server رو سرور نصب باشه دیگه نیاز به نصب SQL Server یا اجزای دیگه روی کلاینت هم است یا نه ؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
خیر، فقط دسترسی به سرور نیازه!
-
1 ضمیمه
نقل قول: نوشتن برنامه تحت شبکه محلی
من همه این کارها را انجام دادم(یعنی ارتباط بین سرور و کلاینت برقرار است و در برنامه ای که در کلاینت می خوام اجراش کنم IP کلاینک رو ست کردم) ولی چرا این خطا می ده ؟
ضمیمه 84097
-
نقل قول: نوشتن برنامه تحت شبکه محلی
ببخشید منظورم IP سیستم سرور بود!
-
نقل قول: نوشتن برنامه تحت شبکه محلی
مشکل شما باید از کانکشن استرینگتون باشه!
یوزر آی دی و پسورد اسکیول سرور هم باید درست تنظیم بشه...
مثل : Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sa;Initial Catalog=DbaseName;Data Source=ServerName;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=ClientName;Use Encryption for Data=False;Tag with column collation when possible=False
-
نقل قول: نوشتن برنامه تحت شبکه محلی
من هم همون را گذاشتم ولی با این تفاوت که من IP سیستم سرور را هم اینجا ست کردم :
'Provider=SQLOLEDB.1;Password=*****;Persist Security Info=True;User ID=sa;Initial Catalog=Example;Data Source=192.168.0.1'
-
نقل قول: نوشتن برنامه تحت شبکه محلی
در ضمن این تنظمات کانکشن هم تو سیستم سرور درست کار می کنه ولی تو سیستم کلاینت خطا می ده؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
کلاً ADO را کم کم باید به فراموشی سپرد. توجه داشته باشید که انجام این کارها در دلفی بسیار آسان است. یکی از روش های انجام این کار توسط DataSnap و dbExpress می باشد.
اما در مورد SQL Server باید بگویم که در سیستم کلاینت هم شما نیاز به Microsoft SQL Server 2008 Native Client خواهید داشت که باید آنرا از آدرس زیر دانلود کنید:
http://www.microsoft.com/download/en...ng=en&id=16177
در مورد نحوه پیاده سازی سرور و کلاینت ها هم من قبلاً مقاله ای را در همین زمینه را در آدرس زیر قرار داده ام:
https://barnamenevis.org/showthread.p...A7-DataSnap-XE
-
نقل قول: نوشتن برنامه تحت شبکه محلی
دوستان من این برنامه Microsoft SQL Server 2008 Native Client را نصب کردم ولی باز هم در سیستم کلاینت همون خطا را میده . به نظر شما دوستان دیگه می تونه مشکل از چی باشه؟
در ضمن روش اتصال هم ADO Connection است .
با تشکر
-
نقل قول: نوشتن برنامه تحت شبکه محلی
نقل قول:
=شاهین عشایری;1462739]کلاً ADO را کم کم باید به فراموشی سپرد. توجه داشته باشید که انجام این کارها در دلفی بسیار آسان است. یکی از روش های انجام این کار توسط DataSnap و dbExpress می باشد.
حداقل توی این سایت یک مثال ساده از نحوه کارکرد datasnap , dbExpress وجود ندارد
[QUOTE]=اما در مورد SQL Server باید بگویم که در سیستم کلاینت هم شما نیاز به Microsoft SQL Server 2008 Native Client خواهید داشت که باید آنرا از آدرس زیر دانلود کنید: [/URL]http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=16177[/URL] [QUOTE ]
آیا منظور شما در مورد حالتی است که از ADO استفاده شود؟
چون معمولا بر روی کلاینت چیزی نصب نمی شود
امکان داره یک کم بیشتر توضیح بدید؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
دوستان کسی نمی دونه که چرا در سیستم کلاینت این خطا میده؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
بهتره کانکشن استرینگی که استفاده می کنید به صورت کامل قرار بدید، احتمالا شما Workstation ID به طور صحیح تعریف نکرده باشید!
-
1 ضمیمه
نقل قول: نوشتن برنامه تحت شبکه محلی
این هم شکل کانکشن :
ضمیمه 84209
رو سیستم سرور که دیتابیس SQL نصب است درست جواب میده ولی رو سیستم کلاینت ها خطایی ک در پست 5 این تاپیک قرار دادم میده !
با تشکر
-
نقل قول: نوشتن برنامه تحت شبکه محلی
خب WorkStationID در کانکشن استرینگ رو چی تعریف کردید؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
اگه منظورتان از WorkStationID ، آی پی سیستم سرور است که من در قسمت Server Name آی پی سیستم سرور را وارد کردم !
ولی اگه منظورتان آی پی سیستم کلاینت است که وارد نکردم یعنی نمی دونم از کجا وارد کنم !
-
نقل قول: نوشتن برنامه تحت شبکه محلی
شما همون کانکشن استرینگی رو که در پستهای قبلی قرار دادم را استفاده کنید و فقط اطلاعات مربوط به بانک خودتون مثل نام بانک، پسورد یوزر sa، نام سرور و نام کلاینت رو تغییر بدید، با این تفاسیر اگر دسترسی به سرورتون مشکلی نداشته باشه دیگه نباید پیام خطایی رو ببینید!
-
نقل قول: نوشتن برنامه تحت شبکه محلی
همه این تغییرات را انجام دادم ولی باز هم همون خطای اولی را می گیره !!
شبکه هم که درسته !
-
نقل قول: نوشتن برنامه تحت شبکه محلی
دوست عزیز. کانکشن استرینگ یه مقداره رشته ایی هست. که شما غیر از ویزارد دلفی میتونید به صورت دستی پرش کنید و ADOconnectioneton رو True کنید.
اولین کار واسه رفع مشکلتون :
مقدار کانکشن استرینگ خود سرور رو به صورت دستی بدید.
و مقدارش رو هم اینجا بزارید.
تا مقدار کانکشن استرینگ بر روی کلاینتهات رو بهت بگم.
واسه اینکه مقدار کانکشن استرینگ رو در بیاری.: به صورت ویزارد دلفی برنامه رو وصل کن به بانک. بعدش adoconnection رو سلکت کن و در پروپرتیس روی کانکشن استرینگ کلیک کن و دکمه کنترل+سی رو بزن.
و اینجا پیست کن.
تا ادامه ماجرا...
-
نقل قول: نوشتن برنامه تحت شبکه محلی
این Connection String برای سرور :
ADOConnection1.ConnectionString :='Provider=SQLOLEDB.1;Password=98765;Persist Security Info=True;User ID=sa;Initial Catalog=Example;Data Source=HASAN-PC';
ADOConnection1.Connected := true;
حالا برای کلاینت ...
-
1 ضمیمه
نقل قول: نوشتن برنامه تحت شبکه محلی
دوست عزیز
برای برنامه کلاینت و سرور یه کانکشن استرینگ باید تعریف کنی.
به عکس زیر دقت کن.
در فیلد اول ابتدا آی پی سرور و سپس \ و سپس نام کامپیوتر سرور رو وارد کن. بعدش تو اسکیو ال منیجرت در قسمت سکیوریتی یه یوزر با پسور بساز و در فرم در قسمت یوزر نیم و پسوورد وارد کن .
و بقیه تنظیمات.
این تنظیمات در برنامه کلاینت و سرور یه جوره.
موفق باشی.
-
نقل قول: نوشتن برنامه تحت شبکه محلی
نقل قول:
در فیلد اول ابتدا آی پی سرور و سپس \ و سپس نام کامپیوتر سرور رو وارد کن.
نیازی به این کارهای نیست ؛ کافیه سرویس SQL Browser روی سیستم سرور در حال اجرا باشه تا اسم سرورها رو بتونید در لیست ببینید و سرور مورد نظر رو انتخاب کنید .
-
نقل قول: نوشتن برنامه تحت شبکه محلی
سلام - مرسی جالب بود
راستش منم یه برنامه با دلفی هفت نوشتم که بانک اطلاعاتیش sql2000 هست منم می خوام فایل اجرای این برنامه رو به اشتراک بذارم و تو شبکه محلی به صورت شبکه ای از آن استفاده کنن - اما منم مشکلات شما رو دارم .حالا من چی کار کنم - اگه امکانش هست کمی واضحتر بگین.
آیا باید تنظیمات خود sql رو تغییر بدیم ؟
یا نه از سریق خود دلفی باید کاری انجام بدیم؟
آیا حتما باید جهت اتصال به پایگاه داده نام کاربری و رمز ورود تعریف کنیم ؟؟؟؟؟؟؟؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
اگه امکانش هست با یه مثال ساده برای من توضیح بدین
-
نقل قول: نوشتن برنامه تحت شبکه محلی
شما باید روی سرور SQLServer را نصب کنید و فایل اجرایی را روی کلاینتها نصب کنید و اگر از ADO استفاده کرده باشید در ConnectionString مربوط به ADOConnection باید مسیر دیتابیس را همانطور که در پست 22 گفته شد تنظیم کنید
نیازی به کار خاصی در SQLServer و سرور نیست در برنامه دلفی اگر تا حالا نام سرور را در Select or enter server name : وارد نمی کردید حالا باید وارد کنید(مطابق شکل پست 22)
-
نقل قول: نوشتن برنامه تحت شبکه محلی
دقت داشته باشید که نتها یک سرویس sql روی سیستمتان نصب باشد
در زمان نصب visual studio اصولاً یک sql express نیز نصب می شود و شاید خودتان هم یک sql enterprice هم نصب کرده باشید که اون موقع بایستی سرویستون رو معرفی کرده باشید....
-
نقل قول: نوشتن برنامه تحت شبکه محلی
منم همین مشکلو دارم نتیجه بحث چی شد؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
سلام.
دوستان مشکل از کانکشن استرینگ نیست،
باید از داخل sql server وارد بخش Security بشین و از اونجا وارد بخش Logins و یک کاربر جدید اضافه کنید و نام کاربری آن را نام کامپیوتری که میخواهید به sql دسترسی پیدا کند را بگذارید همین.
-
نقل قول: نوشتن برنامه تحت شبکه محلی
نقل قول:
نوشته شده توسط
PayamKazemi
سلام.
دوستان مشکل از کانکشن استرینگ نیست،
باید از داخل sql server وارد بخش Security بشین و از اونجا وارد بخش Logins و یک کاربر جدید اضافه کنید و نام کاربری آن را نام کامپیوتری که میخواهید به sql دسترسی پیدا کند را بگذارید همین.
من sa رو نام کاربری میزارم رمزم بهش میدم اما نمیشه ، فک نمیکنم اگه sa داشته باشیم نیازی به ساختن کاربر باشه درسته؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
یه یوزر واقعی بسازید با پسوورد ، تست کنید ، ببینید جواب میگیرید؟
-
نقل قول: نوشتن برنامه تحت شبکه محلی
حتی وقتی من میزنم (local) میتونم تو لوکال وصل شم اما وقتی میزنم 127.0.0.1 نمیشه! این مشکل از کجاش میتونه باشه؟
(من از Instance استفاده میکنم اینطوری می نویسمش:
local)\Instance
-
نقل قول: نوشتن برنامه تحت شبکه محلی
-
نقل قول: نوشتن برنامه تحت شبکه محلی
نقل قول:
نوشته شده توسط
مجتبی تاجیک
127.0.0.1\Instance
دوست عزیز امتحان کردم نشد
-
نقل قول: نوشتن برنامه تحت شبکه محلی
با سلام
دوستانی که از سمت کلاینت نتیجه نمی گیرن ... باز بودن پورت SQL Server رو هم بررسی کنند.
واسه تستش هم میتونید فایروال سرور رو off کنید و نتیجه رو ببینید.
موفق باشید ... :لبخندساده:
-
نقل قول: نوشتن برنامه تحت شبکه محلی
نقل قول:
نوشته شده توسط
حسین خانی
با سلام
دوستانی که از سمت کلاینت نتیجه نمی گیرن ... باز بودن پورت SQL Server رو هم بررسی کنند.
واسه تستش هم میتونید فایروال سرور رو off کنید و نتیجه رو ببینید.
موفق باشید ... :لبخندساده:
اصلا تو لوکال هم نمیشه!