Etrange.... copymemory [Résolu]

Signaler
Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008
-
Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008
-
Bonjour! Voila mon code:

Public Property Get Properties() As String()
ReDim Properties(1 To DefsCount)
CopyMemory Properties(1), mProperty(1), DefsCount
End Property

mProperty est un tableau de valeur string

J'ai l'impression que CopyMemory ne fonctionne pas ac une Property. C'est ca?

Sauf qu'il parait que c'est plus rapide que for loop et un asignement tab1=tab2.

Je suis obligé d'utiliser une des 2?!

Merci!

2 réponses

Messages postés
4525
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
9
wow fait gaffe avec ça tu peut tout faire peter ! non serieusement ta formule c'est du n'importe quoi pour plusieurs raison :

1 - copymemory s'emplois avec precaution et quand on peut pas faire autrement (sous peine d'access denied non geré dans vb)

2 - quand on copie une chaine un utilise ByVal sinon on envoi un pointeur (BSTR) au lieu d'une chaine ansi

3 - le paramettre Length est une taille en octet et pas un index de tableau

4 - les tableaux dynamique de chaine ne ce copie pas avec copymemory

5 - et j'en passe...

Conclusion utilise Do loop ne va pas chercher la complication la ou il n'y en a pas.

Bon courage & @+

E.B.
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 152 internautes nous ont dit merci ce mois-ci

Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008

Ok merci pour ton aide! Finallement j'ai fais l'asignation de tableau c'est plus rapide que do loop.
Maintenant que tu le dis ca m'est arrivé souvent de planter vb quand j'utilisais copymemory ;)