Mise à jour Windev 15 046f

MAJ 9 février : Ca marche ! (enfin c'est un début)


wide_wdsc252_debian.jpg wide_wdsc252_debian2.jpg

Pour obtenir ces captures d'écran, il m'a fallu "brancher" la dédibox à un autre poste linux, ici même, les interfaces linux sont des terminaux :p

8 février :
La mise à jour 046f de Windev 15 apporte une amélioration sous Linux, la fonction Ouvre() semble fonctionner...
Du moins elle ne provoque plus l'erreur fatale de la version 039g..

[ - Initialisation de wdscript, ln 329]

Coloration WLangage (dont WDScript) sous UltraEdit

Enfin terminé.... le recensement des Constantes WLangage v15.

J'en ai donc profité pour créer un fichier de Coloration Syntaxique complet pour le WLangage sous UltraEdit :)

UltraEdit gère l'autocomplétition, les transferts ftp ou sftp (ssh), la correction orthographique et vous pouvez même compresser les balises WDScript et HTML (symbole [-]/[+])


wide_uedit15.png

Je compléterai bientôt ceux d'autres éditeurs EditPlus, Crimson, HomeSite et Notepad++ car je me suis fait un outil pour tenir ces fichiers à jour...

WDScript 2.5.1, Premiers pas vers le Web 2.0...

Après quelques jours de recherche et de tests divers supplémentaires sur différentes plateformes et serveurs web,
le mode FastCGI (Mode Server ou Backend) se dirige vers le mode d'utilisation Standard et recommandé de WDscript.

Les performances d'IIS 7.5 (Livré avec Windows Seven) sont impressionantes et semblent plus "fluides" qu'Apache 2.2

L'accès Natif MySQL Linux ne semble pas poser trop de soucis si l'on fait bien attention a fermer les requetes (HAnnuleDeclaration).

JSON

Donc cette version contient une fonction de Sérialisation JSON()

C'est un format d'échange plus compact que le XML et plus pratique à lire... Et surtout qui permet d'être transformé en objet par Javascript (votre Navigateur) en une seule ligne... eval(sData);

Un nouveau Wiki pour WDScript

Un nouveau Wiki est en cours de fabrication pour la documentation de WDScript

http://wdscript.sf.net/wiki/

Ce Wiki est basé sur Trac, qui permet de lier des rapports de bugs
C'est ce wiki qui sera utilisé comme documentation de référence pour les liens de la coloration syntaxique de WDScript.

Exemple :

sIDSesssion=GetToken()
CookieEcrit("sid",sIDSesssion,0,60)  

Pour voir la liste des fonctions, en cours de réactualisation :
http://sf.net/apps/trac/wdscript/wiki/Fonctions

Sinon, l'ancien Wiki (WDScript version 2.1) est toujours Disponible ici : http://wdscript.sourceforge.net/help/

Sourceforge a complétement modifié son hébergement, et il m'est impossible de conserver le TWiki (fait à l'origine avec des exécutables cgi linux)

L'acces natif MySQL sous Linux, no soucis :)

Dans le fichier Projet :

[FILES]
;Nom de l'analyse
HFNAME=Test MySQL Sous Linux 
;Chemin de l'analyse par défaut dans les pages
HFANA=./MLWindev.wdd
;Mot de passe de l'analyse
HFPASS=

Fichier index.wss :

<html>
<pre> 
<WDSCRIPT>
 
sProjetUrl est chaine = GetHtmlUrl() 
 
<OUT>
Connexion en cours : [%ml..Connexion%]  
Projet en cours : <a href="wdscriptinfo.wss">[%  "Voir le fichier " + sProjetUrl %]</a>
</OUT>  
 
//---------------------------------------------------------------------------------------
// Methode via Requete
 
sReq est chaine = [
SELECT COUNT(*) AS RES FROM ml
]
 
 
//DataSource est une Source de Données
 
SI PAS HExécuteRequêteSQL(DataSource,ml..Connexion,hRequêteSansCorrection,sReq) ALORS
 
        //Bug linux WDScript v2.5.0 (corrigé en v2.5.1)
        //Erreur(HErreurInfo(hErrComplet))
        Erreur(Remplace(Remplace(HErreurInfo(hErrComplet),caract(10),"\n"),caract(13),""))
 
SINON

Fichier de Coloration WLangage v15 en PHP (GeSHi / Drupal)

(MAJ 09 Février 2010) WLangage v15 (46f) (avec les constantes) + Fonctions WDScript :p

Bon ca suffit pour le moment, voilà le fichier Geshi en cours, car la suite risque d'etre dans les sources de Geshi...

Les chaines multilignes posent encore probleme si des mots windev y sont inclus, mais la couleur de fond reste bonne... Je trouve deja cela bien exploitable...

Mais toutes les fonctions WD/WB/WM 15 sont présentes, cette fois repris à zéro depuis la documentation...

GeSHi, à ma connaissance, est la seule classe assez au point en PHP pour colorier du code WLangage.
Le projet GeSHi est situé sur http://sourceforge.net/projects/geshi/ J'ai utilisé la version 1.7.0.22 cette année, mais la nouvelle version 1.0.8.6 semble tres correcte...

La plupart des forums, blogs et CMS PHP possèdent un module pour utiliser Geshi, afin d'afficher du code coloré, et (Nouveauté) lier les fonctions à la documentation, comme je l'ai fait via à lien hypertexte..

WDScript v2.5.0 Version Finale

Voilà, WDScript Server 2.5.0 (v15) est finalement au point, que ce soit sous Windows ou sous Linux.

Biensûr la version linux ne dispose pas de toutes les possibilités offertes par la version Windows, car le framework linux est encore limité (pas de génération d'image par exemple)

Néanmoins, ceci peut être fait avec l'aide d'un autre outil sous linux, comme PHP, un cgi ou une ligne de commande... (Il est possible d'extraire des images d'une base de données sur le disque avec WDScript et de les lier ensuite sur un site via un script PHP par exemple, voir directement)

Mais cela ne limite par réellement WDScript, la plupart des sites PHP ne générent pas les images, elles sont simplement placées dans un répertoire du site...

Voici un schéma concernant le protocole FastCGI, travail effectué depuis la pré-version 2.4.8 :

Easy Web Server v2.5.x avec WDScript FastCGI préconfiguré

Enfin, apres quelques semaines de travail sur ses composants, voici mon package WAMP prêt à l'emploi pour WDScript 2.5.0...

ews250.png

Il contient aussi PHP, SQLite 2 et 3, MySQL 5.1 InnoDB et PhpMyAdmin préconfigurés pour les bases relationnelles.

J'y ai inséré deux nouvelles démo wdscript concernant SQLManagerX, pour le moment limité aux classes des accès inexistants en Windev,
à savoir SQLite4WD et PHP4WD...

Avec PHP4WD (cf. site de Frédéric Emprin), vous pouvez accéder à une base située sur un autre serveur web, via un système de requêtes HTTP cryptées ! Et donc accéder aux bases d'un site d'hébergement avec PHP comme free.fr :)

WDScript v2.5.0 en préparation, nouveauté : Le mode FastCGI

Ce nouveau mode d'exécution est maintenant pris en charge dans les nouvelles versions de WDScript. (depuis v2.4.8)

UPDATE 21 Jan. : WDScript 2.4.9 WD15 : Le mode FastCGI est Compatible IIS 7.5 ! ainsi que Apache 2.2 et Lighttpd Windows et Linux
UPDATE 15 Jan. : Sources WDScript 2.4.8 WD15 avec Librairies Fast CGI dispo (1ere préversion 2.5.0)
Lien vers les téléchargements sur sf.net : http://sourceforge.net/projects/wdscript/files/

Le mode FastCGI est à mi-chemin entre le CGI (Process qui effectue un traitement unique) et un mode Client/Serveur où le serveur
serait l'application WDScript.

Je cherchais à obtenir ce mode Client/Serveur via un module PHP fait par mes soins (en Delphi) mais cela n'a jamais été parfait, car je cherchais
à faire du Multithread directement en Windev sur un projet migré depuis Windev 5.5...

Avantages

WDScript 15 v2.4.5 fonctionne normalement sous linux !

Je confirme, la compilation dynamique fonctionne enfin correctement sous linux avec Windev 15.

Plus besoin du mode précompilé pour faire fonctionner le projet wash sous linux...

Vous pouvez le tester ici sur Lighttpd, avec un tout petit celeron 1.2Ghz (FastCGI) : http://tanguy.ath.cx/wash/

EDIT: Maintenant disponible
Il reste toutefois une limitation de Windev 15 concernant la compilation dynamique, les procédures globales surchargées ne semblent pas prioritaires...
Il y a dans le projet une collection de procédure normmée"Linux" dans laquelle j'ai mis les principales fonctions WLangage non supportées ou non finalisées...

Exemple :

IniLit("","","",sFichierIni) //ne renvoie rien... Sous windows, cela renvoie les sections
Linux.IniLit("","","",sFichierIni) //Patch temporaire pour obtenir les sections d'un fichier INI

SQLiteManager 1.2.1 (Support PHP 5.3)

Je travaille actuellement sur une nouvelle version de EWS (Easy Web Server) et en mettant à jour ses composants,
je me suis rendu compte que PHP 5.3 apportait énormément de changements, car c'est une version plus proche de PHP 6.0 que de PHP 5.0

J'ai contribué il y a quelques années au projet SQLiteManager (Theme, amélioration du code) et j'ai donc passé quelques heures afin de le mettre à jour...

Voici donc en pièce jointe la préversion 1.2.1, qui ne contient pas de nouveautés, mais qui supporte aussi bien PHP 5.3 que les versions précédentes...

Windev Version 15, enfin une évolution sous linux !

Apres 5 ans et 5 versions de Windev (depuis windev 10), la fonction magique "Compile()" fonctionne enfin correctement sous linux, (du moins mieux qu'en Windev 14) !

package-versions-15_Copyright-PCSoft.png

Nous devons certainement cette évolution au support Android de Windows Mobile (qui fonctionne sur un noyau linux).
Les projets WLScript et WDScript vont donc pouvoir reprendre :)

Merci à Pcsoft et à Google :)

sRes est chaine
 
sDate est une chaine = DateVersChaine(DateSys())
sRes += "Nous sommes le "+sDate + RC
 
sRes += "fRepExe() = "+fRepExe()
 
RENVOYER sRes

dedib:/usr/share/wlscript# wlscript -s ./test.wl
Nous sommes le 23/12/2009
fRepExe() = /usr/share/wlscript

A suivre...

Projets GPIOgfx et S3Clock S3C64x0

GPIOgfx est un outil créé avec Windev Mobile 14.
Il est basé sur les ajouts que j'ai programmé pour l'outil HaReT (voir sur cette page...)

New (22 Dec 2009) : S3Clock is a clock tool made with Visual Studio 2008, this tool can keep frequencies on wake up from sleep...

Ce programme est conçu uniquement pour les appareils utilisant un processeur Samsung S3C64xx, et si possible en WVGA (480x800). A savoir donc, les smarphones Acer série 900 et Samsung Omnia II, ou encore la tablette SmartQ 5/7.


gpiogfx200.gif gpiogfx200v10d.gif gpiogfx200v11a.gif gpiogfx200v12a.gif

Il permet (à l'origine) d'identifier les entrées/sortie de l'appareil en vue d'un portage vers Linux.

Smartphone Acer M900 - HaReT S3C6410

Après quelques semaines de travail sur le HTC Kaiser (TyTn 2), mon premier Smartphone WinCE ayant pu démarrer sour Linux,
je m'attaque à un projet d'une autre ampleur, permettre à un Smartphone récent de démarrer sous linux.... L'ACER M900.

Vous pourrez trouver sur ces pages wiki mes premiers pas concernant cet appareil et le cpu Samsung S3C6410XL (en Anglais):

  • http://htc-linux.org/wiki/index.php?title=M900
  • http://wiki.xda-developers.com/index.php?pagename=Acer_M900
  • Android - InitRD et RootFS HTC

    android_diagonale.jpg

    Voici ma première création de branche Git sur GitHub (Collaboration du style SVN)

  • Mise à jour de busybox (1.15.2) dans le rootfs compatible HTC d'android (pour modeles Kaiser, Vogue, Polaris, Nike, etc)
  • Busybox est un ensemble de commandes shell linux, il est tres important de le conserver à jour pour avoir acces aux nouvelles fonctions.
    Il est utilisé dans les routeurs modernes et sur les téléphones/PDA Android

    Syndiquer le contenu