OVH Cloud OVH Cloud

[WD9 JAVA ]

11 réponses
Avatar
Dpe Conseil
Bonsoir,

Il y a quelque temps j'avais posté ce message :

" En conclusion WD9 ne s'est pas générer du code java. Simplement un
framework
et des class sans grande utilitée dommage j'étais pret à investir mais là je
suis décu.. "

Quelq'un peux me dire clairement si Windev9 sait générer du code java (
fichier .java ) ? Est ce une option ( style code natif java ) ?

Par avance merci,
David

1 réponse

1 2
Avatar
Romain PETIT
Romain PETIT avait prétendu :
dpl a pensé très fort :
Si un SDK est installé, WD9 génére des fichiers .jar avec possibilité
d'intégrer ou non le framework à l'archive.





Qui peut me faire parvenir un petit .jar WD9 ("Hello World" par exemple) ?
(sans le runtime évidemment)



Merci, c'est OK.
Le jar est facilement décompilable (avec par exemple DJ
http://members.fortunecity.com/neshkov/dj.html)
Pour ce qui est des .java obtenu, le code source de l'application est
assez clair.
Par contre, ils ont utilisé un offuscateur pour leur framework (une
partie du code est en clair, une autre fait appel à des instructions
directes à la JVM) .

par exemple, le code du projet :

import fr.pcsoft.wdjava.framework.projet.WDProjet;
import javax.swing.JOptionPane;

public class GWDPMon_Projet extends WDProjet
{

public GWDFMenu getMenu()
{
mWD_Menu.verifierOuverte();
return mWD_Menu;
}

public GWDPMon_Projet()
{
mWD_Menu = new GWDFMenu();
ajouterFenetre("Menu", mWD_Menu);
}

public static void main(String args[])
{
try
{
ms_leprojet = new GWDPMon_Projet();
ms_leprojet.initialiserProjet("Mon_Projet", args);
ms_leprojet.setCharge(true);
ms_leprojet.ouvre(2, "Menu");
}
catch(Exception exception)
{
String s = "Une erreur syst350me inattendue est survenue :
n" + exception.getMessage();
String s1 = "Mon_Projet";
JOptionPane.showMessageDialog(null, s, s1, 0);
}
}

public static GWDPMon_Projet ms_leprojet;
public GWDFMenu mWD_Menu;
}


Le code de la fernetre Menu

// Source File Name: GWDFMenu.java
import fr.pcsoft.wdjava.api.WDOBJ.WDAPIFenetre;
import fr.pcsoft.wdjava.framework.ihm.*;

public class GWDFMenu extends WDFenetre
{
class GWDFermer extends WDBouton
{

public void initialiserObjet()
{
super.initialiserObjet();
setFenetre(getWDFenetreThis());
setNouvellePolice("MS Shell Dlg", 8, false, false);
setNom("Fermer");
setType(4);
setBulle("");
setLibelle("Fermer");
setCurseurSouris(0);
setCouleur(0xf4000000);
setCouleurFond(0xe3dfe0);
setNavigable(true);
setEtatInitial(0);
setXInitial(228);
setYInitial(247);
setLargeurInitiale(80);
setHauteurInitiale(24);
setPlan(0);
setClicDroit("");
setAncrage(0);
setImageEtat(1);
setImage("");
setImageFondTroisImage(false);
setImageFondEtat(1);
setImageFond("");
setLargeurMin(0);
setHauteurMin(0);
setLargeurMax(0x7ffffff);
setHauteurMax(0x7ffffff);
setVisibleInitial(true);
setNumTab(2);
setAltitude(2);
setTauxAncrageDroite(1000);
setTauxAncrageLargeur(1000);
setTauxAncrageBas(1000);
setTauxAncrageHauteur(1000);
setLettreAppel(65535);
setTypeBouton(0);
setPresenceLibelle(true);
activerEcoute();
}

public void clicSurBoutonGauche()
{
super.clicSurBoutonGauche();
WDAPIFenetre.ferme();
}

public void activerEcoute()
{
activerEcouteurClic();
}

GWDFermer()
{
}
}

class GWDHello extends WDBouton
{

public void initialiserObjet()
{
super.initialiserObjet();
setFenetre(getWDFenetreThis());
setNouvellePolice("MS Shell Dlg", 8, false, false);
setNom("Hello");
setType(4);
setBulle("");
setLibelle("Dire Bonjour");
setCurseurSouris(0);
setCouleur(0xf4000000);
setCouleurFond(0xe3dfe0);
setNavigable(false);
setEtatInitial(0);
setXInitial(117);
setYInitial(109);
setLargeurInitiale(80);
setHauteurInitiale(24);
setPlan(0);
setClicDroit("");
setAncrage(0);
setImageEtat(1);
setImage("");
setImageFondTroisImage(false);
setImageFondEtat(1);
setImageFond("");
setLargeurMin(0);
setHauteurMin(0);
setLargeurMax(0x7ffffff);
setHauteurMax(0x7ffffff);
setVisibleInitial(true);
setNumTab(-1);
setAltitude(1);
setTauxAncrageDroite(1000);
setTauxAncrageLargeur(1000);
setTauxAncrageBas(1000);
setTauxAncrageHauteur(1000);
setLettreAppel(65535);
setTypeBouton(0);
setPresenceLibelle(true);
activerEcoute();
}

public void clicSurBoutonGauche()
{
super.clicSurBoutonGauche();
WDAPIFenetre.info("Hello!");
}

public void activerEcoute()
{
activerEcouteurClic();
}

GWDHello()
{
}
}


public GWDFMenu()
{
}

public void activerEcoute()
{
}

protected void creerChamps()
{
mWD_Hello = new GWDHello();
mWD_Fermer = new GWDFermer();
}

public void initialiserObjet()
{
setNom("Menu");
setType(1);
setBulle("");
setCouleur(0);
setCouleurFond(0xe3dfe0);
setXInitial(0);
setYInitial(0);
setLargeurInitiale(320);
setHauteurInitiale(320);
setTitre("Menu");
setPositionFenetre(3);
setRedimensionnable(false);
setDeplacementParLeFond(false);
mWD_Hello.initialiserObjet();
m_conteneur.ajouterFils("Hello", mWD_Hello);
mWD_Fermer.initialiserObjet();
m_conteneur.ajouterFils("Fermer", mWD_Fermer);
}

public GWDHello mWD_Hello;
public GWDFermer mWD_Fermer;
}

--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
1 2