Aracılığıyla paylaş


CAsyncSocket::Connect

Bir bağlantısız akış veya datagram soket bağlantısı kurmaya Bu üye işlevini çağırın.

BOOL Connect(
   LPCTSTR lpszHostAddress,
   UINT nHostPort 
);
BOOL Connect(
   const SOCKADDR* lpSockAddr,
   int nSockAddrLen 
);

Parametreler

  • lpszHostAddress
    Bu nesneye bağlı yuva ağ adresi: "ftp.microsoft.com" veya "128.56.22.8" gibi noktalı bir sayı gibi bir makine adı.

  • nHostPort
    Yuva uygulamasını tanımlayan bağlantı noktası.

  • lpSockAddr
    Bir işaretçi bir sockaddr bağlı bir yuva adresini içeren yapısı.

  • nSockAddrLen
    Adres uzunluğu lpSockAddr bayt.

Dönüş Değeri

Sıfır olmayan bir değer işlevi başarılı olursa; Aksi halde 0 ve belirli bir hata kodu çağırarak alınabilir GetLastError.Bu hata kodu gösterir, wsaewouldblockve uygulamanızı geçersiz kılınabilir geri çağrıları kullanarak, uygulamanız alacaksınız bir OnConnect bağlanma işlemi tamamlandığında ileti.Aşağıdaki hatalar bu üye işlev için geçerlidir:

  • WSANOTINITIALISED başarılı bir AfxSocketInit Bu API kullanmadan önce gerçekleştirilmelidir.

  • wsaenetdown Windows Sockets başlatılmasının algılanan ağ alt sistemi başarısız oldu.

  • WSAEADDRINUSE belirtilen adres zaten kullanımda.

  • WSAEINPROGRESS engelleyen bir Windows Sockets çağrı sürüyor.

  • WSAEADDRNOTAVAIL belirtilen adres yerel makineden kullanılabilir değil.

  • wsaeafnosupport ile bu yuva adresleri belirtilen ailesinde kullanılamaz.

  • wsaeconnrefused bağlanma denemesi reddedildi.

  • wsaedestaddrreq bir hedef adresi gereklidir.

  • wsaefaultnSockAddrLen bağımsız değişkeni doğru değil.

  • WSAEINVAL geçersiz ana bilgisayar adresi.

  • WSAEISCONN Yuva zaten bağlı.

  • WSAEMFILE daha fazla hiçbir dosya tanımlayıcıları vardır.

  • wsaenetunreach şu anda bu ana bilgisayardan ağa ulaşılamıyor.

  • WSAENOBUFSArabellek alanı kullanılabilir.Yuva bağlı olamaz.

  • wsaenotsock bir soket tanımlayıcısı değil.

  • WSAETIMEDOUT bir bağlantı kurmadan zaman aşımına uğradı bağlanılmaya çalışıldı.

  • wsaewouldblock yuva işaretlenmiş olarak yapmayan ve bağlantıyı hemen tamamlanamıyor.

Notlar

Yuva ilişkisiz ise, sistem tarafından atanan benzersiz değerler yerel ilişkilendirme ve yuva olarak işaretlenmiş bağlı.İse bütün sıfırları adres alanıdır adı yapısının Connect sıfır döndürür.Genişletilmiş hata bilgilerini çağrısı GetLastError üye işlevi.

Akış yuva için (tür sock_stream), yabancı ana bilgisayara etkin bir bağlantı başlatılır.Yuva çağrısı başarıyla tamamlandığında, yuva veri gönderme/alma hazırdır.

Datagram yuva için (tür sock_dgram), hangi sonraki üzerinde kullanılacak varsayılan hedef ayarlanır Gönder ve Al çağrıları.

Gereksinimler

Başlık: afxsock.h

Ayrıca bkz.

Başvuru

CAsyncSocket sınıfı

Hiyerarşi grafik

CAsyncSocket::Accept

CAsyncSocket::Bind

CAsyncSocket::GetSockName

CAsyncSocket::Create

CAsyncSocket::AsyncSelect