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
71
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
41
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