Etrange.... copymemory

Résolu
BozzoDodo
Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008
- 10 août 2004 à 12:21
BozzoDodo
Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008
- 10 août 2004 à 12:52
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

cs_EBArtSoft
Messages postés
4525
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
9
10 août 2004 à 12:48
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
BozzoDodo
Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008

10 août 2004 à 12:52
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 ;)
0