har fortfarande sjukt jobbigt problem med winsock... Kan inte så mycket om detta,men svarar ändå för svarandets egen skull. ..kan iofs inte nåt om winsock, men kan det inte vara så att du måste flusha innan du skickar nästa meddelande? Jag brukar göra som så att i slutet av varje kommando lägga till ett i förvalt sluttecken, tex | Pipe. jopp.. det löser halva problemet iofs... ena paketet kommer fram som det ska då, men eftersom jag använder kryptering blir andra halvan massor av trams. men det kan man säkert göra något åt.. hmm =) tack för tipsen iaf! jag ska försöka fixa det ännu mer med era svar som hjälp.. Krypteringen kanske skapar samma tecken som du använder som sluttecken. Gör något liknande det knoton sa, men använd en kod liknande detta för att förhindra att en text innehållande ett |-tecken redan från början misstolkas: Det räcker med en huvud för data. Ange där typ, storlek och ev kontrollsiffra. Binär data är effektivare än text. IRC-protokollet sänder kommandorna på sina egna rader, åtskillda av ny-rads-tecken. IRC-protokollet sänder kommandorna på sina egna rader, åtskillda av ny-rads-tecken.störigt winsock
när två datapaket skickas nära efter varandra, så tar servern emot det som ett...
alltså.. om jag skickar koden:
"/prata:kebab är gott"
och koden:
"/prata:nej, inte på lördag"
så tar den e mot båda strängarna som en.. alltså "/prata:kebab är gott/prata:nej, inte på lördag"
skitstörigt, på allt det här så har jag krypterat kommandona, och då försöker den dekryptera de båda samtidigt, vilket ger ett sånt här resultat: "/prata:kebab är gott2%&"&#¤&#¤&#¤&#&T#¤T#W¤%&#W¤#".
Jaa, ni fattar. Nån som har en bra lösning? Att använda nåt som DoEvents mellan kommandona skickas är helt värdelöst, och fungerar inte. Skitstörigt, och jag har inte fått något bra svar när jag frågat tidigare, och ställer därför frågan igen..Sv: störigt winsock
Det måste väl finnas nåt returmeddelande från servern som du måste invänta
innan du sänder nästa datapaket.Tycker att det verkar logiskt.
Dvs du måste lägga in en Vänta loop som registrerar att nu är det Ok att skicka nästa.
Finns kanske en TimeOut som du måste innehålla mellan två datapaket.
I så fall skulle jag testa att lägga in ett Sleep på 1000 ms mellan paketen.
Spånar SvenSv: störigt winsock
Sv: störigt winsock
Mottagarsidan kan sedan lägga ihop allt som kommer in och köra en split med Pipetecknet och loopa sig igenom de kommandon som finns.
Det medför även att ifall inte sista tecknet i en kommandosträng är "Pipe" så är inte kommandot fullständigt och mer data bör finnas att hämta.
Hoppas du hänger med på min något virriga förklaring :-)Sv: störigt winsock
Sv: störigt winsock
Därför måste du dekryptera innan du validerar kommandosträngen.
Krypteringen behövs ju ändå bara mellan punkterna. Har datat väl anlänt så kan den vara
i klartext.Sv: störigt winsock
'sända:
dim s as string
s = "min text att sända"
s = replace(s, "&", "&")
s = replace(s, "|", "&pie;") 'kan inte html-koden för |-tecknet
s = s & "|"
's innehåller nu en text som slutar med |. Ev &-tecken är ersatta med & samt ev. |-tecken är ersatta med &pipe;
'mottagningen:
dim s as string
s = "gammal text från winsock som inte slutade med |-tecknet" & "från winsock texten"
dim i as long
i = instr(1, s, "|")
do while i >= 0 'ev. bara >
dim s2 as string
s2 = left(s, i)
s2 = replace(s2, "&pipe;", "|")
s2 = replace(s2, "&", "&")
'här finns texten som togs emot i s2
s = mid(s, i+1)
i = instr(1, s, "|")
loop
'här finns ev. text som saknar avslutande |-tecken. Spara tills nästa gång det kommer något och lägg till i början
Denna kod är okompilerad, men jag tror att du förstår principen
Sv: störigt winsock
Sv: störigt winsock
ex.
PRIVMSG VemSomHelst :Hej på dig
PRIVMSG #MinKanal :Hej allihopa
Om du restrikterar din kryptering till ASCII-tecken så skulle det fungera bra.Sv: störigt winsock
ex.
PRIVMSG VemSomHelst :Hej på dig
PRIVMSG #MinKanal :Hej allihopa
Om du restrikterar din kryptering till ASCII-tecken så skulle det fungera bra.