I had collected information from various sources to solve this problem, started from delphi specific mailing list until joined an international channel on IRC (#delphi). While few numbers gave some interesting clues, there are rumors about non-existence add in components to make it done instantly. But you could do this over Delphi native component provided mixed in by your own logic exactly.
So, what is the native components? Some said that the connection socket can easily created under Indy tab components, while others said it can be done with Internet tab components. Well, both above are commonly supported since it should use TCP and UDP link to do so. No big deal with these, but I’m trying to create it under Internet tabs components. Currently, i'm using TClientSocket and TServerSocket component. The scenario is as simple as grabing the host desktop image and send it over this socket connection. Then refreshing the pictures periodically as you might seen on server side monitor.
First of all, you have to initialized the type of the client status:
And from the TClientSocket onRead event, make a validation to process the type of the connections:
case CliStatusWatch of
Socket.ReceiveBuf (Buffer, 5);
if strIn = 'BITM!' then CliStatusWatch:=csGambar
if not Reciving then
if send=true then
StrLCopy(@sl, PChar(s), Length(sl)-1);
Delete(s, 1, Length(sl));
if send=true then
if reciving=true then FBmp.progressbar1.Position:=Data.Size;
if (Data.Size = DataSize) then
Caption:='Displaying remote screen.';
Bmp := TBitmap.Create;
Jpg := TJpegImage.Create;
if data.size<>0 then FBmp.Image1.Picture.Assign(Jpg);
if (reciving=false) and (send=true) then
Caption:='Capturing remote screen.';
else if (reciving=false) and (send=false) then
Also, you may need to find scktcomp.pas over the internet which provided by Borland as a visual component library unit for Windows socket components and use it as external add-in unit.
The scratched source above are very limited. If you are in hurry to find out the complete codes, click link image below and make a US$10 money transfer over my existing PayPal account. After I get an email notification, I’ll confirmed you & send the codes as an email attachment.
PS: If you've benefit from this blog,
you can support it by making a small contribution.