FileServer
Übersicht

FlorianBetreff: FileServer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Beschreibung
Alle zuherunterladen Dateien in den Programm Kopieren. Programm starten Bild von Test Server ![]() Code: [AUSKLAPPEN] Global IP Global Accept$ Global Accept_Language$ Global Accept_Encoding$ Global User_Agent$ Global Host$ Global Connection$ Global Befehl$ Global Datei$ Global Parameter$ DateiTyp=1 ServerIP=CreateTCPServer(80) TCPTimeouts 30000,30000 While Not KeyHit(1) IP=AcceptTCPStream(ServerIP) If IP<>0 Then Repeat Zeile$=ReadLine$(IP) If Mid$(Zeile$,1,8)="Accept: " Then Accept$=Mid$(Zeile$,9) ElseIf Mid$(Zeile$,1,17)="Accept-Language: " Then Accept_Language$=Mid$(Zeile$,18) ElseIf Mid$(Zeile$,1,17)="Accept-Encoding: " Then Accept_Encoding=Mid$(Zeile$,18) ElseIf Mid$(Zeile$,1,12)="User-Agent: " Then User_Agent$=Mid$(Zeile$,13) ElseIf Mid$(Zeile$,1,6)="Host: "Then Host$=Mid$(Zeile$,7) ElseIf Mid$(Zeile$,1,12)="Connection: " Then Connection$=Mid$(Zeile$,13) ElseIf Mid$(Zeile$,1,4)="GET " Then Befehl$="GET" Parameter$=Mid$(Zeile$,5) PosZeile=Instr(Parameter$," ") If PosZeile=0 Then Datei$=Parameter$ Else Datei$=Mid$(Parameter$,2,PosZeile-2) EndIf If Datei$="" Then Datei$="Index.html" DateiType$="" DateinameLang=Len(Datei$) For P=DateinameLang To 1 Step -1 If Mid$(Datei$,P,1)="." Then DateiType$=Mid$(Datei$,P+1) EndIf Next ContentType$=MIMETyp$(DateiType$) If FileType(Datei$)<>DateiTyp Then CloseTCPStream IP IP=0 Exit EndIf DateiLang=FileSize(Datei$) WriteLine IP,"HTTP/1.0 200 OK" WriteLine IP,"Accept-Ranges: bytes" WriteLine IP,"Cache-Control: non-cache, pre-check=0, post-check=0" WriteLine IP,"Expires: 0" WriteLine IP,"Pragma: no-cache" WriteLine IP,"Transfer-Encoding: chunked" WriteLine IP,"Content-Length: "+DateiLang WriteLine IP,"Content-Type: "+ContentType$ WriteLine IP,"" DateiNr=ReadFile(Datei$) While Not(Eof(DateiNr)) WriteByte IP,ReadByte(DateiNr) Wend Delay 1000 CloseFile DateiNr CloseTCPStream IP IP=0 Exit EndIf Until Eof(IP) Or Zeile$="" If IP<>0 Then CloseTCPStream IP IP=0 EndIf EndIf Delay 1 Wend Function MIMETyp$(Erweiterung$) Select Lower$(Erweiterung$) Case "dwg" Return "application/acad";AutoCAD-Dateien (nach NCSA) Case "asd","asn" Return "application/astound";Astound-Dateien Case "tsp" Return "application/dsptype";TSP-Dateien Case "dxf" Return "application/dxf";AutoCAD-Dateien (nach CERN) Case "spl" Return "application/futuresplash";Flash Futuresplash-Dateien Case "gz" Return "application/gzip";GNU Zip-Dateien Case "ptlk" Return "application/listenup";Listenup-Dateien Case "hqx" Return "application/mac-binhex40";Macintosh Binärdateien Case "mbd" Return "application/mbedlet";Mbedlet-Dateien Case "mif" Return "application/mif";FrameMaker Interchange Format Dateien Case "xls","xla" Return "application/msexcel";Microsoft Excel Dateien Case "hlp","chm" Return "application/mshelp";Microsoft Windows Hilfe Dateien Case "ppt","ppz","pps","pot" Return "application/mspowerpoint";Microsoft Powerpoint Dateien Case "doc","dot" Return "application/msword";Microsoft Word Dateien Case "bin","exe","com","dll","class" Return "application/octet-stream";Ausführbare Dateien Case "oda" Return "application/oda";Oda-Dateien Case "pdf" Return "application/pdf";Adobe PDF-Dateien Case "ai","eps","ps" Return "application/postscript";Adobe PostScript-Dateien Case "rtc" Return "application/rtc";RTC-Dateien Case "rtf" Return "application/rtf";Microsoft RTF-Dateien Case "smp" Return "application/studiom";Studiom-Dateien Case "tbk" Return "application/toolbook";Toolbook-Dateien Case "vmd" Return "application/vocaltec-media-desc";Vocaltec Mediadesc-Dateien Case "vmf" Return "application/vocaltec-media-file";Vocaltec Media-Dateien ;Case "htm","html","shtml","xhtml" ; Return "application/xhtml+xml";XHTML-Dateien Case "xml" Return "application/xml";XML-Dateien Case "bcpio" Return "application/x-bcpio";BCPIO-Dateien Case "z" Return "application/x-compress";zlib-komprimierte Dateien Case "cpio" Return "application/x-cpio";CPIO-Dateien Case "csh" Return "application/x-csh";C-Shellscript-Dateien Case "dcr","dir","dxr" Return "application/x-director";Macromedia Director-Dateien Case "dvi" Return "application/x-dvi";DVI-Dateien Case "evy" Return "application/x-envoy";Envoy-Dateien Case "gtar" Return "application/x-gtar";GNU tar-Archivdateien Case "hdf" Return "application/x-hdf";HDF-Dateien Case "php","phtml" Return "PHP-Dateien";application/x-httpd-php Case "js" Return "application/x-javascript";serverseitige JavaScript-Dateien Case "latex" Return "application/x-latex";LaTeX-Quelldateien Case "bin" Return "application/x-macbinary";Macintosh Binärdateien Case "mif" Return "application/x-mif";FrameMaker Interchange Format Dateien Case "nc","cdf" Return "application/x-netcdf";Unidata CDF-Dateien Case "nsc" Return "application/x-nschat";NS Chat-Dateien Case "sh" Return "application/x-sh";Bourne Shellscript-Dateien Case "shar" Return "application/x-shar";Shell-Archivdateien Case "swf","cab" Return "application/x-shockwave-flash";Flash Shockwave-Dateien Case "spr","sprite" Return "application/x-sprite";Sprite-Dateien Case "sit" Return "application/x-stuffit";Stuffit-Dateien Case "sca" Return "application/x-supercard";Supercard-Dateien Case "sv4cpio" Return "application/x-sv4cpio";CPIO-Dateien Case "sv4crc" Return "application/x-sv4crc";CPIO-Dateien mit CRC Case "tar" Return "application/x-tar";tar-Archivdateien Case "tcl" Return "application/x-tcl";Scriptdateien Case "tex" Return "application/x-tex ";TeX-Dateien Case "texinfo","texi" Return "application/x-texinfo";Texinfo-Dateien Case "t","tr","roff" Return "application/x-troff";TROFF-Dateien (Unix) Case "man","troff" Return "application/x-troff-man";TROFF-Dateien mit MAN-Makros (Unix) Case "me","troff" Return "application/x-troff-me";TROFF-Dateien mit ME-Makros (Unix) Case "me","troff" Return "application/x-troff-ms";TROFF-Dateien mit MS-Makros (Unix) Case "ustar" Return "application/x-ustar";tar-Archivdateien (Posix) Case "src" Return "application/x-wais-source";WAIS Quelldateien Case "zip" Return "application/zip";ZIP-Archivdateien Case "au","snd" Return "audio/basic";Sound-Dateien Case "es" Return "audio/echospeech";Echospeed-Dateien Case "tsi" Return "audio/tsplayer";TS-Player-Dateien Case "vox" Return "audio/voxware";Vox-Dateien Case "aif","aiff","aifc" Return "audio/x-aiff";AIFF-Sound-Dateien Case "dus","cht" Return "audio/x-dspeeh";Sprachdateien Case "Mid","midi" Return "audio/x-midi";MIDI-Dateien Case "mp2" Return "audio/x-mpeg";MPEG-Dateien Case "ram","ra" Return "audio/x-pn-realaudio";RealAudio-Dateien Case "rpm" Return "audio/x-pn-realaudio-plugin";RealAudio-Plugin-Dateien Case "stream" Return "audio/x-qt-stream";Quicktime-Streaming-Dateien Case "wav" Return "audio/x-wav";WAV-Dateien Case "dwf" Return "drawing/x-dwf";Drawing-Dateien Case "cod" Return "image/cis-cod";CIS-Cod-Dateien Case "ras" Return "image/cmu-raster";CMU-Raster-Dateien Case "fif" Return "image/fif";FIF-Dateien Case "gif" Return "image/gif";GIF-Dateien Case "ief" Return "image/ief";IEF-Dateien Case "jpeg","jpg","jpe" Return "image/jpeg";JPEG-Dateien Case "png" Return "image/png";PNG-Dateien Case "tiff","tif" Return "image/tiff";TIFF-Dateien Case "mcf" Return "image/vasa";Vasa-Dateien Case "wbmp" Return "image/vnd.wap.wbmp";Bitmap-Dateien (WAP) Case "fh4","fh5","fhc" Return "image/x-freehand";Freehand-Dateien Case "pnm" Return "image/x-portable-anymap";Anymap Dateien Case "pbm" Return "image/x-portable-bitmap";Bitmap Dateien Case "pgm" Return "image/x-portable-graymap";Graymap Dateien Case "ppm" Return "image/x-portable-pixmap";Pixmap Dateien Case "rgb" Return "image/x-rgb";RGB-Dateien Case "xwd" Return "image/x-windowdump";X-Windows Dump Case "xbm" Return "image/x-xbitmap";XBM-Dateien Case "xpm" Return "image/x-xpixmap";XPM-Dateien Case "wrl" Return "model/vrml";Visualisierung virtueller Welten (VRML) Case "csv" Return "text/comma-separated-values";kommaseparierte Datendateien Case "css" Return "text/css";Stylesheet-Dateien Case "htm","html","shtml";HTML-Dateien Return "text/html";HTML-Dateien Case "js" Return "text/javascript";JavaScript-Dateien Case "txt" Return "text/plain";reine Textdateien Case "rtx" Return "text/richtext";Richtext-Dateien Case "rtf" Return "text/rtf";Microsoft RTF-Dateien Case "tsv" Return "Text/tab-separated-values";tabulator-separierte Datendateien Case "wml" Return "Text/vnd.wap.wml";WML-Dateien (WAP) Case "wmlc" Return "application/vnd.wap.wmlc";WMLC-Dateien (WAP) Case "wmls" Return "Text/vnd.wap.wmlscript";WML-Scriptdateien (WAP) Case "wmlsc" Return "application/vnd.wap.wmlscriptc";WML-Script-C-dateien (WAP) Case "xml" Return "Text/xml";XML-Dateien Case "etx" Return "Text/x-setext";SeText-Dateien Case "sgm","sgml" Return "Text/x-sgml";SGML-Dateien Case "talk","spc" Return "Text/x-speech";Speech-Dateien Case "mpeg","mpg","mpe" Return "video/mpeg";MPEG-Dateien Case "qt","mov" Return "video/quicktime";Quicktime-Dateien Case "viv","vivo" Return "video/vnd.vivo";Vivo-Dateien Case "avi" Return "video/x-msvideo";Microsoft AVI-Dateien Case "movie" Return "video/x-sgi-movie";Movie-Dateien Case "vts","vtts" Return "workbook/formulaone";FormulaOne-Dateien Case "3dmf","3dm","qd3d","qd3" Return "x-world/x-3dmf";3DMF-Dateien Case "wrl" Return "x-world/x-vrml" End Select End Function |
||
- Zuletzt bearbeitet von Florian am Di, Jan 24, 2006 20:14, insgesamt einmal bearbeitet
![]() |
SoNenTyp |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das ist bestimmt brauchbar und du schreibst auch immer Recht guten Code, aber es währe nett wenn du mal zu deinen Programm eine kleine Beschreibung hinzu geben würdest, damit auch jeder weiß was du eigentlich meinst ohne 200 Zeilen Code zu lesen. | ||
Gruss Der Typ.
User posted image |
Florian |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Beschreibung
Die Daten die heruntergeladen werden soll zum Programm Ordner Kopieren. Das Programm starten. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group