1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, WinInet, ExtCtrls, jpeg, ShellAPI, ComCtrls, Gauges; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Memo1: TMemo; Image1: TImage; Button4: TButton; Button3: TButton; Label1: TLabel; ProgressBar1: TProgressBar; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Image1Click(Sender: TObject); private
public
end;
var Form1: TForm1;
implementation
{$R *.dfm}
function GetInetFile(const fileURL, FileName: String): boolean; const BufferSize = 1024; var hSession, hURL: HInternet; Buffer: array[1..BufferSize] of Byte; BufferLen: DWORD; f: File; sAppName: string; begin Result:=False; sAppName := ExtractFileName(Application.ExeName); hSession := InternetOpen(PChar(sAppName), INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0); try hURL := InternetOpenURL(hSession, PChar(fileURL), nil,0,0,0); try AssignFile(f, FileName); Rewrite(f,1); repeat InternetReadFile(hURL, @Buffer, SizeOf(Buffer), BufferLen); BlockWrite(f, Buffer, BufferLen) until BufferLen = 0; CloseFile(f); Result:=True; finally InternetCloseHandle(hURL) end finally InternetCloseHandle(hSession) end end;
procedure TForm1.Button1Click(Sender: TObject); var InternetFile1,LocalFile1,InternetFile2,LocalFile2,InternetFile3,LocalFile3: string; begin InternetFile1:='http://morpheus0024.mo.funpic.de/updates/config.pk'; LocalFile1:='./data/config/Config.pk'; InternetFile2:='http://morpheus0024.mo.funpic.de/updates/e.pk'; LocalFile2:='./data/HyperText/e/e.pk'; InternetFile3:='http://morpheus0024.mo.funpic.de/updates/server.ini'; LocalFile3:='server.ini';
if GetInetFile(InternetFile1,LocalFile1)=True then progressbar1.position:= 45 else ShowMessage('Can not download config.pk');
if GetInetFile(InternetFile2,LocalFile2)=True then progressbar1.Position:= 90 else ShowMessage('Can not download e.pk');
if GetInetFile(InternetFile3,LocalFile3)=True then progressbar1.Position:= 100 else ShowMessage('Can not download server.ini');
end;
procedure TForm1.Button2Click(Sender: TObject); begin close end;
procedure TForm1.Button3Click(Sender: TObject); begin ShellExecute(Form1.Handle, 'open', 'engine.exe', '/load /config debug', nil, SW_SHOWNORMAL); close;
end;
procedure TForm1.FormCreate(Sender: TObject); var InternetFile,LocalFile: string; begin
InternetFile:='http://www.x-gaming.eu/updates/Notice.txt'; LocalFile:='notice.txt';
if GetInetFile(InternetFile,LocalFile)=True then Memo1.Lines.LoadFromFile(LocalFile) else ShowMessage('Can not download Notice.txt');
end;
procedure TForm1.Button4Click(Sender: TObject); begin ShellExecute(Form1.Handle, 'open', 'engine.exe', '/setup', nil, SW_SHOWNORMAL);
end;
procedure TForm1.Image1Click(Sender: TObject); begin ShowMessage('Thx to BakaBug for his great support'); end;
end. |