Tu as oublié de founir
GetDataAsStreamFromVariant
CompressDataAsVariantFromStream
tu nous sors des fonctions que tu as développé !
Et plus on avance, et plus tu nous en donne de nouvelles !
Et c'est juste le passage Variant (2011 array of WordBool) vers Stream qui est interressant, imagine qu'en 2009, CodeGead a changé l'implémentation des structures TVarData et TVarRec (qui ne sont pas compatible évidemment
)
le mieux est de vérifier proprement
if VarIsType(V1, varArray or varByte) then
Sinon, lorsque l'on n'utilise que des Stream pour manipuler les Blobs sans passer par des variants, on a pas ces problèmes, c'est juste une uzinagaz ton truc !
Perso, j'utilisais aussi une compression mais toujours en Stream !
Le MemoryStream n'étant qu'une zone mémoire, c'est très polyvalent, il est vrai qu'un array of byte est assez proche !
@Cl@udius, ben oui, c'est pour cela que je voulais le code de GetDataAsStreamFromVariant, j'ai pensé au bon vieux seek 0 mais son code fonctionne en D7 mais plus en 2009, qui laisse supposer un problème de taille du char (et par conséquent taille de buffer)
Perso, j'ai souvent une option AutoRewind (défaut à true) dans mes Fonctions d'écriture dans les Stream !
Partager