well here you go. First I'll tell ya why it's not working. All your program ever sends is the HTML. It's not sending the Image. So you need to learn how to detect when the browser is requesting that image. Here's one example of how the protocol would look:
BROWSER CONNECTS TO SERVER
BEGIN BROWSER REQUEST
GET / HTTP/1.1
Host: 209.6.98.47
User-Agent: Internet Explorer
Connection: Keep-Alive
END BROWSER REQUEST
BEGIN SERVER RESPONSE
HTTP/1.1 200 Ok
Content-Type: text/html
Connection: Closed
<HTML><BODY>
<IMG SRC="image">
</HTML></BODY>
END SERVER RESPONSE
SERVER DISCONNECTS
BROWSER CONNECTS TO SERVER
BEGIN BROWSER REQUEST
GET /image HTTP/1.1
Host: 209.6.98.47
User-Agent: Internet Explorer
Connection: Keep-Alive
END BROWSER REQUEST
BEGIN SERVER RESPONSE
HTTP/1.1 200 Ok
Content-Type: image/gif
Connection: Closed
[IMAGE]
END SERVER RESPONSE
SERVER DISCONNECTS
So now, here's a suggestion for the code in your DataArrival event:
Lines = Split(Data, vbcrlf)
Fields = Split(Lines(0), " ")
If Fields(1) = "/image" Then
'Send Header and image file
Else
'Send header and HTML page
End If