Ahora si (
vaya después de que le pones colores revienta ojos)...
Otra opción ademas de la que te menciono LeandroA es armarte un protocolo para crear cuentas por winsock (puede ser mas seguro esto que php) y una BDD como MySQL o la que gustes eso seria lo de menos en este momento.
por ejemplo:
*****Creación de cuentas*****
cliente:
createacc usuario pass (el cliente mandaría esta instrucción, el servidor hace un split separando cada palabra, la primera seria el tag de comando y después sus parámetros en este caso solo dos)
servidor:
createacc ok (cuenta creada)
createacc fail "razon"(cuenta no creada, ademas retorna una razón del por que no se creo)
*****Logeo*****
Cliente:
loginacc usuario contraseña (se manda una cadena similar a esta y el servidor solo hace un split para identificar la 1ra palabra clave y saber que hacer).
Servidor:
loginacc ok (le indica al cliente que todo esta correcto)
loginacc fail "razon" (le indica al cliente que no se a podido iniciar session, indica una razon)
Proceso para identificar las palabras clave:
dim buff as string
const COMMAND = 0
const PARAMETER_1 = 1
const PARAMETER_2 = 2
const PARAMETER_3 = 3
const PARAMETER_4 = 4
... Recibimos los datos en la variable buff...
divs = split(buff, " ")
select case divs(COMMAND)
case "createacc"
select case createacc(divs(PARAMETER_1), divs(PARAMETER_2)) ' llamamos al proceso que crea las cuentas.
case 0
' enviamos la cadena loginacc ok
case 1
' enviamos la cedana loginacc fail "exists"
case 2
' enviamos la cedana loginacc fail "createoff"
end select
case "loginacc"
select case loginacc(divs(PARAMETER_1), divs(PARAMETER_2)) ' llamamos al proceso que inicia session en las cuentas.
case 0
' enviamos la cadena loginacc ok
' asociamos este socket con la cuenta.
case 1
' enviamos la cedana loginacc fail "noexits"
case 2
' enviamos la cedana loginacc fail "userdatafail"
end select
end select