Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Error 457 Por que sucede - como lo resuelvo?

Estas en el tema de Error 457 Por que sucede - como lo resuelvo? en el foro de Visual Basic clásico en Foros del Web. El error que aparece es este: "Esta clave ya está asociada a un elemento de esta colección", me explico estoy usando un programa ftp con ...
  #1 (permalink)  
Antiguo 17/10/2008, 18:03
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Esta clave ya está asociada a un elemento de esta colección - Error de vb6.0

El error que aparece es este: "Esta clave ya está asociada a un elemento de esta colección", me explico estoy usando un programa ftp con la api wininet de recursosvisualbasic.

El error aparece cuando ingreso al server ftp desde 2 pc's es decir en la pc1 habre correctamente y cierro, luego en la pc2 ya no habre aparece el error, vuelvo a la pc1 y ya no habre??

Parece q esto tambien pasa cuando bd en red en las aplicaciones cliente servidor como puedo solucionar esto ya q en google no encontre mucho y me rendi?

Última edición por franko1809; 21/10/2008 a las 17:36
  #2 (permalink)  
Antiguo 22/10/2008, 14:47
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: Error 457 Por que sucede - como lo resuelvo?

¿Puedes poner la línea donde te da el error?.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 22/10/2008, 17:19
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Respuesta: Error 457 Por que sucede - como lo resuelvo?

El error aparece en el modulo cDirList.cls



En esta linea comentada , espero sepas darme alguna solucion io algun punto para investigar

Código:
Public Function Add(lAttrib As Long, dtCreationTime As Date, dtLastAccessTime As Date, dtLastWriteTime As Date, lFileSize As Long, sFilename As String) As cDirItem
   Dim newItem As New cDirItem
   
   With newItem
      .Archive = (lAttrib And FILE_ATTRIBUTE_ARCHIVE)
      .Compressed = (lAttrib And FILE_ATTRIBUTE_COMPRESSED)
      .Directory = (lAttrib And FILE_ATTRIBUTE_DIRECTORY)
      .Hidden = (lAttrib And FILE_ATTRIBUTE_HIDDEN)
      .Normal = (lAttrib And FILE_ATTRIBUTE_NORMAL)
      .Offline = (lAttrib And FILE_ATTRIBUTE_OFFLINE)
      .ReadOnly = (lAttrib And FILE_ATTRIBUTE_READONLY)
      .System = (lAttrib And FILE_ATTRIBUTE_SYSTEM)
      .Temporary = (lAttrib And FILE_ATTRIBUTE_TEMPORARY)
      .CreationTime = dtCreationTime
      .LastAccessTime = dtLastAccessTime
      .LastWriteTime = dtLastWriteTime
      .FileSize = lFileSize
      .Filename = sFilename
   End With
   mCol.Add newItem, sFilename ' AQUI ME TIRA EL ERROR??
End Function
  #4 (permalink)  
Antiguo 23/10/2008, 10:17
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: Error 457 Por que sucede - como lo resuelvo?

Nótese que mCol es una colección y el segundo parámetro del método Add de una colección es una clave única para el elemento agregado, por lo que si estás invocando dos veces al método Add de la clase con el mismo parámetro para sFileName se producirá un error.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 23/10/2008, 17:30
 
Fecha de Ingreso: enero-2008
Ubicación: Lima - Perú
Mensajes: 1.127
Antigüedad: 16 años, 3 meses
Puntos: 10
Respuesta: Error 457 Por que sucede - como lo resuelvo?

Bueno seguire revisando el codigo aunque no lo entiendo mucho o si tienes alguna idea como resolverso?

saludos
  #6 (permalink)  
Antiguo 24/10/2008, 09:24
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Error 457 Por que sucede - como lo resuelvo?

Una idea sería agregar un número único a la clave, así aunque el sFileName sea el mismo la clave seguirá siendo única.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:47.