亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? internet.pm

?? ARM上的如果你對底層感興趣
?? PM
?? 第 1 頁 / 共 3 頁
字號:
                ( $nextfile, $filename, $altname, $size, $attr,
                  $csec, $cmin, $chou, $cday, $cmon, $cyea,
                  $asec, $amin, $ahou, $aday, $amon, $ayea,
                  $msec, $mmin, $mhou, $mday, $mmon, $myea
                ) = InternetFindNextFile($newhandle);
         
            }
            InternetCloseHandle($newhandle);
            return @results;
        }
    
    } else {
    
        ($newhandle, $filename) = FtpFindFirstFile($self->{'handle'}, $pattern, 0, 0);
    
        if(!$newhandle) {
            $self->{'Error'} = "Can't read FTP directory.";
            return undef;
      
        } else {
    
            while($nextfile) {
                push(@results, $filename);
        
                ($nextfile, $filename) = InternetFindNextFile($newhandle);  
                # print "List.no more files\n" if !$nextfile;
        
            }
            InternetCloseHandle($newhandle);
            return @results;
        }
    }
}
#====================
sub Ls  { List(@_); }
sub Dir { List(@_); }
#====================


#=================
sub FileAttrInfo {
#=================
    my($self,$attr) = @_;
    my @attrinfo = ();
    push(@attrinfo, "READONLY")   if $attr & 1;
    push(@attrinfo, "HIDDEN")     if $attr & 2;
    push(@attrinfo, "SYSTEM")     if $attr & 4;
    push(@attrinfo, "DIRECTORY")  if $attr & 16;
    push(@attrinfo, "ARCHIVE")    if $attr & 32;
    push(@attrinfo, "NORMAL")     if $attr & 128;
    push(@attrinfo, "TEMPORARY")  if $attr & 256;
    push(@attrinfo, "COMPRESSED") if $attr & 2048;
    return (wantarray)? @attrinfo : join(" ", @attrinfo);
}


#===========
sub Binary {
#===========
    my($self) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "FTP") {
        $self->{'Error'} = "Binary() only on FTP sessions.";
        return undef;
    }
    $self->{'Mode'} = "bin";
    return undef;
}
#======================
sub Bin { Binary(@_); }
#======================


#==========
sub Ascii {
#==========
    my($self) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "FTP") {
        $self->{'Error'} = "Ascii() only on FTP sessions.";
        return undef;
    }
    $self->{'Mode'} = "asc";
    return undef;
}
#=====================
sub Asc { Ascii(@_); }
#=====================


#========
sub Get {
#========
    my($self, $remote, $local, $overwrite, $flags, $context) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "FTP") {
        $self->{'Error'} = "Get() only on FTP sessions.";
        return undef;
    }
    my $mode = ($self->{'Mode'} eq "asc" ? 1 : 2);
 
    $remote    = ""      unless defined($remote);
    $local     = $remote unless defined($local);
    $overwrite = 0       unless defined($overwrite);
    $flags     = 0       unless defined($flags);
    $context   = 0       unless defined($context);
  
    my $retval = FtpGetFile($self->{'handle'},
                            $remote,
                            $local,
                            $overwrite,
                            $flags,
                            $mode,
                            $context);
    $self->{'Error'} = "Can't get file." unless defined($retval);
    return $retval;
}


#===========
sub Rename {
#===========
    my($self, $oldname, $newname) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "FTP") {
        $self->{'Error'} = "Rename() only on FTP sessions.";
        return undef;
    }

    my $retval = FtpRenameFile($self->{'handle'}, $oldname, $newname);
    $self->{'Error'} = "Can't rename file." unless defined($retval);
    return $retval;
}
#======================
sub Ren { Rename(@_); }
#======================


#===========
sub Delete {
#===========
    my($self, $filename) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "FTP") {
        $self->{'Error'} = "Delete() only on FTP sessions.";
        return undef;
    }
    my $retval = FtpDeleteFile($self->{'handle'}, $filename);
    $self->{'Error'} = "Can't delete file." unless defined($retval);
    return $retval;
}
#======================
sub Del { Delete(@_); }
#======================


#========
sub Put {
#========
    my($self, $local, $remote, $context) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "FTP") {
        $self->{'Error'} = "Put() only on FTP sessions.";
        return undef;
    }
    my $mode = ($self->{'Mode'} eq "asc" ? 1 : 2);

    $context = 0 unless defined($context);
  
    my $retval = FtpPutFile($self->{'handle'}, $local, $remote, $mode, $context);
    $self->{'Error'} = "Can't put file." unless defined($retval);
    return $retval;
}


#######################################################################
# HTTP CLASS METHODS
#

#========= ### HTTP CONSTRUCTOR
sub HTTP {
#=========
    my($self, $new, $server, $username, $password, $port, $flags, $context) = @_;    
    return undef unless ref($self);

    if(ref($server) and ref($server) eq "HASH") {
        my $myserver = $server->{'server'};
        $username    = $server->{'username'};
        $password    = $password->{'host'};
        $port        = $server->{'port'};    
        $flags       = $server->{'flags'};
        $context     = $server->{'context'};
        undef $server;
        $server      = $myserver;
    }

    $server   = ""          unless defined($server);
    $username = "anonymous" unless defined($username);
    $password = ""          unless defined($username);
    $port     = 80          unless defined($port);
    $flags    = 0           unless defined($flags);
    $context  = 0           unless defined($context);
  
    my $newhandle = InternetConnect($self->{'handle'}, $server, $port,
                                    $username, $password,
                                    constant("INTERNET_SERVICE_HTTP", 0),
                                    $flags, $context);
    if($newhandle) {
        $self->{'connections'}++;
        $_[1] = _new($newhandle);
        $_[1]->{'Type'}     = "HTTP";
        $_[1]->{'username'} = $username;
        $_[1]->{'password'} = $password;
        $_[1]->{'server'}   = $server;
        $_[1]->{'accept'}   = "text/*\0image/gif\0image/jpeg";
        return $newhandle;
    } else {
        return undef;
    }
}


#================
sub OpenRequest {
#================
    # alternatively to Request:
    # it creates a new HTTP_Request object
    # you can act upon it with AddHeader, SendRequest, ReadFile, QueryInfo, Close, ...

    my($self, $new, $path, $method, $version, $referer, $accept, $flags, $context) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "HTTP") {
        $self->{'Error'} = "OpenRequest() only on HTTP sessions.";
        return undef;
    }

    if(ref($path) and ref($path) eq "HASH") {
        $method    = $path->{'method'};
        $version   = $path->{'version'};
        $referer   = $path->{'referer'};
        $accept    = $path->{'accept'};
        $flags     = $path->{'flags'};
        $context   = $path->{'context'};
        my $mypath = $path->{'path'};
        undef $path;
        $path      = $mypath;
    }

    $method  = "GET"             unless defined($method);
    $path    = "/"               unless defined($path);
    $version = "HTTP/1.0"        unless defined($version); 
    $referer = ""                unless defined($referer);
    $accept  = $self->{'accept'} unless defined($accept);
    $flags   = 0                 unless defined($flags);
    $context = 0                 unless defined($context);
  
    $path = "/".$path if substr($path,0,1) ne "/";  
  
    my $newhandle = HttpOpenRequest($self->{'handle'},
                                    $method,
                                    $path,
                                    $version,
                                    $referer,
                                    $accept,
                                    $flags,
                                    $context);
    if($newhandle) {
        $_[1] = _new($newhandle);
        $_[1]->{'Type'}    = "HTTP_Request";
        $_[1]->{'method'}  = $method;
        $_[1]->{'request'} = $path;
        $_[1]->{'accept'}  = $accept;
        return $newhandle;
    } else {
        return undef;
    }
}

#================
sub SendRequest {
#================
    my($self, $postdata) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "HTTP_Request") {
        $self->{'Error'} = "SendRequest() only on HTTP requests.";
        return undef;
    }
  
    $postdata = "" unless defined($postdata);

    return HttpSendRequest($self->{'handle'}, "", $postdata);
}


#==============
sub AddHeader {
#==============
    my($self, $header, $flags) = @_;
    return undef unless ref($self);
  
    if($self->{'Type'} ne "HTTP_Request") {
        $self->{'Error'} = "AddHeader() only on HTTP requests.";
        return undef;
    }
  
    $flags = constant("HTTP_ADDREQ_FLAG_ADD", 0) if (!defined($flags) or $flags == 0);

    return HttpAddRequestHeaders($self->{'handle'}, $header, $flags);
}


#==============
sub QueryInfo {
#==============
    my($self, $header, $flags) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "HTTP_Request") {
        $self->{'Error'}="QueryInfo() only on HTTP requests.";
        return undef;
    }
  
    $flags = constant("HTTP_QUERY_CUSTOM", 0) if (!defined($flags) and defined($header));
    my @queryresult = HttpQueryInfo($self->{'handle'}, $flags, $header);
    return (wantarray)? @queryresult : join(" ", @queryresult);
}


#============
sub Request {
#============
    # HttpOpenRequest+HttpAddHeaders+HttpSendRequest+InternetReadFile+HttpQueryInfo
    my($self, $path, $method, $version, $referer, $accept, $flags, $postdata) = @_;
    return undef unless ref($self);

    if($self->{'Type'} ne "HTTP") {
        $self->{'Error'} = "Request() only on HTTP sessions.";
        return undef;
    }

    if(ref($path) and ref($path) eq "HASH") {
        $method    = $path->{'method'};
        $version   = $path->{'version'};
        $referer   = $path->{'referer'};
        $accept    = $path->{'accept'};
        $flags     = $path->{'flags'};
        $postdata  = $path->{'postdata'};
        my $mypath = $path->{'path'};
        undef $path;
        $path      = $mypath;
    }

    my $content     = "";
    my $result      = "";
    my @queryresult = ();
    my $statuscode  = "";
    my $headers     = "";
  
    $path     = "/"               unless defined($path);
    $method   = "GET"             unless defined($method);
    $version  = "HTTP/1.0"        unless defined($version); 
    $referer  = ""                unless defined($referer);
    $accept   = $self->{'accept'} unless defined($accept);
    $flags    = 0                 unless defined($flags);
    $postdata = ""                unless defined($postdata);

    $path = "/".$path if substr($path,0,1) ne "/";  
  
    my $newhandle = HttpOpenRequest($self->{'handle'},
                                    $method,
                                    $path,
                                    $version,
                                    $referer,
                                    $accept,
                                    0,
                                    $flags);

    if($newhandle) {

        $result = HttpSendRequest($newhandle, "", $postdata);

        if(defined($result)) {
            $statuscode = HttpQueryInfo($newhandle,
                                        constant("HTTP_QUERY_STATUS_CODE", 0), "");
            $headers = HttpQueryInfo($newhandle,
                                     constant("HTTP_QUERY_RAW_HEADERS_CRLF", 0), "");
            $content = ReadEntireFile($newhandle);
               
            InternetCloseHandle($newhandle);
      
            return($statuscode, $headers, $content);
        } else {
            return undef;
        }
    } else {
        return undef;
    }
}


#######################################################################
# END OF THE PUBLIC METHODS
#


#========= ### SUB-CLASSES CONSTRUCTOR
sub _new {
#=========
    my $self = {};
    if ($_[0]) {
        $self->{'handle'} = $_[0];
        bless $self;
    } else {
        undef($self);
    }
    $self;
}


#============ ### CLASS DESTRUCTOR
sub DESTROY {
#============
    my($self) = @_;
    # print "Closing handle $self->{'handle'}...\n";
    InternetCloseHandle($self->{'handle'});
    # [dada] rest in peace
}


#=============
sub callback {
#=============
    my($name, $status, $info) = @_;
    $callback_code{$name} = $status;
    $callback_info{$name} = $info;
}

#######################################################################
# dynamically load in the Internet.pll module.
#

bootstrap Win32::Internet;

# Preloaded methods go here.

#Currently Autoloading is not implemented in Perl for win32
# Autoload methods go after __END__, and are processed by the autosplit program.

1;
__END__

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品 国产精品| 久久这里只有精品首页| 欧美男同性恋视频网站| 日韩三级精品电影久久久 | 91麻豆精品国产91久久久久久久久 | 久久精品日韩一区二区三区| 中文成人综合网| 亚洲妇女屁股眼交7| 亚洲成av人片在www色猫咪| 亚洲国产欧美在线| 国产在线视频一区二区三区| 一本到一区二区三区| 日韩欧美第一区| 国产精品国产三级国产aⅴ入口| 亚洲激情一二三区| 国产91丝袜在线18| 91精品国产色综合久久ai换脸 | 成人av在线资源网站| 欧美人妇做爰xxxⅹ性高电影| 久久噜噜亚洲综合| 免费在线成人网| 91电影在线观看| 中文字幕精品综合| 精品一区二区三区av| 欧美在线观看禁18| 国产精品素人一区二区| 三级亚洲高清视频| 在线观看亚洲成人| 中文字幕精品综合| 国产一区二区三区观看| 欧美日韩三级一区二区| 国产精品久久久久影院| 国产真实乱子伦精品视频| 欧美影院午夜播放| 日韩美女久久久| 国产精品中文字幕欧美| 欧美一区三区二区| 日韩专区欧美专区| 欧美日韩高清一区| 亚洲综合成人在线| 99国产一区二区三精品乱码| 日韩激情一区二区| 日韩电影网1区2区| 久久夜色精品国产欧美乱极品| 99久久精品国产一区二区三区| 日本色综合中文字幕| 国产精品无码永久免费888| 精品三级在线观看| 99视频在线观看一区三区| 国产精品久久久久久久第一福利| 亚洲小少妇裸体bbw| 亚洲成在线观看| 欧美三级电影在线观看| 亚洲一区电影777| 欧美精品久久一区| 日韩av成人高清| 日本韩国一区二区三区| 亚洲一区二区免费视频| 精品精品国产高清一毛片一天堂| 国产在线播精品第三| 国产精品白丝在线| 欧美一区国产二区| heyzo一本久久综合| 亚洲va在线va天堂| 国产视频一区在线观看| 一本大道久久a久久综合| 奇米色一区二区| 中文字幕免费不卡| 欧美日韩在线一区二区| 蜜臀av一区二区在线观看| 亚洲精品在线网站| 日本黄色一区二区| 久久精品久久综合| 日韩美女精品在线| 欧美一区日韩一区| 色综合色综合色综合色综合色综合| 亚洲影院理伦片| 欧美经典三级视频一区二区三区| 激情深爱一区二区| 自拍偷拍国产精品| 日韩精品一二三| 国产99精品国产| 在线一区二区三区四区| 最新高清无码专区| 欧美激情艳妇裸体舞| 国产精品色哟哟| 久久影院电视剧免费观看| 国产在线精品一区二区夜色| 欧美精品一卡两卡| 亚洲国产成人自拍| 99国产精品国产精品久久| 亚洲成人av免费| 亚洲免费在线看| 在线观看日韩国产| 亚洲精品一区二区三区香蕉| 精品理论电影在线观看| 丝袜美腿亚洲综合| 91影院在线免费观看| 精品国产伦一区二区三区观看体验| 首页国产丝袜综合| 欧美久久久久免费| 奇米精品一区二区三区在线观看 | 亚洲一二三区不卡| 日韩一区二区高清| 麻豆国产欧美一区二区三区| 色猫猫国产区一区二在线视频| 亚洲卡通动漫在线| 欧美在线一二三四区| 26uuu亚洲综合色| 奇米888四色在线精品| 日韩欧美一区二区免费| 国产v日产∨综合v精品视频| 欧美日韩精品系列| 国内精品国产成人国产三级粉色 | 欧美va亚洲va在线观看蝴蝶网| 国产精品的网站| 国产九色精品成人porny | 亚洲一区在线视频观看| 91精品免费在线观看| 国产99精品国产| 精品一区二区三区免费观看| 国产欧美日韩亚州综合| 欧美日韩高清一区二区| av中文一区二区三区| 亚洲男人的天堂在线观看| 欧美精品一二三| 日韩视频在线一区二区| 成人动漫中文字幕| 国产成人一区在线| 高清视频一区二区| 国产美女娇喘av呻吟久久| 国产麻豆9l精品三级站| 免费看黄色91| 成人免费毛片嘿嘿连载视频| 国产麻豆精品视频| 91色|porny| 色综合天天综合在线视频| 欧美日韩一区精品| 这里只有精品视频在线观看| 欧美人与z0zoxxxx视频| 91美女片黄在线观看91美女| 91香蕉视频mp4| 在线播放91灌醉迷j高跟美女 | 风间由美中文字幕在线看视频国产欧美| 三级欧美韩日大片在线看| 经典一区二区三区| 国产老肥熟一区二区三区| 色综合久久88色综合天天6| 色综合久久天天综合网| 日韩亚洲欧美综合| 久久久久久亚洲综合| 亚洲精品一二三区| 视频精品一区二区| 国产91高潮流白浆在线麻豆| 99国产精品久久久久久久久久| 欧美日韩国产色站一区二区三区| 欧美精品黑人性xxxx| 国产嫩草影院久久久久| 一区二区三区中文字幕电影| 久久精品99久久久| 大白屁股一区二区视频| 欧美久久久久中文字幕| 国产亚洲短视频| 日韩不卡一区二区| 精品一区二区三区免费| 色婷婷综合久久久中文一区二区| 欧美亚洲综合色| 久久综合国产精品| 欧美成人aa大片| 久久精品国产77777蜜臀| 欧美一区二区视频在线观看 | 精品va天堂亚洲国产| 精品视频资源站| 成人美女视频在线观看| 国产免费成人在线视频| 欧美精品免费视频| 在线观看欧美黄色| 成人午夜av影视| 亚洲午夜激情网页| 欧美色国产精品| 一区二区三区国产精华| 精品日韩一区二区| 欧美激情在线看| 亚洲婷婷综合久久一本伊一区 | 国产老肥熟一区二区三区| 日本高清不卡视频| 国产精品久线在线观看| 蓝色福利精品导航| 91麻豆精品国产91久久久| 国产日产欧美一区二区视频| 久久爱另类一区二区小说| 狠狠色综合日日| 9191国产精品| 日韩电影免费在线看| 91久久精品网| 亚洲免费av高清| 成人免费毛片嘿嘿连载视频| 久久精品亚洲麻豆av一区二区| 亚洲一线二线三线视频| 色综合天天在线|