Click here to Skip to main content
Click here to Skip to main content

Extendable Webserver

By , 6 Mar 2003
 

Introduction

This is a sample build on the W3Mfc Webserver classes from PJ Naughter. I made a DLL of the W3Mfc code, but I can't include the sources of it, for PJ has stated not to distribute the modified sources, else many different branches will circulate on the net. (Like FlaskMPEG ). So I just added the .h, .dll and the .lib so you can use it.

This is a sample app which will generate a HTML text file and a counter when called :

http://127.0.0.1:81/Virtual/

On the Dialog there is a button to reset the counter. Nothing spectacular, but as a sample of how to implement your own functionality. Another request for our server is called when you call :

http://127.0.0.1:81/WebCam/param?w=0&h=0&q=10&s=1

or

http://127.0.0.1:81/Desktop/param?w=0&h=0&q=10&s=1

The first gives a pictures from your webcam and converts it to a jpeg, The second gives a JPG of the desktop.

Parameters

w and h stand for width and height respectively. When w=0 & h=0 the bitmap will not be resized, when you give another size, the bitmap will be converted using StretchBlt. Only size multiple of16 are allowed, so for example when you enter something like w=129 you get a JPG with width of 128 .The intel JPG routine has trouble using other sizes than multiple of 16. Another problem of the intel lib is that it can only handle 24 bit bitmaps, So a couple of bmp to DIB routines have also been included.

q=? stands for the quality of the returned jpeg

If s=0, nothing happens. If s=1 then the image is drawn above the jpg (actually in the jpg), 16 extra lines are added when this feature is requested.

Credits

A lot of this code is download from the CodeProject and I did my thing with it. I don't have an exact list of who gave me what code, but here is a short list:

  • PJ Naughter: for his W3Mfc classes Version 1.56
  • John W. Ratcliff : for his Jpeg routines, to call the intel Library. I added the scaling and color conversion to a 24 DIB myself
  • DIBAPI : from ancient code from Microsoft
  • Even a little code from Laurent Kempé

I spent a lot of time on the BMP to JPEG routines, for I could nowhere find some decent working code, hopefully this solves the problem of some more people trying to send JPG over the internet.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

ETA
Software Developer (Senior)
Netherlands Netherlands
Member
I'm a 31 year old full-time programmer ('76).
(Currently: Lead Software System Designer)

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
Hint: For improved responsiveness ensure Javascript is enabled and choose 'Normal' from the Layout dropdown and hit 'Update'.
You must Sign In to use this message board.
Search this forum  
    Spacing  Noise  Layout  Per page   
Generalnot working when using 127.0.0.1 on WindowsXP sp2memberETA30 Nov '06 - 21:51 
AnswerRe: not working when using 127.0.0.1 on WindowsXP sp2memberGarageSoft2 Jun '08 - 21:05 
GeneralImplementation of HttpVirtualScriptDirectory.hmemberroelvaessen25 May '05 - 20:37 
Hi,
 
I did not find the implementation of your class HttpVirtualScriptDirectory anywhere, even though this class is not part of the W3MFC library. Could you post the implementation of your own extensions of the W3MFC classes here as well, or email them to me?
 
Thanks,
Roel

GeneralRe: Implementation of HttpVirtualScriptDirectory.hmemberETA25 May '05 - 22:27 
GeneralUsing router for web hosting.memberszms19 Jan '05 - 3:12 
GeneralHTTP Server on Win32 APImembertom87@2115 Aug '04 - 1:21 
QuestionHow to set default web directory?memberJosef Havelka11 Aug '04 - 3:15 
AnswerRe: How to set default web directory?memberETA11 Aug '04 - 4:26 
AnswerRe: How to set default web directory?memberETA12 Aug '04 - 7:16 
GeneralIntel JPEG librarymemberpyhtang117 Mar '04 - 0:06 
GeneralRe: Intel JPEG librarymemberETA17 Mar '04 - 5:00 
GeneralW3Mfc classesmemberjacker27 May '03 - 13:55 
GeneralRe: W3Mfc classesmemberjacker28 May '03 - 15:47 
GeneralBMP -> JPEGmemberBlake Coverett8 Mar '03 - 21:45 
GeneralRe: BMP -> JPEGmemberETA8 Mar '03 - 22:35 
GeneralRe: BMP -> JPEGmemberBlake Coverett10 Mar '03 - 0:08 
GeneralRe: BMP -> JPEGmemberETA10 Mar '03 - 6:03 
GeneralScreen shotmemberA. Riazi7 Mar '03 - 18:02 
GeneralRe: Screen shotmemberETA8 Mar '03 - 22:28 
GeneralRe: Screen shotmemberA. Riazi9 Mar '03 - 8:50 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Permalink | Advertise | Privacy | Mobile
Web02 | 2.6.130516.1 | Last Updated 7 Mar 2003
Article Copyright 2003 by ETA
Everything else Copyright © CodeProject, 1999-2013
Terms of Use
Layout: fixed | fluid