So what you need to do, is have acess to a webserver that can use some kind of scripting language to send http headers. cgi/perl/php are a few examples.
ill explain it with php, as i think its the most popular, and people dont beware of .php webpages. im also assuming the server is apache on windows.
1- user clicks on
http://your.ip/index.php2- your webserver executes the index.php script
3- the browser receives http code that tells it is about to download a file called funny.jpg%%00virii.exe. it displays to the user that the filename is funny.jpg
4- if the user clicks 'open', the file is downloaded and executed.
--
if you even more evil, you can set a directory called funny.jpg, and have apache load index.php by default instead of index.html.
then you can send a link like
http://ip/funny.jpg*note* you dont need an actual and complete web server for that. you could do the same thing in c. code a listening socket that waits for http get request, and replies with the http data generated by the index.php script i just poster. you can read rfcs, or use a packet sniffer or netcat to find out how the http requests and answers are built.
did i miss anything?