Κάνεις λάθος. Δεν παιδεύεσαι να φτιάξεις ένα multithreaded socket server σε VB6. Προσπαθείς να χρησιμοποιήσεις το Win32 API χωρίς να διαβάσεις το documentation ή τα samples του. Όλα όσα ρωτάς ως τώρα υπάρχουν σαν παραδείγματα στο MSDN, στο documentation των functions που χρησιμοποιείς. ΠΡΟΦΑΝΩΣ σε C, γιατί το Win32 API απευθύνεται σε όσους προγραμματίζουν σε C/C++. Αν λοιπόν θέλεις να χρησιμοποιήσεις αποκλειστικά το Win32 API για threading - Διάβασε το! Άσε που το Windows SDK περιέχει πάρα πολλά παραδείγματα και για sockets και για threads.
Αυτό που κάνεις στην πραγματικότητα είναι: παιδεύεσαι να φτιάξεις κάτι το οποίο ήδη περιγράφεται επαρκέστατα, σε μία ακατάλληλη γλώσσα, χωρίς να κοιτάξεις ούτε documentation ούτε παραδείγματα.
Διάβασε λοιπόν το documentation, δοκίμασε τα samples και αφού καταλάβεις πως δουλεύουν, προχώρα να φτιάξεις και τον δικό σου κώδικα. Το documentation για τα sockets ξεκινάει στο Windows Sockets 2 ενώ για threads ξεκινάει στο Processes and Threads
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos