Çözüldü sequence hk

  • Konuyu açan Konuyu açan enes turan
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 9
  • Gösterim Gösterim 129
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

enes turan

Yardımsever Üye
Yardımsever Üye
Usta Üye
Mesaj
911
Çözümler
65
Beğeni
847
Puan
919
Ticaret Puanı
0
merhabalar geliştirdiğim filesten Sequence yi kaldırmıştım

şimdi eklediğim bir sistemde şöyle bir kod var

C++:
Genişlet Daralt Kopyala
    if (!Send(pack))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
        return;
    }

    if (!Send(subpack))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
        return;
    }

ben sequenciyi kaldırdığım için build alamıyorum bu if yapılarını nasıl düzenlemem gerekiyor ?
 
Çözüm
C++:
Genişlet Daralt Kopyala
    if (!Send(&pack, sizeof(pack)))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack",pack.subheader);
        return;
    }

    if (!Send(&subpack, sizeof(subpack)))
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack ", pack.subheader);

şu şekilde düzenledim fakat yine hata verdi

19445 eklentisini görüntüle
Pardon bu senin de karşılaşacağın başka bir hatanın çözümüydü :D seninkinin çözümü martysama'dan netstream.h içindeki ilgili fonksiyonları almak.


C++:
Genişlet Daralt Kopyala
        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoPeek(T& c_pvData) {
            return Peek(sizeof(T), &c_pvData);
        }
        template<typename C...
Bu kodların sequence ile bir bağlantısı yok. Eklediğin kısmı ve hatayı gösterir misin?
 
Bu kodların sequence ile bir bağlantısı yok. Eklediğin kısmı ve hatayı gösterir misin?


eklediğim sistem

aldığım hata
Adsız.webp
 

Dosya Eklentileri

Sequence ile alakaları yok.

Şu şekilde değiştir:
C++:
Genişlet Daralt Kopyala
if (!Send(&pack, sizeof(pack)))
C++:
Genişlet Daralt Kopyala
    if (!Send(&pack, sizeof(pack)))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack",pack.subheader);
        return;
    }

    if (!Send(&subpack, sizeof(subpack)))
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack ", pack.subheader);

şu şekilde düzenledim fakat yine hata verdi

Adsız.webp
 
C++:
Genişlet Daralt Kopyala
    if (!Send(&pack, sizeof(pack)))
    {
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack",pack.subheader);
        return;
    }

    if (!Send(&subpack, sizeof(subpack)))
        TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack ", pack.subheader);

şu şekilde düzenledim fakat yine hata verdi

19445 eklentisini görüntüle
Pardon bu senin de karşılaşacağın başka bir hatanın çözümüydü :D seninkinin çözümü martysama'dan netstream.h içindeki ilgili fonksiyonları almak.


C++:
Genişlet Daralt Kopyala
        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoPeek(T& c_pvData) {
            return Peek(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoPeek(C& v) {
            return Peek(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoRecv(T& c_pvData) {
            return Recv(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoRecv(C& v) {
            return Recv(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool SendFlush(const T& c_pvData) {
            return SendFlush(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool SendFlush(const C& v) {
            return SendFlush(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool Send(const T& c_pvData) {
            return Send(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool Send(const C& v) {
            return Send(v.size() * sizeof(typename C::value_type), v.data());
        }
 
Çözüm
Pardon bu senin de karşılaşacağın başka bir hatanın çözümüydü :D seninkinin çözümü martysama'dan netstream.h içindeki ilgili fonksiyonları almak.


C++:
Genişlet Daralt Kopyala
        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoPeek(T& c_pvData) {
            return Peek(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoPeek(C& v) {
            return Peek(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool AutoRecv(T& c_pvData) {
            return Recv(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool AutoRecv(C& v) {
            return Recv(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool SendFlush(const T& c_pvData) {
            return SendFlush(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool SendFlush(const C& v) {
            return SendFlush(v.size() * sizeof(typename C::value_type), v.data());
        }

        template<typename T, std::enable_if_t<utils::IsRawV<T>>* = nullptr>
        bool Send(const T& c_pvData) {
            return Send(sizeof(T), &c_pvData);
        }
        template<typename C, std::enable_if_t<utils::IsContiguousV<C>>* = nullptr>
        bool Send(const C& v) {
            return Send(v.size() * sizeof(typename C::value_type), v.data());
        }
teşekkür ederim :D

peki bu şekilde düzenlediğimdede hata almadım böyle olursa bir problem çıkarırmı ?

C++:
Genişlet Daralt Kopyala
    if(!Send(sizeof(subpack) , &subpack))
        
    if(!Send(sizeof(pack) , &pack))
 
teşekkür ederim :D

peki bu şekilde düzenlediğimdede hata almadım böyle olursa bir problem çıkarırmı ?

C++:
Genişlet Daralt Kopyala
    if(!Send(sizeof(subpack) , &subpack))
       
    if(!Send(sizeof(pack) , &pack))
C++:
Genişlet Daralt Kopyala
if (pack.subheader == EXPECTED_SUBHEADER && !Send(pack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
    return;
}

if (subpack.subheader == EXPECTED_SUBHEADER && !Send(subpack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack", subpack.subheader);
    return;
}

Şu şekilde de olabilir aslında
 
C++:
Genişlet Daralt Kopyala
if (pack.subheader == EXPECTED_SUBHEADER && !Send(pack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - pack", pack.subheader);
    return;
}

if (subpack.subheader == EXPECTED_SUBHEADER && !Send(subpack))
{
    TraceError("CANNOT SEND OFFLINESHOP PACKET : SUBHEADER %d - subpack", subpack.subheader);
    return;
}

Şu şekilde de olabilir aslında
valla 5.8 den direk eklentileri çektim ne olur ne olmaz :D
 
teşekkür ederim :D

peki bu şekilde düzenlediğimdede hata almadım böyle olursa bir problem çıkarırmı ?

C++:
Genişlet Daralt Kopyala
    if(!Send(sizeof(subpack) , &subpack))
       
    if(!Send(sizeof(pack) , &pack))
Bence hata almadığın şeyi değişme
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst