mIRC Scripting  


Geri dön   mIRC Scripting > mIRC Scripting > Snippets - Parça kodlar

Snippets - Parça kodlar mIRC Scripting hakkında "parça /ufak kod" niteliği taşıyan kodlarını bulup veya paylaşabileceğiniz bölüm.

Cevapla
 
LinkBack Seçenekler
  #1  
Alt 21 Temmuz 2009, 01:59
Avatar Yok
Amatör Android Devesi :D
 Chief 

mS Puan: 261
mS Derece: SeRDaR406 MeraklıSeRDaR406 MeraklıSeRDaR406 Meraklı
 
Üyelik tarihi: 20 Temmuz 2009
Yaş: 32
Mesajlar: 68
Konular: 34
Eklentiler: 0
Alınan Teşekkür: 4
Yapılan Teşekkür: 0
Standart HTTP Downloader v1.2 by ^BeAsT^

Kod:
; HTTP Downloader v1.2 by ^BeAsT^
;===============================
; /download komutu:
;	/download komutu dosya indirme olayını başlatan komutdur.
;	Not: URL'den indirilen dosya, indirileceği klasöre URL'deki adı ile indirilir.
;	Kullanımı:		/download [-o] <isim> <url> <klasör>
;	Örnek:		/download mIRC http://www.mirc.co.za/download/mirc603.exe C:\mIRC\Download\
;
;	-o parametresi İndirilecek dosyanın adı ile indirilecek klasörde aynı isimde bir dosya daha varsa, onun üzerine yazar(indirir/kaydeder).
;	Not: Bir download'ı(indirmeyi) sonlandırmak/iptal etmek istiyorsanız: /close -d <isim> komutunu kullanabilirsiniz.
;
; $download(<name/N>) tanımlayıcısı:
;	Bu tanımlayıcı ile download'lar(indirmeler) hakkında bilgiler alabilirsiniz.
;               Özellikler: ip, status, url, file, type, size, rcvd, cps, pc, secs
;	$download(0)	Toplam indirilme sayısını verir.
;	$download(1)	1. download'ın adını verir.
;	$download(2).file	2. download olayında indirilen dosyanın adını verir.
;	$download(2).rcvd	2.download olayında alınan byte değerini verir.
;
; Events(Olaylar):
;	Download olayı başarılı bir şekilde tamamlandığında bu event'ı kullanacaksınız.
;	Kullanımı:		on *:SIGNAL:download_complete:<komut>
;	Örnek:		on *:SIGNAL:download_complete:echo -s * Tamamlandı: $download($1).file
;
;	Download geçersiz olduğunda kullanacağınız event:
;	Kullanımı:		on *:SIGNAL:download_fail:<komut>
;	Örnek:		on *:SIGNAL:download_fail:echo -s * Geçersiz download: $download($1).file - $2-


alias download {
  if (!$isid) {
    var %4 = $iif($1 == -o,$true)
    if (%4) { tokenize 32 $2- }
    var %1 = download $+ $1,%2 = $longfn($3-)
    if (!$3) { var %3 = insufficient parameters }
    elseif ($sock(%1)) { var %3 = $+(',$1,') name in use }
    elseif (!$isdir(%2)) { var %3 = no such dir $+(',%2,') }
    if (%3) { if ($show) { echo $color(info) -se * /download: %3 } | return }
    unset % [ $+ [ %1 $+ .* ] ]
    set % [ $+ [ %1 $+ .file ] ] $+(%2,$iif($right(%2,1) != $chr(92),$chr(92)),$gettok($2,-1,47))
    set % [ $+ [ %1 $+ .url ] ] http:// $+ $remove($2,http://))
    set % [ $+ [ %1 $+ .ctime ] ] $ctime 0
    set % [ $+ [ %1 $+ .status ] ] Connecting
    if (%4) { .remove $+(",$dl.var(%1,file),") }
    sockopen %1 $gettok($remove($2,http://),1,47) 80
  }
  else {
    if ($1 == 0) { return $sock(download*,0) }
    if ($iif($1 isnum,$sock(download*,$1),$sock(download $+ $1))) {
      var %1 = $ifmatch,%2 = $dl.var(%1,file),%3 = $dl.var(%1,size),%4 = $file(%2).size
      if (!$prop) { return $right(%1,-8) }
      elseif ($prop == ip) { return $sock(%1).ip }
      elseif ($prop == status) { return $dl.var(%1,status) }
      elseif ($prop == url) { return $dl.var(%1,url) }
      elseif ($prop == file) { return %2 }
      elseif ($prop == type) { return $dl.var(%1,type) }
      elseif ($prop == size) { return %3 }
      elseif ($prop == rcvd) { return %4 }
      elseif ($prop == cps) { return $int($calc(%4 / ($ctime - $dl.var(%1,ctime,2)))) }
      elseif ($prop == pc) { return $int($calc($file(%2).size * 100 / %3)) }
      elseif ($prop == secs) { return $calc($ctime - $dl.var(%1,ctime,1)) }
    }
  }
}
alias -l dl.var { return $gettok(% [ $+ [ $+($1,.,$2) ] ],$iif(!$3,1-,$3),32) }
alias -l dl.fail { var %1 = $right($1,-8) | .signal -n download_fail %1 $2- | close -d %1 }
alias -l dl.httpcode {
  var %1 = $1 | goto %1
  :100 | return Continue
  :101 | return Switching Protocols
  :200 | return OK
  :201 | return Created
  :202 | return Accepted
  :203 | return Non-Authoritative Information
  :204 | return No Content
  :205 | return Reset Content
  :206 | return Partial Content
  :300 | return Multiple Choices
  :301 | return Moved Permanently
  :302 | return Moved Temporarily
  :303 | return See Other
  :304 | return Not Modified
  :305 | return Use Proxy
  :400 | return Bad Request
  :401 | return Unauthorized
  :402 | return Payment Required
  :403 | return Forbidden
  :404 | return Not Found
  :405 | return Method Not Allowed
  :406 | return Not Acceptable
  :407 | return Proxy Authentication Required
  :408 | return Request Time-out
  :409 | return Conflict
  :410 | return Gone
  :411 | return Length Required
  :412 | return Precondition Failed
  :413 | return Request Entity Too Large
  :414 | return Request-URI Too Large
  :415 | return Unsupported Media Type
  :416 | return Requested Range Not Satisfiable
  :500 | return Internal Server Error
  :501 | return Not Implemented
  :502 | return Bad Gateway
  :503 | return Service Unavailable
  :504 | return Gateway Time-out
  :505 | return HTTP Version not supported
  :%1 | return
}
alias close {
  if ($1 == -d) {
    var %1 = download $+ $2
    if ($sock(%1)) { unset % [ $+ [ %1 $+ .* ] ] | sockclose %1 }
  }
  else { close $1- }
}

on *:sockopen:download*:{
  if ($sockerr) { dl.fail $sockname Unable to Connect | return }
  var %1 = $dl.var($sockname,url),%2 = $dl.var($sockname,file)
  set % [ $+ [ $sockname $+ .status ] ] Requesting File
  sockwrite -tn $sockname GET %1 HTTP/1.1
  sockwrite -tn $sockname Host: $gettok($remove(%1,http://),1,47)
  sockwrite -tn $sockname Accept: *.*, */*
  sockwrite -tn $sockname Range: $+(bytes=,$iif($exists(%2),$file(%2).size,0),-)
  sockwrite -tn $sockname Connection: close
  sockwrite -tn $sockname $crlf
}
on *:sockclose:download*:{ if ($dl.var($sockname,status) != done) { dl.fail $sockname Disconnected } }
on *:sockread:download*:{
  if ($sockerr) { dl.fail $sockname Disconnected | return }
  if ($dl.var($sockname,status) != downloading) {
    var %1 | sockread %1 | tokenize 32 %1
    if ($1 == HTTP/1.1) { if ($2 != 200 && $2 != 206) { dl.fail $sockname $iif($dl.httpcode($2),$ifmatch,$3-) } }
    elseif ($1 == Content-Range:) { set % [ $+ [ $sockname $+ .size ] ] $gettok($3,-1,47) }
    elseif ($1 == Content-Type:) { set % [ $+ [ $sockname $+ .type ] ] $2- }
    elseif (!$1) {
      set % [ $+ [ $sockname $+ .ctime ] ] $dl.var($sockname,ctime,1) $ctime
      set % [ $+ [ $sockname $+ .status ] ] Downloading
      return
    }
  }
  else {
    var %1 = $dl.var($sockname,file)
    :sockread
    sockread &1
    if (!$sockbr) { return }
    bwrite $+(",%1,") -1 &1
    unset % [ $+ [ $sockname $+ .resume ] ]
    if ($file(%1).size < $dl.var($sockname,size)) { goto sockread }
    else {
      var %1 = $right($sockname,-8),%2 = $dl.var($sockname,file)
      set % [ $+ [ $sockname $+ .status ] ] Done
      .signal -n download_complete %1
      close -d %1
    }
  }
}
on *:exit:{ unset %download* | sockclose download* }
on *:unload:{ unset %download* | sockclose download* }

;Dosya sonu.
__________________
I ain't got to slow down for you to catch up!

www.facebook.com/SyrixJooi
Alıntı ile Cevapla
Sponsored Links
Cevapla

Etiketler
beast, downloader, http, v12

Seçenekler

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık



Yasal Uyarı

    5651 sayılı yasada belirtilen "Yer Sağlayıcı" olarak hizmet sunmaktadır. İlgili yasaya göre site yönetiminin tüm içerikleri kontrol etme yükümlülüğü yoktur. Bu sebep ile sitemiz, uyarıları dikkate alarak yasa dışı paylaşımlar hakkında gerekli işlemleri yapmaktadır. Oluşabilecek yasal sorumluluklar üyelerimize aittir. Gerekli şikayet bildirimleri yapabilmek için "burayı" tıklayarak gerekli alanları doldurup yapabilirsiniz.
mIRCScripting©
Powered by vBulletin®
Copyright © 2000-2015, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1

1 2 13 14 16 17 18 19 21 22 23 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 49 50 51 52 54 55 56 57 58 59 60 61 62 63 67 68 69 70 71 72 73 74 75 76