• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Отправить поток в сеть

  • Автор темы Баламут
  • Дата начала
Б

Баламут

Привет всем. Возникла такая проблема...
Пытаюсь отправить в сеть поток. Код следующий:

bmp := TBitmap.Create;
bmp.Height := Screen.Height;
bmp.Width := Screen.Width;
DC := GetDC(0);
BitBlt(bmp.Canvas.Handle, 0, 0, bmp.Width, bmp.Height, DC, 0, 0, SRCCopy);
Data := TMemoryStream.Create;
Data.Position := 0;
bmp.SaveToStream(Data);
Data.Position := 0;
Socket.SendStream(Data);

При отправке вылетает ошибка: Read of address 00000000.
Почему?!!
 
Б

Баламут

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);

Т.е.
Socket: TCustomWinSocket;
 
Б

Баламут

Версия 6.0. Самое обидное, что если заменить TMemoryStream на TFileStream, то все отлично работает... ;)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!