Manipulez votre pc avec votre telephone - remote pc wap - inclus un mini language vb_wml

Description

Ce logiciel vous permet à partir de n'importe quel support qui se connecte au wap, de se connecter ensuite à votre pc et de le faire redemarrer à distance.

Pour les gens qui viennent là juste par curiosité, vous pouvez télécharger le zip, ensuite le dezipper un dans un répértoire de votre choix, puis lancer dirrectement le server Wap (icon de deux ecrans réseau), puis lisez attentivement le how to use, ou le texte-ci dessous :

Ce systéme est précodé.

La premiére fois que vous lancez l'executable, veuillez
cliquer sur User Accounts (mode unique) pour changer le mot
de passe, afin que personne ne puisse s'amuser avec votre pc.

Ensuite, vous cliquez sur démarer/executer puis vous tappez cmd.
Ensuite dans la ligne de code vous tappez IP Config, ainsi
vous obtiendrez votre IP.

N'oubliez pas avant de vous connecter avec votre mobile sur votre pc
de lancer le server et de le mettre en mode écoute.

Avec votre téléphone(ou pda) WAP connectez-vous à internet
puis allez sur cette url :

http://votre ip/

Ensuite aprés avoir accédé à une page d'acceuil, tout en bas vous avez
un lien vers le formulaire d'identification. Tappez ce que vous avez
définit comme nom d'utilisateur et mot de passe, puis 'cliquez' sur
login.

Là vous accéder sauf erreur de votre part sur une page ou vous aurez
3 choix... à vous de tester.

Quelques astuces maintenant :

- Pour ceux qui ont pas de téléphone wap ou de pda (c'est mon cas) allez
sur www.google.fr puis tappez : M3Gate.
C'est un emulateur wap gratuit. Vous n'avez même pas besoin de connection
internet, vous pouvez directement tapper l'adresse suivante pour naviguer :
http://localhost/

- Maintenant pour ceux qui aimeraient utiliser souvent ce systéme, voir
l'améliorer sachez que la redirection NO-IP fonctionne trés bien alors
faites vous un compte dessus et vous n'aurez plus besoin de chercher votre
ip.

Quelques détails techniques maintenant :

Avec ce server vous pouvez faire facilement un site wap non dynamique, vous n'avez
qu'à mettre vos fichiers wml dans le répértoire wap_files.

Le programme supporte cependant quelques fonctionnalitées de languages :

les balises script sont : <VB et VB>

vous avez la commande Login qui vous permetra de verifier les variables user et pass
en fonction des utilisateurs que vous avez definit dans le soft lui-même.
En paramétre il comprend le nom de la page d'erreur en cas de mauvais login.

Vous avez aussi la commande Print, prennant en paramétre le nom de la variable dont
on veut afficher le contenu.

Vous pouvez aussi utiliser les appels vers les fonctions logoff, shutdown, et reboot, les
fonctions de test que j'ai fait.

Il n'y à pas de syntaxe if, ou des boucles, si franchement j'aurais le temps (ce que je doute fort)
j'aimerais avec joie implémenter une version gérant le vbscript, et créant des objets server
pour que le script ressemble plus à l'asp, mais bon j'ai mis moins de 10 heures à faire cette
version donc ne vous attendez pas à des miracles.

Je pense vous avoir tout dit, si maintenant vous êtes un professionel interessé par cette
technologie je peux vous developper des versions orientées vers tel ou tel développement moyenant
une rémunération, en tout cas sachez que j'interdit tout commercialisation ou distribution
payante à par sur le cd de codes sources de ce code.

Vous pouvez cependant le modifier si vous m'en faites part, et l'utiliser dans vos projets
personnels sans aucun probléme.

Vous pouvez me contacter sans problémes sur le réseau vbfrance. (http://www.vbfrance.com)

Voilà un exemple ci-dessous qui vous explique comment ajoutter une fonction au parser :

Source / Exemple :


' Vous devez d'abord ouvrir le projet, puis accéder au module : WapRess
' Ensuite allez à cette fonction : ExecCmd
' Vous aurez en select case ainsi :

        Select Case Cmd
            Case "print":
                arrAr = Split(Args, ",")
                For i = 0 To UBound(arrAr)
                    SendBuffer = SendBuffer & GetVarValue(arrAr(i))
                Next i
            Case "login":
                If Not VB_WAP_LANGUAGE.TestLogin Then
                    Call SendFile(Args)
                    ExecCmd = 10000 'On considére les docs wap de moins de 1000 caractéres
                End If
            Case "logoff":
                ShutDown.LogOffNT True
            Case "shutdown":
                ShutDown.ShutDownNT True
            Case "reboot":
                ShutDown.RebootNT True
            Case Else
                'etc ...
                Call SaveLog(pos, Commande, "Comande inconnue !", "Elle n'est pas prise en compte")
        End Select

' La variable cmd correspond au nom de la fonction à rajoutter, et sachez que pour plus de compatibilitée elle est en case minuscule.
'On va donc implementer une fonction PrintTime, qui aura pour but d'afficher l'heure quand elle sera appelée, et pourra aussi contenir l'argument format, semblable a celui de vb.
' Donc on rajoute le case dans le selec case :

        Select Case Cmd
' ----- Debut de l'injection de code --------------------------------
            Case "printtime":
                SendBuffer = SendBuffer & PrintTime(Args)
' ----- Fin de l'injection ---------------------------------------------
            Case "print":
                arrAr = Split(Args, ",")
                For i = 0 To UBound(arrAr)
                    SendBuffer = SendBuffer & GetVarValue(arrAr(i))
                Next i
' etc ...
' Un peu d'explication :
' Alors sachez que la Variable Args contient la liste des arguments qu'on attribue à la fonction sous forme de chaine
' si on veut les rendre independants, il faudra les splitter, ils sont sépares par une virgule.
' La variable SendBuffer est une variables buffer contenant le résultat WML en sortie, donc on lui ajoutte le résultat en sortie de la fonction PrintTime
'Cette fonction n'existe pas encore dans le code, et on va donc la coder.
' Pour plus de rangement, je vais coder les extension de language dans le module VB_WAP_LANGUAGE :

Public Function PrintTime(byval ArgFormat as string) as string
  if ArgFormat <> empty Then
    PrintTime = Format(Time, ArgFormat)
  else
    PrintTime = Time
  end if
End Function

' Maintenant vous venez de faire une nouvelle fonction extensible au language VB_WAP. Pour y faire appel, je vais vous donner un exemple de script VB_WAP :

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
	<card id="accueil" title="Remote PCWAP - Exemple">
		<p align="center">
			<b><u>Voici l'heure interne du PC :</u></b>
		</p>
		<p>
<VB
PrintTime()
VB>

		</p>
	</card>
</wml>

' Bonne prog à tous, akh

Conclusion :


Maintenant je vais être assez technique pour les autres.

Le programme en lui-même tout le monde l'aura compris n'a AUCUN intéret du point de vue utilisation, c'est pas ce que j'ai recherché.

Il est parcontre interessant de voir comment à partir d'une technologie WAP on peut remonter jusqu'à la communication avec un PC.

Jusque là rien d'extraordinaire vous me direz, cependant je vous signale que pour ceux qui se disent, en php je fais la même chose, que c'est completement faux... Même si on peut offrir un service de consultation WAP avec ce genre de logiciel, vous pouvez beaucoup plus dans le domaine technique.

En prennant l'exemple d'un pda, et d'un administrateur réseau, qui est en vacance à la campagne (ben quoi ça peut arriver), et qu'on lui dit pour lundi matin y'à besoin de tel ou tel install, ou lieu de se déplacer, ben il peut le faire en tappottant avec son PDA.

L'exemple est mal choisit mais ça revient un peu à la démo de DevDays avec la VB.NET permettant de coder pour WindowsCe et de communiquer par proxy.

L'avantage :

Pas de contrainte d'ordinateur (On peut voyager, bouger sur le terrain).
L'ordinateur Portable est souvent inadapté dans de tels cas (pas de connection au réseau, autanomie faible <2/3 heures).
Cout moindre (5euro pour un abonement Wap Illlimité)
Coup de l'appereil de deux à 3 fois plus petit pour un PDA

Donc vous comprenez que par exemple pour un gerant souhaitant par exemple de savoir pour telle ou telle machine son rendement en temp réel (pour un systéme en JAT) il ne pourra jamais utiliser de l'asp ou du php, ils n'ont pas accés au appels dlls... ou autres.

Bréf pour en finir, pour moi c'est vraiment un projet amusant, et j'éspére qu'au moins quelques personnes iront regarder comment faire du wml, je me trippe dessus depuis quelques jours, y'à pas bcp de choix, mais c'est marrant.

Mettez vos critiques et vos blabla

Avant de poster ma source sachez juste que :

1 . Elle ne permet pas d'insérer des balises images (mode de connection en server fermé)

2 . Pas de multi-connexions en même temps

3 . Le script vb est capricieux au niveau balises :

... XML + <VB + Retour à la ligne
... + Retour à la ligne
VB> + XML ...

sachez aussi que vous pouvez personaliser vos fichiers erreur 404 et 500, ainsi que no_post.

Bonne prog et à tous, et à +, akh

Codes Sources

A voir également

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.