Créer un exécutable sous windows affichant 1 seule URL en plein ECRAN

Eléphant du PHP | 88 Messages

13 sept. 2008, 10:55

Bonjour, je ne pense pas que ce sujet soi dans la bonne catégorie, mais voici mon problème.

Je veut créer un genre de navigateur exécutable sous windows, ayant aucune bordure, aucun bouton, aucun raccourci clavier et n'affichant qu'une seule url EN PLEIN ECRAN.

Quel langage doit-je utiliser ?

Je veut l'utiliser pour la création d'un jeu en ligne (gratuit).

Le problème c'est que les navigateur n'accepte pas le plein ecran (un vrai plein ecran).

Certain sont configurer par l'utilisateur ou pas, pour ne pas accepter le JavaScript, les pop-up....

Je pense que je vais mettre ce future petit navigateur à télécharger sur la page d'accueil...


Pour ceux qui connaissent DOFUS.... je voudrais faire un peu pareil...


Merci
Cordialement zaknaou

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

13 sept. 2008, 11:10

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "Méthodologie, modélisation, sécurité".
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 3607 Messages

13 sept. 2008, 14:17

Bonjour,
Je suis en train de te répondre en plein écran, via firefox...
Je comprend pas trop pourquoi tu dits que les navigateurs ne l'accepte pas?
Pourquoi veux tu être en plein écran?

ViPHP
ViPHP | 4039 Messages

13 sept. 2008, 15:07

Va voir du côté de PRISM. (https://wiki.mozilla.org/Prism)

D'après ce que tu dis, c'est ce qu'il te faut.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Mammouth du PHP | 959 Messages

13 sept. 2008, 23:44

Y'a longtemps, un jour où j'avais rien à faire j'ai installer Microsoft Visual Basic et j'ai fais un truc de ce genre uniquement en mode édition (pas de code) dans le logiciel, avec un splash screen et tout et tout... dans cette application y'avait simplement un cadre avec une URL configurer par défaut, il utilisé internet explorer pour inclure la page ;)

EDIT: mais il faut le framework .net pour que ça marche :s je sais pas si maintenant sous vista il est déjà inclus... à voir ;)

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

14 sept. 2008, 06:19

Tu peux utiliser VB6 si tu veux pas utiliser le framework .Net
Sous VB6, il y'a l'objet ActiveX "Internet Browser" basé sur Internet Explorer qui est un cadre d'affichage de pages Web que tu peux programmer par ton application vb exécutable.

Voici un exemple de code pour paramétrer et lancer l'objet browser (nommé WebBrowser1 dans cet exemple)

Code : Tout sélectionner

'Démarrage de l'application = chargement d'une page par défaut Private Sub Form_Load() Me.Caption = "Navigateur Internet" Me.BackColor = RGB(0, 0, 0) WebBrowser1.Navigate2 ("www.google.fr") End Sub 'Tailles du navigateur = tailles de la fenêtre Private Sub Form_Resize() WebBrowser1.Width = Me.Width - 100 'voir aussi Me.scaleWidth WebBrowser1.Height = Me.Height - 100 'voir aussi Me.scaleHeight End Sub
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 88 Messages

15 sept. 2008, 10:52

Merci, je vais d'abord essayer Visual Basic 6 Runtime (6.0 SP5)... :D

-> Téléchargement de Visual Basic 6 effectué.. ^^

Maintenant que c'est fait que doit-je faire ?
Il y'a l'objet ActiveX "Internet Browser" basé sur Internet Explorer qui est un cadre d'affichage de pages Web que tu peux programmer par ton application vb exécutable.
Comment le faire ??
Créer un fichier texte et modifier l'extension ???


Merci
Cordialement zaknaou

Eléphant du PHP | 185 Messages

15 sept. 2008, 11:50


Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

15 sept. 2008, 12:31

Effectivement savageman ton idée est pas mal du tout. Un script HTA (HTML Application) est une solution très simple sans passer par VB ni d'autres langages. Le HTA s'écrit en HTML et est immédiatement exécutable par Windows.

Voici un exemple :
Créez un fichier dans un éditeur de texte (le bloc-notes par exemple) en le nommant "doc1.hta"
Puis écrivez dedans le code HTML suivant:

Code : Tout sélectionner

<html> <head> <title>Mon Navigateur Web</title> </head> <body> <iframe src="http://www.google.fr" frameborder="0" width="100%" height="100%"></iframe> </body> </html>
Enregistrez le fichier "doc1.hta" puis pour l'exécuter faites un double-clic dessus. Une fenêtre sera ouverte contenant la page Web que vous avez codé en HTML.

Le code HTML de cet exemple, affiche un <iframe> (navigateur interne) qui charge et affiche le site de google.fr en plein-page.

N.B.
Le résultat d'un script HTA est rendu dans une fenêtre basée sur Internet Explorer et s'exécute au niveau de l'ordinateur local, il peut donc accéder aux ressources locales (fichiers, imprimantes) autorisées dans la session de l'utilisateur ainsi qu'aux ressources distantes (http, ftp, lan).
Modifié en dernier par sadeq le 15 sept. 2008, 23:03, modifié 1 fois.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 88 Messages

15 sept. 2008, 17:31

Merci, j'ai essayé de mettre en pratique ce qu'il y a dans le tutoriel sur le site du zero et de combiner avec ce que ma dit sadeq. Mais je n'arrive pas à faire un plein écran sans bordure, chez moi l'attribut CATION="No" ne marche pas... et il est impossible de cliquer sur un champs de texte afin d'ecrire...
Cordialement zaknaou

Eléphant du PHP | 185 Messages

15 sept. 2008, 18:50

C'est caPtion, pas cation...

Mammouth du PHP | 959 Messages

15 sept. 2008, 18:57

Rajoute
SCROLL="No"

et puis dans body :

Code : Tout sélectionner

<body style="margin:0px;padding:0px">
Comme ça t'es sûr d'avoir aucun problème avec les barres de défilement si la page est plus "haute" que ta fenêtre (sinon ça fais une double barre de défilement... beurk ^^)

EDIT : Rajoute

Code : Tout sélectionner

<script type="text/Javascript"> window.resizeTo(screen.width,screen.height); window.moveTo(0,0); </script>
xD

Eléphant du PHP | 88 Messages

15 sept. 2008, 19:26

Oui dans mon code j'avais mis CAPTION, désolé.

Mon code ressemble à ça :

Code : Tout sélectionner

<html> <head> <title>Star Battle Front</title> <HTA:APPLICATION APPLICATIONNAME="Star Battle Front"> <HTA:APPLICATION BORDER="none"> <HTA:APPLICATION ICON="icone.ico"> <HTA:APPLICATION CAPTION="No"> <HTA:APPLICATION NAVIGABLE="No"> <HTA:APPLICATION SCROLL="No"> </head> <body style="margin:0px;padding:0px" bgcolor="#000000"> <iframe src="http://www.google.fr" frameborder="0" width="100%" height="100%"></iframe> <script type="text/Javascript"> window.resizeTo(screen.width,screen.height); window.moveTo(0,0); </script> </body> </html>
Il y a bien q'une seule scroll bar mais toujours une bordure, environ de 10px c pas beau ! ^^

--->>

Ha c'est bon j'ai trouvé sur :

http://www.javascriptfr.com/codes/EXPLO ... 46544.aspx

un petit bout de code et combiner avec mon code ça donne :

<html>
<head>
<title>Star Battle Front</title>
<hta:application
showintaskbar = "yes"
caption = "no" f
border = "thick"
contextmenu = "yes"
scroll = "no"
innerborder = "no"
singleinstance = "yes"
resizable = "yes"
windowState = "maximize"
navigable = "yes"
>
</head>
<body style="margin:0px;padding:0px" bgcolor="#000000">
<iframe src="http://www.skyrouk.ton-hebergement-grat ... /indew.php" frameborder="0" width="100%" height="100%"></iframe>
<script type="text/Javascript">
window.resizeTo(screen.width,screen.height);
window.moveTo(0,0);
</script>
</body>
</html>

Mais c'est presque du plein ecran

le fichier dont je me suis aidé est lui à 100% en plein ecran voici son code :

Code : Tout sélectionner

<html> <head><!-- fullscreen but with title bar: caption = "yes" --> <hta:application showintaskbar = "yes" caption = "no" f border = "thick" contextmenu = "yes" scroll = "no" innerborder = "no" singleinstance = "yes" resizable = "yes" windowState = "maximize" navigable = "yes" > <title>.:: Albums ::.</title> <STYLE TYPE="text/css"> <!-- @import url(css.css); --> </style> <script type="text/javascript"> var fso=new ActiveXObject("Scripting.FileSystemObject"); var tbl = new Array; var nomimage= ''; var imgnbr = 0; var yesno = 0; var albumselected = 0; var intval=""; function Aller() { var url = unescape(self.location.pathname); var adr = (fso.GetExtensionName(url).toLowerCase()!='hta')?1:0; var dir = fso.GetParentFolderName(url).substr(adr); i = 0; tbl['0'] = ''; f = fso.GetFolder(dir); var f2 = new Enumerator(f.subfolders); for(; !f2.atEnd(); f2.moveNext()) { i++; tbl[i] = '<form name="form'+i+'"><select name="liste'+i+'" size="1" onChange="chitem('+i+')"><option value="0">Sélectionner une photo</option>'; document.write("<option value=\""+foldername(f2.item())+"\">"+foldername(f2.item())+"</option>"); ff = fso.GetFolder(f2.item()); var f1 = new Enumerator(ff.files); var y = 0; for(; !f1.atEnd(); f1.moveNext()) { if (fso.GetExtensionName(f1.item()) == "jpg"||fso.GetExtensionName(f1.item()) == "JPG") { y++; tbl[i] += '<option value="'+f1.item()+'">'+fso.GetFileName(f1.item())+'</option>'; } } tbl[i] += '</select></form>'; } } function foldername(str){ var str1 = str+""; var reg = new RegExp("[\\\\]+", "g"); tableau = str1.split(reg); return tableau[tableau.length-1]; } function chitem(num){ obj = document.forms['form'+num].elements['liste'+num].options[document.forms['form'+num].elements['liste'+num].selectedIndex]; nomphoto = obj.value; if(obj.value == 0){ document.image.document.body.innerHTML = ''; document.getElementById('image').style.display = 'none'; document.getElementById('mylink').style.display = 'none'; document.getElementById('prec').style.display = 'none'; document.getElementById('suiv').style.display = 'none'; } else{ document.getElementById('mylink').style.display = ''; imgnbr = document.forms['form'+num].elements['liste'+num].selectedIndex; document.getElementById('prec').style.display = 'none'; if(imgnbr>1){ document.getElementById('prec').style.display = ''; } aa = imgnbr; aa++; document.getElementById('suiv').style.display = 'none'; if(document.forms['form'+albumselected].elements['liste'+albumselected].options[aa]){ document.getElementById('suiv').style.display = ''; } document.getElementById('image').style.display = ''; document.getElementById('mylink').innerHTML = "taille réelle"; yesno=0; document.image.document.body.innerHTML = "<img height=\"100%\" src=\""+obj.value+"\"/>"; document.getElementById('txtdiv').innerHTML = "<object data=\""+document.forms['albform'].albums.options[albumselected].value+"/"+fso.GetFileName(obj.value)+".txt\" type=\"text/plain\" width=\"400px\" height=\"90px\" ViewAsText></object>"; //if(!fso.FileExists(obj.value+".txt")) //{ // fso.CreateTextFile(obj.value+".txt"); //} } } function chliste(form){ document.getElementById('image').style.display = 'none'; document.image.document.body.innerHTML = ''; document.getElementById('mylink').style.display = 'none'; document.getElementById('prec').style.display = 'none'; document.getElementById('suiv').style.display = 'none'; document.getElementById('diaplink').innerHTML = "start"; window.clearInterval(intval); intval = ""; i = form.albums.selectedIndex; albumselected = i; if(i!=0){ document.getElementById('controle').style.display = ''; document.getElementById('diaplink').style.display = ''; } else{ document.getElementById('controle').style.display = 'none'; document.getElementById('diaplink').style.display = 'none'; } document.getElementById('mydiv').innerHTML = tbl[i]; } function grand(){ if(yesno==0){ document.image.document.body.innerHTML = "<img src=\""+nomphoto+"\"/>"; yesno=1; document.getElementById('mylink').innerHTML = "taille réduite"; } else{ document.image.document.body.innerHTML = "<img height=\"100%\" src=\""+nomphoto+"\"/>"; yesno=0; document.getElementById('mylink').innerHTML = "taille réelle"; } } function diapo(){ myobj = document.forms['form'+albumselected].elements['liste'+albumselected].options; imgnbr++; if(myobj[imgnbr]){ document.forms['form'+albumselected].elements['liste'+albumselected].selectedIndex = imgnbr; chitem(albumselected); } else{ imgnbr=1; document.forms['form'+albumselected].elements['liste'+albumselected].selectedIndex = imgnbr; chitem(albumselected); } } function prec(){ myobj = document.forms['form'+albumselected].elements['liste'+albumselected].options; imgnbr--; if(imgnbr==0){ imgnbr=1; } else{ if(myobj[imgnbr]){ document.forms['form'+albumselected].elements['liste'+albumselected].selectedIndex = imgnbr; chitem(albumselected); } else{ imgnbr++; } } } function suiv(){ myobj = document.forms['form'+albumselected].elements['liste'+albumselected].options; imgnbr++; if(myobj[imgnbr]){ document.forms['form'+albumselected].elements['liste'+albumselected].selectedIndex = imgnbr; chitem(albumselected); } else{ imgnbr--; } } function start_Int(){ if(intval==""){ diapo(); intval=window.setInterval("diapo()",2000); document.getElementById('diaplink').innerHTML = "stop"; }else{ window.clearInterval(intval); intval=""; document.getElementById('diaplink').innerHTML = "start"; } } </script> </head> <body> <div style="position:absolute;right:2px;top:2px;"><img src="fermer.jpg" style="width: 16px; height: 14px;" onclick="top.window.close()"/></div> <form name="albform"> <select name="albums" size="1" onChange="chliste(this.form)"><option>Sélectionner un album</option> <script type="text/javascript"> Aller(); </script> </select></form> <div id=mydiv></div> <div style="" id="txtdiv"></div> <div id="controle" style="display:none;"> <a id="diaplink" style="display:none;" href="javascript:void('0')" onClick="start_Int()">start</a>&nbsp; <a id="prec" style="display:none;" href="javascript:void('0')" onClick="prec()">précédente</a>&nbsp; <a id="suiv" style="display:none;" href="javascript:void('0')" onClick="suiv()">suivante</a>&nbsp; <a id="mylink" style="display:none;" href="javascript:void('0')" onClick="grand()">taille réelle</a> </div> <iframe name="image" id="image" allowTransparency="true" style="display:none;"></iframe> </body> </html>
quel éléments doig-je utiliser ?
Cordialement zaknaou

Mammouth du PHP | 959 Messages

15 sept. 2008, 19:51

Code : Tout sélectionner

<html> <head> <title>Star Battle Front</title> <HTA:APPLICATION APPLICATIONNAME="Star Battle Front"> <HTA:APPLICATION BORDER="none"> <HTA:APPLICATION ICON="icone.ico"> <HTA:APPLICATION CAPTION="No"> <HTA:APPLICATION NAVIGABLE="No"> <HTA:APPLICATION SCROLL="No"> <script type="text/Javascript"> window.resizeTo(screen.width,screen.height); window.moveTo(0,0); </script> </head> <body style="margin:0px;padding:0px; background-color:#000000;"> <iframe src="http://www.google.fr" frameborder="0" width="100%" height="100%" style="border:0px;"></iframe> </body> </html>
Petite amélioration : script JS monté dans le head, et bgcolor mis dans l'attribut "style" déjà existant.
Mais ton fond noir devrait servir à rien puisque la frame occupe 100% de la fenêtre...

Sinon, je vois pas exactement de quoi tu veux parler... Screen ? :)

EDIT: Ah ok, je pense qu'il faut juste rajouter

Code : Tout sélectionner

INNERBORDER="No"
Je pense que ça devrait marcher

Eléphant du PHP | 88 Messages

15 sept. 2008, 21:53

C'est bon j'ai résolut ça à l'aide de l'exemple dont j'ai donné le lien...

Merci à vous

Juste un dernier truc : savez-vous comment donner une icône au fichier ? car sur le tuto c'était juste une icône pour la barre de titre...