No te doy respuesta inmediata, pero quizás pilles la idea.
El primer parámetro es un puntero a cualquier cosa, así que puedes mandar a escribir un integer, un Tbitmap o un string.
El segundo parámetro es la cantidad de bytes que contiene el primer parámetro, normalmente
en delphi se usa la función "sizeof(nombrevariable)" como segundo parámetro.
Quizás un ansiString es ya un puntero a una cadena, por lo que quizás puedas escribir algo parecido a :
Código Delphi
[-]
ansistring *a = 'mi string superlarga';
MiStream.write(a, sizeof(a));
Edito:
coso ya te colaste en medio....
Suerte !!