Форум: "KOL";
Текущий архив: 2015.10.25;
Скачать: [xml.tar.bz2];
Внизпобайтно записать файл из массива Найти похожие ветки
← →
tippa (2009-12-11 18:27) [0]есть массив паскаль кода некоторого файла:
fff: array[0..132067] of byte = ($6D, $4A, $70, $00, ... );
нужно записать его в поток
делаю так:strem:=NewReadWriteFileStream("proga.exe");//создал поток
//не нашёл подходящего метода
strem.???(fff,132068);
в VCL работает strem.write(fff,132068).
← →
Слон (2009-12-11 20:15) [1].write
← →
tippa (2009-12-11 21:42) [2]сразу так и делал, но пишет
Constant object cannot be passed as var parameter.
мол не может константа использоваться как переменная
← →
tippa (2009-12-11 22:19) [3]причем если массив не делать константой, а задавать посимвольно, то все окей, но у меня 100 килобайтный файлик...
← →
Дмитрий К © (2009-12-11 22:27) [4]Stream.Write(Pointer(@fff)^,...
← →
tippa (2009-12-11 22:51) [5]да вы тут прям волшебники, все заработало
← →
Dufa © (2009-12-12 15:17) [6]Можно просто fff[0]
← →
tippa (2009-12-12 20:10) [7]
> Можно просто fff[0]
если такstrem.Write(fff[0],132068);
то не пашет, опять:Constant object cannot be passed as var parameter.
← →
L'Autour (2009-12-12 21:08) [8]@fff[0]
← →
tippa (2009-12-13 12:02) [9]
var ucaz_fff: ^byte;
...
ucaz_fff:=@fff[0];
...
strem.Write(ucaz_fff,132068);
← →
tippa (2009-12-13 12:40) [10]блин, вообщем чушь какая-то пишется в поток, вернулся на
> Stream.Write(Pointer(@fff)^,...
← →
L'Autour (2009-12-13 17:03) [11]сорри: @fff[0]^, что по сути тот же Pointer(@fff)^
и еще, если используется
var ucaz_fff: ^byte;
то следует писать:
strem.Write(ucaz_fff^,132068);
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2015.10.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.002 c