Olen ohjelmoinut pienen ohjelman Visual Basic 6.0:lla ja lähetinkin sen kaverille testattavaksi. Kaverin koneessa on XP Professional (ENG). Ajattelin ensin, että kun kaverilla ei tuota Visual Basicia ole, niin tottakai tarvitaan VB6.0 Runtime jonka pyysin asentamaan. Hetkeä myöhemmin tietysti sitten huomattiin, että sehän ei ole XP:lle vaan vanhemmille käyttiksille, tässä vaiheessa se oli tietysti jo ehditty asentaa. Ensin tuli virheilmoitus:
"Runtime Error '339':
Component 'mswinsck.ocx' or one of its depencies not correctly registered: a file is missing or invalid
Tämä samainen virhe tuli myös pikkusiskoni koneessa, jossa on XP Home (Fin)
Nappasin omasta koneestani, jossa on XP Home (Fin) tuon mswinsck.oxc-tiedoston (kansiossa c:\windows\system32\ ), kopioin sen pikkusiskon system32 kansioon ja asensin VB6.0 Runtime SP5:n vielä lisäksi, joka siis tällä kertaa oli XP:lle tarkoitettu... Sitten kokeilin ja ohjelma toimi, toisin kuin kaverilla. Virheilmoitus oli nyt tällainen ja tässä kohtaa meni varpaat suuhun:
"Run-time error '10048':
Address in use"
Onko kenelläkään viisaalla mitään kokemusta/aavistusta, mistä tuollainen voisi johtua?
no siinä tapauksessa portti on käytössä jota käytät siinä mulla oli sama juttu kun käytin samaa out porttia kahessa eri winsockissa tai 2 samaa in porttia 2 eri winsockissa
eli käytännössä, millä tämän ongelman saisi ratkaistua?!?
muistaakseni toimi kun vaihtoi winsock kontrollin indexiä... en ole varma
Lykkäät portiksi vaikkapa 15346, eli joku tarpeeks suuri, jotta mikään muu ohjelma ei käytä sitä samaan aikaan. Toki itsekään et saa käyttää kahdella kontrollilla samaa porttia yhtäaikaa.
Tyhmä kysymys, mutta missä tuo tehdään? On tullut aika vähän hakattua VB:tä, vaikka sitä on tullut 3 vuotta koulun puolesta opiskeltua ;)
Mitä tuo Winsock tekee ja mistä tuo löytyy, eli mistä tuota porttia muutetaan?
Käytät winsockia ohjelmassasi vaikka et tiedä mitä se tekee? Kaikki ongelmat viittaavat siihen, että ohjelmassasi käytetään winsock controllia.
Winsockin avulla voit luoda helposti nettiohjelmia.
Se löytyy Project -> components -> Microsoft Winsock Control 6.0.
Porttia voi muuttaa muuttamalla kyseisen kontrollin localport-ominaisuutta.
Pari aiheeseen liittyvää koodivinkkiä:
https://www.ohjelmointiputka.net/koodivinkit/
https://www.ohjelmointiputka.net/koodivinkit/
Katteleppa myös noita.
Hups. Olipa tosiaan tyhmä kysymys ;))
Tuosta on pari vuotta aikaa, kun tein ensimmäisen version ohjelmasta, kyseessä on tosiaankin nettiselain, jossa on kaikenlaisia pieniä toimintoja... Oli vaan niin puutteellinen, että innostuin näin pari vuotta jälkikäteen kehittää ohjelmaa eteenpäin. Monet asiat unohtuvat ihmeen nopeasti. Käsitin heti, kun käävin vanhaa koodia läpi. En ollut edes tutkinut sitä sen tarkemmin, mitäs sitä toimivaa muuttamaan ;)
Aihe on jo aika vanha, joten et voi enää vastata siihen.