Popravdě mě překvapuje, že někdo (v tomto případě programátoři EMBT) používá TStream.Write a ne rovnou TStream.WriteBuffer, který by tu výjimku vyhodil.
Btw., díval jsem se a:
1) Třída přibyla v Delphi 10.1.
2) Nechápu vůbec, proč to je potomek TFileStream. Proč proboha se zrovna v tom jednom případě, kdy to Java má dobře, nemohli inspirovat u ní a neudělat to jako Decorator pro libovolný TStream? (Pro neznalé: Decorator je v tomto případě potomek TStream, který dostane jiný TStream v konstruktoru a na tento jiný TStream přesměrovává všechny funkce, které nechce implementovat sám.)
3) Metoda TBufferedFileStream.SyncBuffer je natolik blbě (zahazuje všechny chyby), že bych skoro raději tento stream nepoužíval a napsal si vlastní. Není to tak těžké.