Vbase server - server http + language script vbase

Soyez le premier à donner votre avis sur cette source.

Vue 5 389 fois - Téléchargée 776 fois

Description

Ce server permet de faire de votre pc un server ouéb , qui hébérge et donne des pages , avec une technologie utilisant Winsock 2 ( la dll ) , il redirige les requettes de connexions vers d'autres ports que le 80 , ce qui fait que le server est toujours en écoute , on pourrais donc le comparer à un server apache puisque la methode est la même .
Il est en version BETA , il fonctionne , cependant il ne prend pas en charge tout le protocole HTTP , et les methodes GET .
On peut lui mettre des scripts en VB , qui est en mélange entre le php et le visual basic , puisque certaines fonctions comme Echo ou GetVars ont été reproduites comme pour le php , cependant le script communique directement avec le server , et est un script EXE compilé .

Vous avez un exemple de script , car pour le moment je n'ai pas finit l'éditeur de script .

Vous verrez donc le code du exe décompilé , avec l'entourage et les fonctions echo ou getvars dans un autre module , cependant le script de base est dans la fonction On_Load , et c'est tout ce que vous aurez à modifier ...

Plus d'explication seront donées dans les prog lui-même et dans les sources .

Source / Exemple :


' Voilà un exemple de script VBASE , c'est le script permettant de naviguer sur les répétoires du server :

Dim IndexOf As String
Dim Path As String
Dim ExtType As String
Path = Server.GetVars("path")
IndexOf = Server.GetVars("IndexOf")
Echo "HTTP/1.0 300 Found" & vbCrLf
Echo "Server: VBASE server BETA/1.45.056" & vbCrLf
Echo "Content-type: application/octet-stream" & vbCrLf
Echo "MIME-Version: 1.0" & vbCrLf
Echo "Connection: Remote-Close" & vbCrLf
Echo vbCrLf
Echo "<html>" & vbCrLf
Echo "<head>" & vbCrLf
Echo "<title>" & IndexOf & "</title>" & vbCrLf
Echo "<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'>" & vbCrLf
Echo "</head>" & vbCrLf
Echo "" & vbCrLf
Echo "<body>" & vbCrLf
Echo "<table width='100%' border='0' cellpadding='0' cellspacing='0'>" & vbCrLf
Echo "<tr>" & vbCrLf
Echo "    <td><font size='5' face='Arial Black'><strong><img src='../img/opendir.gif'> Index of " & IndexOf & "</strong></font></td>" & vbCrLf
Echo "  </tr>" & vbCrLf
Echo "</table>" & vbCrLf
Echo "<hr width='100%'>" & vbCrLf
Echo "<table width='100%' border='0'>" & vbCrLf
Echo "  <tr>" & vbCrLf
Echo "    <td><img src='../img/dir.gif'></td>" & vbCrLf
Echo "    <td><a href='../'>- Parent -</a></td>" & vbCrLf
Echo "    <td></td>" & vbCrLf
Echo "    <td></td>" & vbCrLf
Echo "  </tr>" & vbCrLf

If Right(Path, 1) <> "\" Then _
Path = Path & "\"
MyName = Dir(Path, vbDirectory)
Do While MyName <> ""
    If MyName <> "." And MyName <> ".." Then
        If (GetAttr(Path & MyName) And vbDirectory) = vbDirectory Then
Echo "  <tr>" & vbCrLf
Echo "    <td><img src='../img/dir.gif'></td>" & vbCrLf
Echo "    <td><a href='" & IndexOf & MyName & "/'>" & MyName & "</a></td>" & vbCrLf
Echo "    <td></td>" & vbCrLf
Echo "    <td></td>" & vbCrLf
Echo " </tr>" & vbCrLf
        Else
ExtType = "    <td><img src='../img/unknown.gif'></td>" & vbCrLf
ext = Format(Right(MyName, 4), "<")
If ext = ".exe" Or ext = ".php" Or ext = ".bat" Then _
ExtType = "    <td><img src='../img/executable.gif'></td>" & vbCrLf
If ext = "html" Or ext = ".htm" Then _
ExtType = "    <td><img src='../img/htmldoc2.gif'></td>" & vbCrLf
If ext = ".bmp" Or ext = ".jpg" Or ext = ".gif" Or ext = ".ttf" Or ext = ".png" Or ext = ".wmf" Or ext = ".ico" Or ext = ".pcx" Then _
ExtType = "    <td><img src='../img/image.gif'></td>" & vbCrLf
If ext = ".dll" Or ext = ".drv" Or ext = ".sys" Or ext = ".ini" Or ext = ".dat" Then _
ExtType = "    <td><img src='../img/system.gif'></td>" & vbCrLf

Echo "  <tr>" & vbCrLf
Echo ExtType
Echo "    <td><a href='" & IndexOf & MyName & "'>" & MyName & "</a></td>" & vbCrLf
Echo "    <td>" & TailleFic(Path & MyName) & "</td>" & vbCrLf
Echo "    <td>" & FileDateTime(Path & MyName) & "</td>" & vbCrLf
Echo " </tr>" & vbCrLf
        End If
    End If
    MyName = Dir    ' Get next entry.
Loop
Echo "</table>" & vbCrLf
Echo "<hr>" & vbCrLf
Echo "<p><font size='1'>VBASE server vBETA - coded by aKhEnAtHoN - all rights reserved" & vbCrLf
Echo "  (c) </font></p>" & vbCrLf
Echo "</body>" & vbCrLf
Echo "</html>" & vbCrLf

Conclusion :


Pour le moment y'à pas trop de bugs , mais vous pouvvez toujour me prévenir de ce qui va pas .

Je cherche comme vous le verez dans le projet de l'aide , des mecs qui peuvent m'aider sur ce projet , donc si vous êtes partant contactez-moi .

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
575
Date d'inscription
dimanche 23 décembre 2001
Statut
Membre
Dernière intervention
23 octobre 2012

Oui c faisable, j'ai un code pour toi, qui créé des comptes sur caramail, je te le file ce soir quand je rentre chez moi. Passes-moi en pv ton adresse mail.
Messages postés
15
Date d'inscription
jeudi 25 décembre 2003
Statut
Membre
Dernière intervention
3 janvier 2004

aKheNathOn> Je suis ravi que vous allez continuer votre travail et votre determination de fer. Je m'attends donc à un resultat d'enfer! ;D

Ce que je veux faire, c'est envoyer des donnés vers un site web de vb. Comme pour les formulaire sur les sites web (login, etc...), mais directement de vb. Je sais que c'est faisable, mais j'aimerai savoir comment. Je vais faire des recherches, mais si vous pouvait me faciliter la tache, tant mieux.

Je vous remercie tous d'avance!
Messages postés
575
Date d'inscription
dimanche 23 décembre 2001
Statut
Membre
Dernière intervention
23 octobre 2012

ça me fais énormement plaisir que vous pensiez que ce logiciel ait vraiment une utilité, et je pense que bientôt je sortirais une autre version, qui ne serais pas une version BETA, mais franchement je continue à le penser, mais ce genre de programme existe déjà, alors à par refaire quelque chose d'existant, il n'a pas un grand avantage.

Ceci dit, c'est interessant, et je pense le continuer pour mon plaisir personnel.

fluxy001> Tu sais le protocole POST est assez compliqué, et t'as la solution GET qui me semble plus simple, ceci dit tout dépend de la taille des informations à envoyer.

Le protocole GET est limité à une taille de 512 caractéres je crois... mais ça reste à vérifier...

Pour le protocole POST je te conséille de regarder dans le tutoriaux de Vbfrance, j'ai sorti un tutoriel assez complet, et qui permet d'avoir une bonne approche du HTTP. Quand au post/get, faut que tu te renséignes, le protocole POST passe par le protocole MINE qui est super facile à gérer.

T'as pas mal de RFC barbantes à lire, mais je t'assure que le GET peut être une solution super simple à mettre en place.


Bonne prog à tous, et dés que je sort la version 2.0 de mon logiciel je posterais un message ici pour que vous soyez tous informés.

PS : Ceci dit, pour ceux que ça interesse, rien ne vous empéche de reprendre cette version et de l'améliorer, c'est de l'open source, et c'est là pour ça ;)
Messages postés
222
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
30 juin 2008

On peut facilement envoyer n'importe quoi avec HTTP. C'est un protocole bien simple. Si je comprend bien, tu veux créer une sorte de page web sur lequel on pourrais voir des statistiques sur l'ordi par exemple? Si oui, c'est très fesable. Post sert à envoyer de l'information client > serveur. Si tu a besoin d'aide, contacte moi.
Messages postés
15
Date d'inscription
jeudi 25 décembre 2003
Statut
Membre
Dernière intervention
3 janvier 2004

L'ami, il me semble que tu t'y connais en vb/server. Pourrait tu me dire si je peux envoyer des infos de vb, vers le web en utilisant le protocol 'POST'? J'aimerai aussi que tu m'expliques comment utiliser ton soft. C'est bien trop conpliqué pour que je le developpe, mais je peut peut-etre m'en servir...

Merci d'avance!

P.S Moi je te recommenderai de continuer de developper ton soft, meme si Apache et un grand rival. Tu auras la satisfaction du travail accompli, et c'est ca qui compte. Si linus Torvalds avait arreté le developpement de Linux par peur de Windows, on n'en serait pas un à un marché plus libre tel qu'il est actuellement. Bref, c'est à toi de decider. Je pourrai t'aider si tu veux. Je suis jeune (15ans) mais pas bete! :D
Afficher les 19 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.