לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #6  
ישן 03-02-2009, 14:17
  Dragonion Dragonion אינו מחובר  
 
חבר מתאריך: 22.08.08
הודעות: 310
בתגובה להודעה מספר 5 שנכתבה על ידי שימי שמתחילה ב "אתה בונה שרת, והשאלה שלך,..."

יש לי שרת. עכשיו מישהו מתחבר אליו עם TCP ולכן האי פי היחיד שצריך לדעת הוא שלי (שאותו אני יודע).
עכשיו מה שאני רוצה לעשות זה לקבל רשימה של כל המשתמשים שמחוברים לשרת, לתת את הרשימה הזאת למשתמש שהתחבר, ולפי זה הוא יתחבר לכל שאר המשתמשים.
המשתמשים מחוברים זה לזה עם UDP וכל אחד מחובר לכל השאר (peer to peer).

עכשיו שאני אומר שהמשתמש יתחבר לשאר המשתמשים, אני מתכוון למעשה שפשוט תהיה לו רשימה של כל הIPים שלהם, וכל פעם שהוא ישלח packet כלשהוא, הוא ישלח אותו לכל הרשימה.

מכאן נובע שאני צריך איכשהוא להשיג את הרשימה, ובלי ראוטר זה הכל טוב ויפה, אבל כל שאמרתי - ברגע שמכניסים ראוטרים לעסק זה הכל מתחרבש .

הנה סתם דוגמא טקסטואלית של החיבורים.

קוד PHP:
 Server:
TCP client1
TCP client2
...
TCP clientN

Client1
:
UDP client2
UDP client3
...
UDP clientN

Client2
:
UDP client1
UDP client3
...
UDP clientN 


נערך לאחרונה ע"י Dragonion בתאריך 03-02-2009 בשעה 14:21.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #10  
ישן 03-02-2009, 22:54
  Dragonion Dragonion אינו מחובר  
 
חבר מתאריך: 22.08.08
הודעות: 310
בתגובה להודעה מספר 9 שנכתבה על ידי שימי שמתחילה ב "הפונקציה getpeername תחזיר לך..."

כן, כבר בדקתי את זה. כולה בעסה שאין בwindows שום פונקצייה להפוך את האי פי שם לטקסט.
במקום inet_ntop יש בחלונות InetNtop, רק שהקומפיילר בכלל לא מזהה את הפונקצייה הזאת.

בנוסף לזה, הפורט שזה הביא לי בכלל לא נכון (אלא עם אני טועה והפורט שהכליינט בוחר בכלל לא קשור לשרת?).

הנה הקוד שלי
קוד PHP:
 #include <ws2tcpip.h>

    
...

    
sockaddr_in Peer;
    
char IP[30];
    
int port;
    
int len sizeof Peer;
        
    if(
getpeername(tsock2.s,(sockaddr*)&Peer,&len) == -1cout<<"Peer error\n";
    
    
port ntohs(Peer.sin_port);
    
InetNtop(AF_INETPeer.sin_addrIPsizeof IP); // isn't declared for some reason
    
    
printf("Peer IP address: %s\n"IP);
    
printf("Peer port      : %d\n"port); 


עריכה: הלכתי וחיפשתי בקובץ הזה את הפונקצייה, היא באמת לא שם. אולי יש לי גרסה ישנה מידי
עריכה2: חיפשתי בגוגל והגעתי למסקנה שאין לי מושג מה לחפש בשביל להשיג קבצים וספריות חדשות, מישהו יודע מאיפה אני יכול להשיג את הגרסה הכי חדשה של ווינ-סוק 2?

נערך לאחרונה ע"י Dragonion בתאריך 03-02-2009 בשעה 23:14.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 21:47

הדף נוצר ב 0.04 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2025 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר