ورود

View Full Version : سوال: نوشتن برنامه ساده ای برای گفتگو



baran_2005
سه شنبه 19 بهمن 1389, 13:18 عصر
سلام
من یک برنامه میخوام بنویسم که خیلی ساده فقط پیام به شخصی در شبکه محلی ارسال و به محض ارسال اون شخص روی صفحه خودش مشاهده کند . در مورد برنامه های چت جستجو کردم همه دارای مشکل بودن و بعد از یک مدت که باز هستن به خطا میخورن .
الان از دو تا کامپوننت tcpclient و tcpserver استفاده کردم .ed_line اسم edit که پیام مینویسم و ChatWnd اسم memo که اطلاعات داخلش نمایش داده میشود و Host ادرس ایپی رو وارد میکنم . در رویداد ocaccept شی سرور کد زیر گذاشتم

procedure TFrm_Chat.TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
var
s: string;
begin
s := ClientSocket.Receiveln;
while s <> '' do
begin
ChatWnd.Lines.Add(s);
s := ClientSocket.Receiveln;
end;

end;
و در دکمه برقراری ارتباط کد

procedure TFrm_Chat.BTN_OKClick(Sender: TObject);
begin
try
TcpServer1.Active := False;
TcpServer1.LocalPort := '8080';
TcpServer1.Active := True;
ED_Line.Enabled :=true;
except
showmessage('برقراری ارتباط ناموفق');
end;
end;

و در دکمه ارسال پیام کد

procedure TFrm_Chat.BTN_ReturnClick(Sender: TObject);
begin
TcpClient1.RemoteHost := Host.Text;
TcpClient1.RemotePort := '8080';
try
if TcpClient1.Connect then
TcpClient1.Sendln(ED_Line.Text);
ChatWnd.Lines.Add (' من : '+ ED_Line.Text);
finally
TcpClient1.Disconnect;
end;
end;


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

Mask
سه شنبه 19 بهمن 1389, 19:17 عصر
من درست متوجه نشدم که...:متفکر:
یعنی میخواهید یه مسیج به کلاینتتون بفرستی.؟
همین؟

nsco_nsco
چهارشنبه 20 بهمن 1389, 06:14 صبح
سلام دوست من همیشه به جای که بری خودت داغون بشی تا یک کاری انجام بدی اول برو تحقیق کن و بعد دست به کار شو من بیشتر چیزهایی که لازم داشتم رو به صورت رایگان و یا ارزان پیدا کردم بدون بجز تو هم حتما کس دیگه ای با این مشکل رو به رو شده من حالا یک نرم افزار بهت معرفی می کنم البته درست باهاش کار نکردم و شاید بگم حول و هوش 7-8 سال پیش خریدمش ولی خیلی کامل و جالبه و فراتر از اونی که می خوای خوب اسمش هست :

PcAnywhere
خوب قابلیت هاش :
ایجاد امکان اتصال به کامپیوترهای در هر نقطه از دنیا دقیقا همانند اینکه در مقابل هم هستند .
توانایی اتصال به کامپیوتر های دیگر از طریق لن و ون و یا درگاههای سریال و یا درگاههای موازی .
امکان اپلوید و دانلود کردن فایل با حجم بالا . که از طریق ایمیل غیر قابل انتقال نیستند به سیستم مقابل .
دسترسی به کامپیوتر مقابل جهت رفع اشکال نرم افزاری و یا نصب نرم افزار .
قابلیت استفاده از ابزارهای جانبی کامپیوتر مقابل مانند پرینتر
و امکانات دیگر
البته بگم اموزشش هم همراه سی دی هست اگر مشکلی داشتی خبرم بده کمکت می کنم در ضمن برای برنامه های چت نیز می تونی از چت تی اکس تی که روی یک هاست می ریزی استفاده کنی که خیلی هم ساده هست و دیگر هم مشکلی به وجود نمی اید فکر کنم سایت زیر در مورد این نرم افزار چیزی گفته باشد :
http://www.anyplace-control.com/pcanywhere.shtml
موفق باشی :قلب:

Felony
چهارشنبه 20 بهمن 1389, 06:22 صبح
تو بخش شبکه در دلفی همین چند وقت پیش یک نمونه برنامه چت 2 طرفه برای کاربر Dephi-7 قرار دادم که هیچ مشکلی هم نداره .

* کدهاتون هم سرتا پا مشکله ، وقت ندارم براتون تصحیح کنم .