62 lines
1.6 KiB
Perl
62 lines
1.6 KiB
Perl
#!/perl -w
|
|
use warnings;
|
|
use File::Slurp qw(:std);
|
|
use Win32::File::VersionInfo;
|
|
use Archive::Zip; # imports
|
|
# use IO::Socket::SSL;
|
|
use LWP::UserAgent;
|
|
use Data::Printer;
|
|
use Crypt::SSLeay;
|
|
use Net::SSL;
|
|
use Data::Dumper;
|
|
use File::Copy;
|
|
|
|
$ENV{PERL_NET_HTTPS_SSL_SOCKET_CLASS} = "Net::SSL";
|
|
$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
|
|
|
|
my $url = 'https://www.heidisql.com/download.php#nightlybuilds';
|
|
|
|
my $ua = LWP::UserAgent->new(timeout => 10);
|
|
$ua->show_progress( 1 );
|
|
#my $response = $ua->get($url, ':content_file' => $downloadfolder.$filename);
|
|
my $response = $ua->get($url);
|
|
my $html = $response->{_content};
|
|
|
|
my @match = $html =~ /\/builds\/heidisql64\.r(....)\.exe/g ;
|
|
my $heisql = "C:\\Program Files\\HeidiSQL\\heidisql.exe";
|
|
my $foo = GetFileVersionInfo( $heisql );
|
|
my $downloadfolder = 'C:\\dts\\';
|
|
my $filename = '';
|
|
if ( scalar @match > 0 ) {
|
|
$url = "https://www.heidisql.com/builds/heidisql64.r$match[0].exe";
|
|
$filename = "heidisql64.r$match[0].exe";
|
|
if ( $foo->{FileVersion} =~ /$match[0]/ ) {
|
|
print "Version $foo->{FileVersion} ist die neuste und ist installiert\n";
|
|
system("pause");
|
|
exit;
|
|
}
|
|
|
|
} else {
|
|
print "keine Version gefunden\n";
|
|
system("pause");
|
|
exit;
|
|
}
|
|
|
|
if ( -e $downloadfolder.$filename ) {
|
|
print "neue Nightly bereits runtergeladen\n";
|
|
} else {
|
|
print "downloade neue Nighlyversion\n";
|
|
my $ua = LWP::UserAgent->new(timeout => 10);
|
|
$ua->show_progress( 1 );
|
|
my $response = $ua->get($url, ':content_file' => $downloadfolder.$filename);
|
|
}
|
|
|
|
if ( -e $downloadfolder.$filename ) {
|
|
print "copy neue Nightly\n";
|
|
unlink $heisql;
|
|
copy($downloadfolder.$filename, $heisql);
|
|
}
|
|
|
|
system("pause");
|
|
|
|
1; |