begin process at 2010 02 09 21:23:29
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseau & Internet

 > DERNIERES INFOS DU NET. (SITE PC INPACT)

DERNIERES INFOS DU NET. (SITE PC INPACT)


 Information sur la source

Note :
8,5 / 10 - par 4 personnes
8,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Réseau & Internet Classé sous :pcinpact, news, socket, picwin Niveau :Initié Date de création :10/11/2005 Date de mise à jour :11/11/2005 13:52:15 Vu :3 740

Auteur : AgoRa_ScripT

Ecrire un message privé
Site perso
Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
C'est un code en picwin, qui affiche les dernieres infos du net, j'ai choisi PC Inpact, car il y en a "presque" toutes les heures. C'est mon 1er code concret en picwin.. il se peut qu'à certains moments jme sois grave embrouillé :/ ça s'rait pas étonnant..
Au départ je voulais qu'en choisissant une news, je mette celle-ci dans une autre fenêtre picwin, mais j'ai constaté bêtement que certaines news étaient vraiment longues, donc j'ai abandonné l'idée de les afficher.. j'ai du me contenter d'un simple /run :(. J'ai mis le choix du navigateur.
Ah oui, les deux alias notag et iso2char sont de fjxokt que je remercie.

Source

  • alias inpact {
  • if ($window(@pop)) window -c @pop
  • window -dkpBCz +dL @pop -1 -1 471 461
  • drawfill @pop 15 4 10 10
  • drawline @pop 1 3 0 10 415 10 425 0 | drawline @pop 1 1 30 10 35 15 416 15 428 3 420 3 468 3 468 457 2 457 2 10 | drawline @pop 1 1 0 0 470 0 470 460 0 460 0 0 | drawline @pop 1 2 430 15 440 15 _
  • drawrect -f @pop 0 3 10 80 440 370 420 30 10 10 420 50 10 10
  • drawrect @pop 1 3 10 80 440 370
  • drawrect @pop 1 2 420 30 10 10 420 50 10 10
  • drawtext -b @pop 1 15 Tahoma 12 433 28 IE | drawtext -b @pop 1 15 Tahoma 12 433 48 F.Fox | drawtext -bo @pop 1 15 Tahoma 12 451 5 X | drawtext -pb @pop 1 15 Tahoma 12 5 40 Statut: Aucune connexion.
  • drawtext -b @pop 1 15 Vrinda 20 220 30 Récupérer les dernières infos
  • drawtext -b @pop 1 15 Vrinda 20 280 45 Pc Inpact.
  • g\ 118,177,238,298,358,417
  • }
  • menu @pop {
  • mouse {
  • if $inrect($mouse.x,$mouse.y,220,30,185,35) { drawrect @pop 14 30 218 30 190 37 | drawtext -b @pop 1 14 Vrinda 20 220 30 Récupérer les dernières infos | drawtext -b @pop 1 14 Vrinda 20 280 45 Pc Inpact. }
  • else { drawrect -f @pop 15 30 218 30 190 37 | drawtext -b @pop 1 15 Vrinda 20 220 30 Récupérer les dernières infos | drawtext -b @pop 1 15 Vrinda 20 280 45 Pc Inpact. }
  • }
  • sclick {
  • if $inrect($mouse.x,$mouse.y,430,3,12,13) { window -n @pop }
  • if $inrect($mouse.x,$mouse.y,447,4,12,13) { close -@ @pop | $iif($hget(pci),hfree pci,halt) }
  • if $inrect($mouse.x,$mouse.y,220,30,185,35) { hadd -m pci recherche 1 | drawrect -f @pop 0 3 10 80 440 370 | drawrect @pop 1 3 10 80 440 370 | sockclose pci | sockopen pci www.pcinpact.com 80 }
  • if $hget(pci) {
  • if $inrect($mouse.x,$mouse.y,452,118,15,12) { gwp 1 }
  • if $inrect($mouse.x,$mouse.y,452,177,15,12) { gwp 2 }
  • if $inrect($mouse.x,$mouse.y,452,238,15,12) { gwp 3 }
  • if $inrect($mouse.x,$mouse.y,452,298,15,12) { gwp 4 }
  • if $inrect($mouse.x,$mouse.y,452,358,15,12) { gwp 5 }
  • if $inrect($mouse.x,$mouse.y,452,417,15,12) { gwp 6 }
  • }
  • if $inrect($mouse.x,$mouse.y,421,31,10,10) { drawrect -f @pop 4 3 422 32 6 6 | drawrect -f @pop 0 3 422 52 6 6 | hadd $iif(!hget(pci),-m) pci navigateur1 1 | hdel pci navigateur2 }
  • if $inrect($mouse.x,$mouse.y,421,51,10,10) { drawrect -f @pop 4 3 422 52 6 6 | drawrect -f @pop 0 3 422 32 6 6 | hadd $iif(!hget(pci),-m) pci navigateur2 1 | hdel pci navigateur1 }
  • }
  • }
  • on *:close:@pop:{ hfree pci }
  • ON *:SOCKOPEN:pci:{
  • if $sockerr { drwt Connexion échouée. }
  • else { if $window(@pop) { drwt Connexion en cours... | %wh = 85 | %ô = 0 | sockwrite -n pci GET http://www.pcinpact.com/ HTTP/1.1 | sockwrite -n pci Host: www.pcinpact.com $+ $str($crlf ,2) | drwt Connexion établie. }
  • else { sockclose pci }
  • } }
  • ON *:SOCKREAD:pci:{
  • SOCKREAD %ns
  • if (class="liens_news"> isin %ns) { %â = $remove($iso2char($notag(%ns)),$chr(9)) | %^d = $+(http://www.pcinpact.com,$gettok(%ns,2,34)) }
  • if (</span></span>&nbsp;<span isin %ns) { %^b = $remove($iso2char($notag(%ns)),$chr(9),$gettok($gettok(%ns,3,60),2,62)) | %^c = $gettok($gettok(%ns,3,60),2,62) | an\ }
  • }
  • alias -l iso2char {
  • var %t $1-, %s, %i = 1, %r = $regex($1-,/(&#....)/g) | while ($regml(%i)) { %t = $replace(%t,$ifmatch,$chr($remove($ifmatch,&#))) | inc %i }
  • return $replace(%t,&quot;,",&gt;,>,&nbsp;,$chr(160),&amp;,&,&lt;,<)
  • }
  • alias -l notag { var %î, %ù = $regsub($1-,/<[^>]+>/g,,%î) | return %î }
  • alias -l gwp { if !$hget(pci,recherche) { halt } | else { run $iif($hget(pci,navigateur1),iexplore.exe,firefox.exe) $hget(pci,$1) } }
  • alias -l drwt { drawrect -f @pop 15 1 46 29 171 39 | drawtext -pb @pop 1 15 Tahoma 12 47 40 $1- }
  • alias -l an\ {
  • if %wh > 420 { sockclose pci | drwt Données récupérées. | halt }
  • else {
  • inc %ô
  • drawtext -p @pop 1 Tahoma 10 15 %wh [Derniere info à %^c $+ : $+(,%â,) $+ ] | inc %wh 15
  • drawtext -p @pop 1 Tahoma 10 15 %wh [Apercu bref: %^b $+ ] | inc %wh 15
  • drawtext -p @pop 1 Tahoma 10 15 %wh [Url: $iif($len(%^d) >= 75,$remove(%^d,$right(%^d,-75)) $+ ...,%^d) $+ ] | inc %wh 15 | hadd -m pci %ô %^d
  • drawtext -p @pop 1 Tahoma 10 15 %wh $str($chr(150),86) | inc %wh 15
  • }
  • }
  • alias -l g\ { var %^ 1
  • while %^ <= $numtok($1-,44) {
  • drawrect -f @pop 14 1 452 $gettok($1-,%^,44) 15 12
  • drawrect @pop 1 1 452 $gettok($1-,%^,44) 15 12
  • drawtext @pop 1 454 $gettok($1-,%^,44) <
  • drawtext @pop 1 457 $calc($gettok($1-,%^,44) -1) $chr(150)
  • inc %^
  • }
  • }
alias inpact {
  if ($window(@pop)) window -c @pop
  window -dkpBCz +dL @pop -1 -1 471 461
  drawfill @pop 15 4 10 10
  drawline @pop 1 3 0 10 415 10 425 0 | drawline @pop 1 1 30 10 35 15 416 15 428 3 420 3 468 3 468 457 2 457 2 10 | drawline @pop 1 1 0 0 470 0 470 460 0 460 0 0 | drawline @pop 1 2 430 15 440 15 _
  drawrect -f @pop 0 3 10 80 440 370 420 30 10 10 420 50 10 10
  drawrect @pop 1 3 10 80 440 370
  drawrect @pop 1 2 420 30 10 10 420 50 10 10
  drawtext -b @pop 1 15 Tahoma 12 433 28 IE | drawtext -b @pop 1 15 Tahoma 12 433 48 F.Fox | drawtext -bo @pop 1 15 Tahoma 12 451 5 X | drawtext -pb @pop 1 15 Tahoma 12 5 40 Statut: Aucune connexion.
  drawtext -b @pop 1 15 Vrinda 20 220 30 Récupérer les dernières infos
  drawtext -b @pop 1 15 Vrinda 20 280 45 Pc Inpact.
  g\ 118,177,238,298,358,417
}
menu @pop {
  mouse {
    if $inrect($mouse.x,$mouse.y,220,30,185,35) { drawrect @pop 14 30 218 30 190 37 | drawtext -b @pop 1 14 Vrinda 20 220 30 Récupérer les dernières infos | drawtext -b @pop 1 14 Vrinda 20 280 45 Pc Inpact. }
    else { drawrect -f @pop 15 30 218 30 190 37 | drawtext -b @pop 1 15 Vrinda 20 220 30 Récupérer les dernières infos | drawtext -b @pop 1 15 Vrinda 20 280 45 Pc Inpact. }
  }
  sclick {
    if $inrect($mouse.x,$mouse.y,430,3,12,13) { window -n @pop }
    if $inrect($mouse.x,$mouse.y,447,4,12,13) { close -@ @pop | $iif($hget(pci),hfree pci,halt) }
    if $inrect($mouse.x,$mouse.y,220,30,185,35) { hadd -m pci recherche 1 | drawrect -f @pop 0 3 10 80 440 370 | drawrect @pop 1 3 10 80 440 370 | sockclose pci | sockopen pci www.pcinpact.com 80 }
    if $hget(pci) {
      if $inrect($mouse.x,$mouse.y,452,118,15,12) { gwp 1 }
      if $inrect($mouse.x,$mouse.y,452,177,15,12) { gwp 2 }
      if $inrect($mouse.x,$mouse.y,452,238,15,12) { gwp 3 }
      if $inrect($mouse.x,$mouse.y,452,298,15,12) { gwp 4 }
      if $inrect($mouse.x,$mouse.y,452,358,15,12) { gwp 5 }
      if $inrect($mouse.x,$mouse.y,452,417,15,12) { gwp 6 }
    }
    if $inrect($mouse.x,$mouse.y,421,31,10,10) { drawrect -f @pop 4 3 422 32 6 6 | drawrect -f @pop 0 3 422 52 6 6 | hadd $iif(!hget(pci),-m) pci navigateur1 1 | hdel pci navigateur2 }
    if $inrect($mouse.x,$mouse.y,421,51,10,10) { drawrect -f @pop 4 3 422 52 6 6 | drawrect -f @pop 0 3 422 32 6 6 | hadd $iif(!hget(pci),-m) pci navigateur2 1 | hdel pci navigateur1 }
  }
}
on *:close:@pop:{ hfree pci }
ON *:SOCKOPEN:pci:{
  if $sockerr { drwt Connexion échouée. }
  else { if $window(@pop) { drwt Connexion en cours... | %wh = 85 | %ô = 0 | sockwrite -n pci GET http://www.pcinpact.com/ HTTP/1.1 | sockwrite -n pci Host: www.pcinpact.com $+ $str($crlf ,2) | drwt Connexion établie. }
    else { sockclose pci }  
} }
ON *:SOCKREAD:pci:{
  SOCKREAD %ns
  if (class="liens_news"> isin %ns) { %â = $remove($iso2char($notag(%ns)),$chr(9)) | %^d = $+(http://www.pcinpact.com,$gettok(%ns,2,34)) }
  if (</span></span>&nbsp;<span isin %ns) { %^b = $remove($iso2char($notag(%ns)),$chr(9),$gettok($gettok(%ns,3,60),2,62)) | %^c = $gettok($gettok(%ns,3,60),2,62) | an\ } 
}
alias -l iso2char { 
  var %t $1-, %s, %i = 1, %r = $regex($1-,/(&#....)/g) | while ($regml(%i)) { %t = $replace(%t,$ifmatch,$chr($remove($ifmatch,&#))) | inc %i } 
  return $replace(%t,&quot;,",&gt;,>,&nbsp;,$chr(160),&amp;,&,&lt;,<) 
}
alias -l notag { var %î, %ù = $regsub($1-,/<[^>]+>/g,,%î) | return %î }
alias -l gwp { if !$hget(pci,recherche) { halt } | else { run $iif($hget(pci,navigateur1),iexplore.exe,firefox.exe) $hget(pci,$1) } }
alias -l drwt { drawrect -f @pop 15 1 46 29 171 39 | drawtext -pb @pop 1 15 Tahoma 12 47 40 $1- }
alias -l an\ {
  if %wh > 420 { sockclose pci | drwt Données récupérées. | halt }
  else {
    inc %ô
    drawtext -p @pop 1 Tahoma 10 15 %wh [Derniere info à %^c $+ : $+(,%â,) $+ ] | inc %wh 15
    drawtext -p @pop 1 Tahoma 10 15 %wh [Apercu bref: %^b $+ ] | inc %wh 15
    drawtext -p @pop 1 Tahoma 10 15 %wh [Url: $iif($len(%^d) >= 75,$remove(%^d,$right(%^d,-75)) $+ ...,%^d) $+ ] | inc %wh 15 | hadd -m pci %ô %^d
    drawtext -p @pop 1 Tahoma 10 15 %wh $str($chr(150),86) | inc %wh 15
  }
}
alias -l g\ { var %^ 1
  while %^ <= $numtok($1-,44) { 
    drawrect -f @pop 14 1 452 $gettok($1-,%^,44)  15 12
    drawrect @pop 1 1 452 $gettok($1-,%^,44)  15 12
    drawtext @pop 1 454 $gettok($1-,%^,44)  <
    drawtext @pop 1 457 $calc($gettok($1-,%^,44)  -1) $chr(150)
    inc %^
  }
}

 Conclusion

Pour l'utiliser vous taper /inpact. Pour afficher les infos, clik simple sur "récupérer les dernieres... etc" et pour aller à une url, vous cliquez sur une des flêche à droite qui vise justement une url. (elles seront toujours en face des flêches bien entendu).


 Historique

11 novembre 2005 13:52:15 :
- séparation des news par des lignes. - vérification de la window avant de connecter le socket. - options de la fenêtre.

 Sources du même auteur

Source avec Zip Source avec une capture PROGRAMME TV (PICWIN)
Source avec Zip Source avec une capture 3 SCANNEURS DIFFÉRENTS
Source avec une capture SYSTEME DE WHOIS
Source avec Zip Source avec une capture SCANNEUR D'IP...
Source avec Zip BARRE DE PROGRESSION POUR LES MP3 >> EN ECHO <<

 Sources de la même categorie

Source avec une capture QUOTES BASH ET BASHFR par Flyswat
MIRSMAIL CLIENT MIRC POUR LE CHAT DE SMAIL (WWW.SMAIL.FR) par pppaaahhh
Source avec Zip Source avec une capture FIREWALL par Bestdoud
ASPIRATEUR DE GALERIES INTERNET par PaDa
Source avec Zip MSN MESSENGER SUR IRC SCRIPT POUR COMPRENDRE LE FONCTIONEMEN... par synsun

 Sources en rapport avec celle ci

SERVEUR FTP par hisoka2501
Source avec Zip Source avec une capture PACMAN ONLINE - 4 JOUEURS par wims
Source avec Zip Source avec une capture JEU DE MORPION par Panthouffle
Source avec une capture NEWS PC INPACT (BIS) par fjxokt
Source avec une capture DERNIERS CODES SUR CODES-SOURCES par MaX_62

Commentaires et avis

Commentaire de RCA ArKanis le 10/11/2005 23:59:37

perso j'aime bcp, je trouve ça assez joli et c'est plutôt bien fait.
En plus le code est court, et en hash tables :p

pourquoi ne pas se souvenir de notre dernier navigateur choisi, et pourquoi ne pas afficher les news dès que l'on tape /inpact, au lieu du bouton "récuperer", qui deviendrait "mettre à jour"

dommage qu'on ne puisse pas bouger la fenêtre, elle est en plein milieu, et on top en plus :p

chose non necessaire mais sympa : plus d'animations quand on passe sur des boutons :p

pour ton problème de longueur des news, c'est pas possible de mettre un ascenseur ? (j'sais plus, p'tet pas en fait :D)

bravo sinon :)

Commentaire de RCA ArKanis le 11/11/2005 00:11:32

j'oubliais :
/window -k ne sert à rien s'il n'y a pas de 1/0, et en plus tu masques avec +h, donc +k est totalement inutile :)

tu devrais aussi vérifier si la window est ouverte avant d'écrire ou de la changer (avec tes sockets par exemple)

dernière chose : ça aurait pas été plus clair de mettre une ligne (fine) entre chaque news, pour que l'on reconnaisse plus rapidement qu'est ce qui va avec quoi ? :p

réponds à tout ça et je te donnerai une bonne note :p

Commentaire de AgoRa_ScripT le 11/11/2005 13:57:29

les options jes avai emprunté d'un ancien code, le temps de faire "l'intérieur" du code, j'avai oublié de les mettre a jour.
C'est tout à fait vrai que j'aurais pu rien qu'en tapant /inpact afficher les info directement, mai je tenais au bouton "recupérer les dernieres infos PC Inpact" et son animation..
Par contre, pour afficher les news dans une autre fenêtre, finalement je prefère ce simple /run, car si j'en affiche une tres longue, apre lire que du texte comme ça, sans photo c'est sans trop d'intêret.. autant aller sur le site et tt voir..
les options -k et -h sont tout à fait compatibles.. -k enleve le @ au nom de la window et -h met la window ds la liste des fenêtre du mIRC.. :/
Non on peut pas mettre des fleches de défilement ds une window (jamais vu en tt cas).

jai up

Commentaire de RCA ArKanis le 11/11/2005 14:04:21

je voulais dire que dans l'aide concernant /window, ils disent de préciser [0-1] avec -k:
k[N] = hides the @ prefix in the window name, 0 = hide prefix, 1 = show prefix

cacher le @ peut-être, mais vu qu'il n'apparait nul part parce que cette fenêtre n'est pas ouverte sur le bureau, n'a pas de "titre" et n'apparait pas dans la liste des chans/windows, c'est inutile :)

c'est bcp mieux avec les lignes qui séparent :D

9/10 :p

Commentaire de AgoRa_ScripT le 11/11/2005 14:24:35

merci ;o)

Commentaire de RCA ArKanis le 12/11/2005 15:32:32

"Non on peut pas mettre des fleches de défilement ds une window (jamais vu en tt cas)."

Si, c'est possible :)
je viens d'en faire une ^^ elle fonctionne très bien, mais c'est un peu la lutte pour expliquer :p
et puis bon, quand on delete des items à l'intérieur, y'a quelques problèmes (mineurs) avec l'ascenseur après xD

si ce n'est que pour du texte, ça devrait pas être trop compliqué ^^

il s'agit en fait de dessiner toi même ton ascenseur, avec un point qui se balade dessus, et en cliquant sur les extrémités, ça fait descendre ou monter le pt, ainsi que la liste
voilà un screen exemple : http://arkanisfr.free.fr/Script-ArKanis/prototype.bmp

Commentaire de AgoRa_ScripT le 13/11/2005 13:25:18

lol ok merci :)
jviens de looker des games rien qu'en picwin, c plus qu'impressionant.

Commentaire de jeremy29 le 14/11/2005 20:08:03

On voyant ça, je comprend un peu mieux les sockets et les picwins ^^

La source est pas mal codé, 10/10 :)

Commentaire de jeremy29 le 14/11/2005 20:08:34

09/10*, pardon :-p

Commentaire de AgoRa_ScripT le 18/11/2005 23:48:41

merci ;o)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

svp aidez moi pour socket news [ par nocomment ] Bonjour je cherche désésperement une remote sur plein de site qui serai capable de dire les news sur un canal en tapant par exemple !news sur le gener quelques question [ par KiNdErMaXi ] voila, j'ai quelques questions a vous poser:*1) est-il possible de faire apparaitre un petit truc. Je m'explique, pointez de la souris la croix en hau socket-pingpong [ par samsungman ] bijour je voudré savoir koment ne pas se faire deconecté a chaque foi kon ce connect a un server ? Help script news [ par masseur ] Salut.Je vient de tester ce scripthttp://www.ircfr.com/code.aspx?ID=21446Quand je tape /koloznews ca m'ouvre un menu pour rajouter des news etc.J'aout socket [ par KiNdErMaXi ] bonjour,j'aurai voulus savoir comment connecter un socket dans une fenetre (un clone) et pouvoir lui faire faire des actions ( msg, etc ... )j'ai lus tutorial picwin [ par KiNdErMaXi ] alors voila j'ai fais un petit tutorial sur les picwin, mais comme on ne peut pas laisser de commentaire et puis qu'il est enfouis dans le fond du sit AntiSpam [ par chez_moe ] Salut les boys , J'ai un leger probleme de spambot sur Undernet pis le seul anti-spam g&#233;nial que j,ai trouver c'est celui de JHD "socket anti spa Questions sur les sockets et autres [ par zzzzzz ] Salut :) J'ai quelques questions en vracs sur les sockets : Peu on d&#233;terminer le nom d'un socket ouvert sachant que son pseudo est al&#233;atoir socket [ par KiNdErMaXi ] on m'a parler (il se reconnaitera)&nbsp;d'une technique pour faire un jeu en temps reelil s'agit d'utiliser des socket j'aurai voulu avoir plus d'info Socket message sur tous les chans [ par zzzzzz ] Salut J'aimerai savoir comment peu on envoyer un message sur tous les chans via 1 socket svp :) Merci d'avance.-------------------------------------


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 9,391 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales