Unit mantığını anlamak için uğraşıyorum. Bir konuyu anlayamadım.
Örneğin Ls diye bir unit oluşturuyorum, içine de Lisans diye boolean bir function,
başka bir formdan, uses'e Ls ekledikten sonra formumda istediğim yerde sadece if (Lisans) then ... deyip kullanmak istiyorum. ama kullanamadım.
Şu anda kullanabilmek için,uses'e Ls ekledikten sonra if (Ls.lisans.Lisans) then ... şeklinde kullanabiliyorum.
Umarım anlamadığım konuyu anlatabilmişimdir...

Alttaki Ls kodlarım.
Kod: Tümünü seç
unit Ls;
interface
uses
Winapi.Windows, System.SysUtils,SDL_cpuid,System.Classes;
type
Tlisans = class
private
{ Private declarations }
public
function lisans(): boolean;
{ Public declarations }
published
end;
var
lisans : Tlisans;
implementation
{ Tlisans }
function cpuid:string;
begin
Result := StringReplace(GenerateCPUID, '-','', [rfReplaceAll]);
end;
function Tlisans.lisans(): boolean;
var
lisanslist:TStringlist;
i:integer;
begin
Result := False;
lisanslist := TStringList.Create;
try
lisanslist.Add('9A4E190CE23C1260');
lisanslist.Add('9A4E190CE23C1261');
lisanslist.Add('9A4E190CE23C1262');
for I := 0 to lisanslist.Count - 1 do
begin
if (cpuid = lisanslist[i]) then
begin
Result := True;
break
end;
end;
finally
lisanslist.Free;
end;
end;
end.
