OVH Cloud OVH Cloud

Un super script promotionnel (et trollesque) Batch

44 réponses
Avatar
Do Re Mi chel La Si Do
Bonjour !

Je vous ai concocté le script ci-dessous, pour montrer l'incroyable
supériorité du Batch, sur tous les autres langages de script (y compris le
Verlan). Seul Python, AutoIt! et l'Occitan peuvent faire aussi bien.

J'attend, d'ailleurs, les réactions épidermiques, et, forcément partiales
(normal ; yakemoi qui suis, par hypothèse, impartial).

Bref, que fait ce script ? Hé bien, il verrouille un site, par son adresse
IP et un port. Dès que l'on veut s'y connecter, le process est tué (dans les
2 secondes).

Pour tester, j'ai mis l'adresse IP d'un de mes sites : http://ponx.org
Lancez le script dans une invite de commande ; lancez I.E. ; allez sur
http://ponx.org ; constatez.

@+

MCI

PS : le script est prévu pour Windows-XP-Pro en français.





Voilà le script :



@echo off
:: Supprime les process qui se connectent à une adresse IP

set IPDEL=213.186.47.206:80
:: pour tester : http://ponx.org

:SCAN
set PID=
netstat -ano |find "%IPDEL%" >TEMP.TXT
for /F "usebackq tokens=*" %%i in (TEMP.TXT) do (call :STO %%i)
if X%PID%X==XX goto :CONTINUE
call :TRAIT %PID%
:CONTINUE
sleepm 2000
goto :SCAN

:STO
set PID=%5
goto :EOF

:TRAIT
@taskkill /PID %1
goto :EOF

10 réponses

1 2 3 4 5
Avatar
Do Re Mi chel La Si Do
Re

Oui, c'est une piste. Mais je me demande s'il est facile de se connecter à
un IExplorer déjà lancé.

@-salutations

Michel Claveau
Avatar
Jacques Barathon [MS]
En effet, on peut compacter en évitant de passer par des variables
intermédiaires. Le risque est d'obtenir un code moins lisible, ce que je
voulais éviter dans cet exemple. Cela dit, le résultat est très élégant
(même s'il reste des $, au grand dam de Michel qui doit trouver tout ça très
techno-frime ;-)).

Jacques

"Jean" wrote in message
news:
for (;;) {
$myline=$(netstat -ano|where {$_ -match $ipdel})
if ($myline) {
$procid=$($myline.split()[-1]
if ($procid) {(gps -id $procid).kill()}
}
start-sleep 20
}


Une variante ... qui n'apporte pas grand chose, je l'avoue :-) :

#---8<---
# Ferme le client News si il accède à msnews.microsoft.com
# Ctrl + C pour quitter

$ip="207.46.248.16:119"
while(1){
$(netstat -ano)|foreach{if($_.contains($ip)){(gps -id
$_.Split()[-1]).Kill()}}
sleep -m 500
}
#---8<---

Je ne serais pas surpris que la nouvelle version de MSH qui sera
disponible aux States lundi permette d'encore réduire le code :-)

Amicalement,

--
Jean - JMST
Belgium





Avatar
Do Re Mi chel La Si Do
Bonsoir !


On peux faire plein de choses avec Outlook-Express, et les messages HTML.

D'ailleurs O.E. est à l'origine du fort développement de l'e-mail-art. Il y
a de nombreux newsgroups sur ce sujet (même chez MS), et pas mal de trucs et
astuces à apprendre. Mais, là, on va être carrément H.S.


@-salutations

Michel Claveau
Avatar
Jacques Barathon [MS]
"Do Re Mi chel La Si Do" wrote in message
news:
D'ailleurs O.E. est à l'origine du fort développement de l'e-mail-art. Il
y a de nombreux newsgroups sur ce sujet (même chez MS), et pas mal de
trucs et astuces à apprendre. Mais, là, on va être carrément H.S.


Oui, je connais un peu l'email-art (vraiment un tout petit peu, je ne suis
pas un email-artiste), mais ça ne me donne pas le paramétrage pour répondre
dans le texte en HTML sans désactiver l'indentation. Tant pis, merci quand
même! A l'occasion je fouillerai.

Jacques

Avatar
scraper
Bonjour Jacques Barathon [MS], dans le message
news:
tu disais :

Beurk, ça me donne le mal de mer...

Si tu sais comment obtenir l'indentation à base de ">" en HTML comme
en texte brut, je suis preneur.


utiliser OE-QFIx ? :-)

sinon, tu peux essayer outils/Options/envoi/Format d'envoi du
courrier/paramètre de texte brut ....





--

Adresse invalide
Merci de répondre sur le forum ...
http://scraper.chez.tiscali.fr

scraper

Avatar
Fred
Dans : news:,
scraper disait :
Bonjour Jacques Barathon [MS], dans le message
news:
tu disais :

Beurk, ça me donne le mal de mer...

Si tu sais comment obtenir l'indentation à base de ">" en HTML comme
en texte brut, je suis preneur.


utiliser OE-QFIx ? :-)

sinon, tu peux essayer outils/Options/envoi/Format d'envoi du
courrier/paramètre de texte brut ....


Salut scraper !
Ce n'est pas ce que veut Jacques. Et à mon avis c'est difficilement
réalisable.
Le texte étant «flottant» en HTML, l'indentation est réalisée au moyen
d'un div (ou blockquote je ne me souviens plus avec QuoteFix !).
Il faudrait un style de bordure gauche constituée de caractères «>»
superposés :-)


--
Fred
http://www.cerbermail.com/?3kA6ftaCvT


Avatar
Jean
Salutations ** !
Dans <news:43242ed7$0$14833$
tu nous disais :
Que ce passe-t-il lorsque j'utilise en proxy????... Ben plus rien,
ton script ne sert donc à rien, désolé! :)


A vue de nez, si on invoque un objet iexplore, on devrait
pouvoir connaitre l'URL en cours d'utilisation.
(Pas certain : à vérifier)

@+


Avec l'objet Shell.Application on peut le faire (pour l'explorateur et
IE) ... sur l'url, le titre, ...

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/objects/shell/shell.asp

Des trucs du genre genre :

'---8<---
While True
Fermer_IE_URL "http://www.microsoft.com/"
WScript.Sleep 200
Wend

Sub Fermer_IE_URL(url)
For Each W in CreateObject("Shell.Application").Windows
With W
If LCase(Right(.FullName,12))="iexplore.exe" Then
If LCase(.LocationURL)=url Then .Quit
End If
End With
Next
WScript.Sleep 200
End Sub

'---8<---

ou

'---8<---
While True
Fermer_IE_Titre "Google"
WScript.Sleep 200
Wend

Sub Fermer_IE_Titre(titre)
For Each W in CreateObject("Shell.Application").Windows
With W
If LCase(Right(.FullName,12))="iexplore.exe" Then
If .Document.Title=titre Then .Quit
End If
End With
Next
WScript.Sleep 200
End Sub

'---8<---

Amicalement,

--
Jean - JMST
Belgium


Avatar
Jean
En effet, on peut compacter en évitant de passer par des variables
intermédiaires. Le risque est d'obtenir un code moins lisible, ce que je
voulais éviter dans cet exemple.


Ce que je vais nous éviter ... c'est ce long débat :-)

Cela dit, le résultat est très élégant (même
s'il reste des $


... je les aime bien moi :-)

, au grand dam de Michel qui doit trouver tout ça très
techno-frime ;-)).



Ne connaissant pas le niveau de sa bouteille en ce moment ... je vais
dire qu'il a raison :O)

Amicalement,

Jacques

"Jean" wrote in message
news:
for (;;) {
$myline=$(netstat -ano|where {$_ -match $ipdel})
if ($myline) {
$procid=$($myline.split()[-1]
if ($procid) {(gps -id $procid).kill()}
}
start-sleep 20
}


Une variante ... qui n'apporte pas grand chose, je l'avoue :-) :

#---8<---
# Ferme le client News si il accède à msnews.microsoft.com
# Ctrl + C pour quitter

$ip="207.46.248.16:119"
while(1){
$(netstat -ano)|foreach{if($_.contains($ip)){(gps -id
$_.Split()[-1]).Kill()}}
sleep -m 500
}
#---8<---

Je ne serais pas surpris que la nouvelle version de MSH qui sera disponible
aux States lundi permette d'encore réduire le code :-)

Amicalement,

-- Jean - JMST
Belgium






--
Jean - JMST
Belgium



Avatar
Jean
... et ... pssst ... la beta2 de MSH vient d'arriver (le lien n'est que
sur le groupe beta pour l'instant ) :-)

Amicalement,

--
Jean - JMST
Belgium
Avatar
Jacques Barathon [MS]
"Fred" wrote in message
news:
Dans : news:,
scraper disait :
<snip>

sinon, tu peux essayer outils/Options/envoi/Format d'envoi du
courrier/paramètre de texte brut ....


Salut scraper !
Ce n'est pas ce que veut Jacques. Et à mon avis c'est difficilement
réalisable.
Le texte étant «flottant» en HTML, l'indentation est réalisée au moyen
d'un div (ou blockquote je ne me souviens plus avec QuoteFix !).
Il faudrait un style de bordure gauche constituée de caractères «>»
superposés :-)


Je vois le problème. En effet, ce que je veux faire me paraît peu compatible
avec du HTML, car même si la bordure était constituée de caractères ">" je
ne crois pas que je pourrais "casser" cette bordure pour y caser mes
réponses.

Pas de souci, ça ne fait que conforter mon choix d'utiliser le texte brut
pour les news (ce qui reste la pratique standard de toute façon, entre
autres pour cette raison je suppose).

Merci,
Jacques


1 2 3 4 5