نقل قول: مشکل در نوشتن برنامه چت
حداقل از تگ جاوا استفاده کن ، بتونیم بخونیمش ......
نقل قول: مشکل در نوشتن برنامه چت
نقل قول:
نوشته شده توسط
[younes]
حداقل از تگ جاوا استفاده کن ، بتونیم بخونیمش ......
من از تگ جاوا استفاده کردم نمی دونم چرا عمل نمی کنه
نقل قول: مشکل در نوشتن برنامه چت
بهتر نیست کدش رو بذارید و همچنین نحوه استفادش رو توضیح بدید تا ما هم با خطایی که گفتید روبرو بشیم
نقل قول: مشکل در نوشتن برنامه چت
نقل قول:
نوشته شده توسط
vahid-p
بهتر نیست کدش رو بذارید و همچنین نحوه استفادش رو توضیح بدید تا ما هم با خطایی که گفتید روبرو بشیم
کدش رو گذاشتم
نقل قول: مشکل در نوشتن برنامه چت
در cmd ویندوز این کد رو وارد کنید netstat -nao تا وضعیت پورت ها رو ببینید.
ضمنا منظورم از سورس کد، کل سورس کد بود تا بتونیم اجرا کنیم (آماده اجرا باشه). و همچنین مراحلی که شما طی میکنید تا به این خطا بر میخورید تا به مشکل شما بربخوریم.
نقل قول: مشکل در نوشتن برنامه چت
نقل قول:
نوشته شده توسط
vahid-p
در cmd ویندوز این کد رو وارد کنید netstat -nao تا وضعیت پورت ها رو ببینید.
ضمنا منظورم از سورس کد، کل سورس کد بود تا بتونیم اجرا کنیم (آماده اجرا باشه). و همچنین مراحلی که شما طی میکنید تا به این خطا بر میخورید تا به مشکل شما بربخوریم.
سلام ممنون بابت توجهتون رابط گرافیکی برنامه رو با نت بینز طراحی کردم به همین خاطر سورس کد برنامه خارج از محیط نت بینز مرتب نیست
نقل قول: مشکل در نوشتن برنامه چت
مثلا اون کلاس Server_Side که در کد بالا استفاده شده، کجاست کدش من نمیبینم؟ برای همین میگم کل سورس رو بذارید (مثل این پست https://barnamenevis.org/showthread.php?535057 کد پروژه رو بذارید تا بتونم اجرا کنم).
چند بار خواستم کل سورس کد رو بذارید، ولی هر بار یه چیزی میگید (شایدم گذاشتید، من که نمیبینم جز چند خطی که تو پست اول گذاشتید).
شاید من منظورم رو بد رسوندم و شاید شما متوجه منظور من نمیشید.
گفتم:
سورس پروژه (نت بینز یا هر چی شامل فولدرها srcوbuild و... و فایلها) در یک فایل zip قرار بدید و بفرستید.
بعلاوه
چه مراحلی رو اجرا میکنید که به اون خطا بر میخورید.
این ها رو که انجام دادید، اگر مشکلتون رو بدونم پاسخ میدم. اگر سورس نمیتونید بذارید، منم متاسفانه نمیتونم راهنمایی کنم (با اون دستوری که گفتم خودتون مشکل رو پیدا کنید).
موفق باشید
نقل قول: مشکل در نوشتن برنامه چت
نقل قول:
نوشته شده توسط
vahid-p
مثلا اون کلاس Server_Side که در کد بالا استفاده شده، کجاست کدش من نمیبینم؟ برای همین میگم کل سورس رو بذارید (مثل این پست
https://barnamenevis.org/showthread.php?535057 کد پروژه رو بذارید تا بتونم اجرا کنم).
چند بار خواستم کل سورس کد رو بذارید، ولی هر بار یه چیزی میگید (شایدم گذاشتید، من که نمیبینم جز چند خطی که تو پست اول گذاشتید).
شاید من منظورم رو بد رسوندم و شاید شما متوجه منظور من نمیشید.
گفتم:
سورس پروژه (نت بینز یا هر چی شامل فولدرها srcوbuild و... و فایلها) در یک فایل zip قرار بدید و بفرستید.
بعلاوه
چه مراحلی رو اجرا میکنید که به اون خطا بر میخورید.
این ها رو که انجام دادید، اگر مشکلتون رو بدونم پاسخ میدم. اگر سورس نمیتونید بذارید، منم متاسفانه نمیتونم راهنمایی کنم (با اون دستوری که گفتم خودتون مشکل رو پیدا کنید).
موفق باشید
سلام عذر می خوام سورس کد سرور و کلاینت رو توی همون پست اصلی آپلود کردم
نقل قول: مشکل در نوشتن برنامه چت
بعضی وقتا مثل اینکه کد یک بار که اجرا میشه، اون پورت رو میگیره، برنامت تو یه لوپ همچین چیزی افتاده و یا در دفعات بعدی اون پورت چون از قبلا اشغال شده این اررور میده.
یکم دستکاریش کردم، اون اررور رو نمیده، ولی مشکلی که داره کلا کد رو بد نوشتی. من علت اون حلقه داخل کلاس Receive رو نگرفتم.
به هر حال کد رو از اول بنویسید. این رو در نظر بگیرید که شما بعد از اینکه در سرور so.accept() جوابش رو گرفتید، اون راه ارتباطی شما با کلاینت مورد نظر هست. پس سعی کنید چندین بار رو این پورت که قبلا استفاده شده، یا در کلاینت کار تکراری در این زمینه انجام ندید (مثل اون حلقه ای که نوشته بودید).
ضمنا در بخش فیلدها، متغیرها رو مقدار دهی نکنید. در کانستراکتور بنویسید یا یه متد دیگه.
بعد که تونستید یکبار اینکار رو به خوبی انجام بدید، اونوقت سعی کنید برنامه سرور رو بهترش کنید و اینکه بتونه چندین کلاینت بهش وصل بشه و...
همچنین این رو اضافه کنید که اگر ارتباط قطع شد، کلاینت دوباره سعی کنه خودش رو به سرور متصل کنه (مثلا در فاصله های زمانی 5 ثانیه تست کنه مثلا ده مرتبه سعی کنه و اگر نشد خطای اشکال شبکه به کاربر بده).
ولی این دو مورد رو بعدا سعی کنید. نمیخواد همه چیز از اول وارد بشه.
ضمنا پیشنهاد میکنم اول اون بخش اول رو بدون رابط گرافیکی انجام بدید تا کدتون شلوغ نشه بدونید دارید چیکار میکنیید
نقل قول: مشکل در نوشتن برنامه چت
نقل قول:
نوشته شده توسط
vahid-p
بعضی وقتا مثل اینکه کد یک بار که اجرا میشه، اون پورت رو میگیره، برنامت تو یه لوپ همچین چیزی افتاده و یا در دفعات بعدی اون پورت چون از قبلا اشغال شده این اررور میده.
یکم دستکاریش کردم، اون اررور رو نمیده، ولی مشکلی که داره کلا کد رو بد نوشتی. من علت اون حلقه داخل کلاس Receive رو نگرفتم.
به هر حال کد رو از اول بنویسید. این رو در نظر بگیرید که شما بعد از اینکه در سرور so.accept() جوابش رو گرفتید، اون راه ارتباطی شما با کلاینت مورد نظر هست. پس سعی کنید چندین بار رو این پورت که قبلا استفاده شده، یا در کلاینت کار تکراری در این زمینه انجام ندید (مثل اون حلقه ای که نوشته بودید).
ضمنا در بخش فیلدها، متغیرها رو مقدار دهی نکنید. در کانستراکتور بنویسید یا یه متد دیگه.
بعد که تونستید یکبار اینکار رو به خوبی انجام بدید، اونوقت سعی کنید برنامه سرور رو بهترش کنید و اینکه بتونه چندین کلاینت بهش وصل بشه و...
همچنین این رو اضافه کنید که اگر ارتباط قطع شد، کلاینت دوباره سعی کنه خودش رو به سرور متصل کنه (مثلا در فاصله های زمانی 5 ثانیه تست کنه مثلا ده مرتبه سعی کنه و اگر نشد خطای اشکال شبکه به کاربر بده).
ولی این دو مورد رو بعدا سعی کنید. نمیخواد همه چیز از اول وارد بشه.
ضمنا پیشنهاد میکنم اول اون بخش اول رو بدون رابط گرافیکی انجام بدید تا کدتون شلوغ نشه بدونید دارید چیکار میکنیید
سلام ممنون از راهنماییتون ولی من درست متوجه نشدم می شه بیشتر توضیح بدید ؟ در ضمن اون حلقه مال اینه که برنامه مدام چک کنه که اگر پیعامی از طرف مقابل داشت اون رو به کاربر نشون بده.
نقل قول: مشکل در نوشتن برنامه چت
نقل قول:
نوشته شده توسط
kfaghih
سلام ممنون از راهنماییتون ولی من درست متوجه نشدم می شه بیشتر توضیح بدید ؟ در ضمن اون حلقه مال اینه که برنامه مدام چک کنه که اگر پیعامی از طرف مقابل داشت اون رو به کاربر نشون بده.
خیر مشکل برنامه شما اینه که دقیقا اون حلقه باعث میشه هر بار new Server_Side() بشه ودرنتیجه دفعه دوم بخواد روی پورت قبلی که سوکت زده شده دوباره سوکت بزنه. در نتیجه از قبل رزرو شده.
برای خوندن پیامها نیاز به سوکت جدید نیست، بلکه فقط باید ورودی رو بخونید.
بگذریم. منظور من این بود برنامتو از اول بنویس. فرض کن این برنامه نیست. برای اینکه درست بنویسید، از نمونه های فراوونی که تو نت هست استفاده کنید.