VB6 vers VB2005!!!

Résolu
minibenji Messages postés 64 Date d'inscription mercredi 15 février 2006 Statut Membre Dernière intervention 24 novembre 2010 - 31 oct. 2007 à 05:12
minibenji Messages postés 64 Date d'inscription mercredi 15 février 2006 Statut Membre Dernière intervention 24 novembre 2010 - 31 oct. 2007 à 13:45
Bonjours,
Je m'appelle yanick, et je suis entrin dessayer de convertir un code en VB6 vers VB2005, et j'ai 2 problème

commentaire en vert
Erreur celon vb en rouge, les autre couleur sont tel qu'a l'origine.

<hr />
Problème 1:
'j'ai convertit
Public PropertyGet FileCount()
   FileCount = colFiles.Count
End Property
'Vers
Public PropertyFileCount()
   Get
      FileCount = colFiles.Count
   End Get
End Property
' il me dit "Error 3 Property without a 'ReadOnly' or 'WriteOnly' specifier must provide both a 'Get' and a 'Set'." sur cet erreur, et il me fait ca sur toutes les conversion de get que je fait.

<hr />
Problème 2:
'Je ne sais pas comment convertir ceci
Friend PropertyLet FilePath(s As String) 
   Dim ModDate As Integer 
   Dim ModTime As Integer 

   Dim d As Date 

   d = FileDateTime(s) 

   ModDate = GetDOSDate(d) 
   ModTime = GetDOSTime(d) 

   FileName = GetFileName(s) 
   With LocalFileHeader 
      .FileNameLength = Len(FileName) 
      .LastModFileDate = ModDate 
      .LastModFileTime = ModTime 
      CompressBytes(s, FileData, .CompressedSize, .UnCompressedSize) 
   End With 
   With CentralFileHeader 
      .FileNameLength = Len(FileName) 
      .LastModFileDate = ModDate 
      .LastModFileTime = ModTime 
      .CompressedSize = LocalFileHeader.CompressedSize 
      .UnCompressedSize = LocalFileHeader.UnCompressedSize 
   End With

End Property
'Pour les erreur, une seul est importante, et c'est la première, car c'est elle qui cause toutes les autre en empêchant proprety de s'établire, et c'est exactement ce morcaux de code que je ne suis pas capable de traduire, même avec de larges éfforts...
<hr />
Je vous remercie d'avance pour l'aide, je suis prêt a donner plus d'info, seulement, je ne sais pas quoi vous dire...

3 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
31 oct. 2007 à 07:28
ben il te l'a dit :

ta propriété n'a qu'un Get (pas de Let), pourtant, tu ne l'a pas declarée comme étant ReadOnly (lecture-seule) :

Public
ReadOnly
Property FileCount()

    Get
        FileCount = colFiles.Count

    End
Get
End
PropertyRenfield
Admin CodeS-SourceS- MVP Visual Basic
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
31 oct. 2007 à 08:52
Déjà Property Get, Property Set et Property Let n'existe plus en VB2005. Elles sont remplacées par les méthodes Get et Set au sein de la classe Property.

Ensuite comme te l'as dit Renfield, soit ta property est ReadOnly, dans ce cas elle n'accepte qu'une méthode Get. Soit elle est WriteOnly et elle n'accepte qu'une méthode Set, Soit rien n'est préciser, et dans ce cas là, elle doit obligatoirement possède une méthode Get et une methode Set.

Quand à Let, c'est pris en charge désormais par la méthode Set.

Et donc si pour FilePath, tu n'as qu'un Let, il faudra faire une Property en WriteOnly, et mettre ton code dans le Set.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
3
minibenji Messages postés 64 Date d'inscription mercredi 15 février 2006 Statut Membre Dernière intervention 24 novembre 2010
31 oct. 2007 à 13:45
Merci beaucoup, je trouve ce site vraiment bon, quand je pose une question, j'ai presque tout le temps une réponse, et c'est rapide, merci à vous pour vos réponse

<hr />
Je programme en : DOS, JavaScript, PHP, VB2005, HTML, ActionScript
J'utilise du VB2005
0
Rejoignez-nous