Trabaja con claves del registro; los datos quedaran guardados aunque el server reinicie o sea reinstalado.
Clear: Boolean Exists(key: AnsiString): Boolean Delete(key: AnsiString): Boolean GetKeys: TStringList GetValue(Key:ansistring):ansistring SetValue(key,value: AnsiString):boolean
var//Declaracion de varianles globales. list: Tstringlist; i: integer; begin//Comienzo. if Reg.Setvalue('key1','valor1(2)') then //Guardo un valor en 'Key1' print('se cargo el valor (Y)') else print('No se cargo el valor (N)'); if reg.exists('key1') then //verifico si exsiste la clave 'key1' print('existe con el valor: '+reg.getvalue('key1')); list:= Reg.getkeys; //Creo una lista con todas las claves if list <> nil then for i:=0 to list.count-1 do print('valor '+inttostr(i)+': '+list[i]); if Reg.delete('key1') then //Borro la clave 'key1' print('se borro el valor (Y)'); if reg.clear then //Borro todas las claves. print('se borro lista') else print('no se borro lista'); end.
Users: Integer R {cantidad de usuarios} Bans: integer R {cantidad de bans} Port: Word R Hashlink: Ansistring R externalIP: Ansistring R Name: Ansistring R lang: Ansistring R Version: Ansistring R StartTime TDateTime R onTime Ansistring R Topic Ansistring RW Url Ansistring RW Urltag Ansistring RW
SendHtml(tag: Ansistring) procedure SendScribble(Scb: TScribble)
procedure onCommand (us: TUser; cmd, args: AnsiString; PV:boolean); begin if cmd = 'topic' then //comando /cmd <topic> Room.topic:= args if cmd = 'url' then //comando /url <url>espacio<urltag> begin Room.url:= Copy(args,1,Pos(' ',args)-1); Room.urltag:= Copy(args,Pos(' ',args)+1, 100); end; if cmd = 'info' then begin printu(us,'Nombre de la sala: '+room.name); printu(us,'Hashlink: '+room.haslink); printu(us,'Cantidad de usuarios: '+room.users); printu(us,'Cantidad de usuarios baneados: '+room.bans); printu(us,'version del servidor: '+room.version); end; end;
Append(fname,text: AnsiString):Boolean Exist(fname:AnsiString):Boolean Load(fname:AnsiString): AnsiString Save(fname,text:AnsiString):Boolean
var Lista: TStringList; procedure onLoad(); var i: Integer; begin Lista:= Tstringlist.create; if file.exist('miArchivo.txt') then Lista.text:= file.load('miArchivo.txt'); //Cargo el archivo en un stringlist. for i:=0 to Lista.count-1 do begin Print(Lista[i]); //Imprimo cada renglon del archivo. end; end; procedure userjoin(us:TUser); begin if Lista.indexof(us.name)=0 then begin Lista.Add(us.name); //Agrego el nombre del usuario a la lista. file.Append('miArchivo.txt',us.name); //Agrego el nombre del usuario al archivo. end; end; procedure onCommand (us: TUser; cmd, args: AnsiString; PV:boolean); begin if cmd = 'guardar' then file.save('miArchivo.txt',Lista.txt);//Sobreescribo el archivo con todo el contenido de la lista end;