FONCTION STRREVERSE DE VB 6 POUR VB4/5 ET LOTUSSCRIPT

cs_Warny Messages postés 473 Date d'inscription mercredi 7 août 2002 Statut Membre Dernière intervention 10 juin 2015 - 27 août 2003 à 15:42
Choumoumou Messages postés 162 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 17 novembre 2010 - 4 mai 2006 à 11:37
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/8365-fonction-strreverse-de-vb-6-pour-vb4-5-et-lotusscript

Choumoumou Messages postés 162 Date d'inscription jeudi 30 septembre 2004 Statut Membre Dernière intervention 17 novembre 2010
4 mai 2006 à 11:37
La fonction StrReverse est rarement utilisée, mais elle peut s'avérer précieuse pour, par exemple, un programme attaquant un serveur par Buffer Overflow (et qui doit donc définir dans la mémoire du serveur une adresse de retour vers son code malicieux). Un exploit de BO s'en servira pour définir l'adresse de retour et l'inverser ensuite (pour le serveur distant, le buffer est toujours écrit à l'envers. Pour écraser l'adresse de retour, il est donc plus pratique de retourner la chaîne).
Merci pour ce code, il me plait beaucoup.

@+ !
cs_NoFutur Messages postés 171 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 6 mai 2007 1
27 août 2003 à 15:44
StrReverse est une fonction intéressante mais a t-elle vraiment une utilitée propre dans un code ? sinon j'aime bien la simplicté du code c'est cool.
cs_Warny Messages postés 473 Date d'inscription mercredi 7 août 2002 Statut Membre Dernière intervention 10 juin 2015
27 août 2003 à 15:42
Ca ça va plus vite, ça évite une réallocation de la chaîne à chaque boucle (optimisation de 1 à 10)

Dim sBuffer as String
Dim nLen as Long
nLen=len(sString)
sBuffer = Space$(nLen)
Dim i as long
For i = 1 to nLen
Mid$(sBuffer,nLen-i+1,1) = Mid(sString,i,1)
Next
Rejoignez-nous