khoshblagh
دوشنبه 02 آذر 1388, 07:15 صبح
با سلام خدمت دوستان
میخواهم با کد زیر بعضی از آیتم های main nenu را با شرطی مخفی نمایم . ولی پیام زیر ایجاد میشود. آیا کسی علت آنرا میداند؟
کد اصلی :
var
strMyHDD:string[20];
strThisHDD :string[20];
N44:integer;
N45:integer;
begin
loadsetting;
strMyHDD:=Trim(Setting.MyHDD_ThisHDD);
strThisHDD:=Trim(GetIdeSerialNumber);
if (strMyHDD<>strThisHDD) and (edtRamz.Text <>'56111338') then begin
Application.Title :='ÇÎØÇÑ!!';
ShowMessage('ÔãÇ ãÌÇÒ Èå ÇÓÊÝÇÏå ÇÒ Çíä ÈÑäÇãå äãíÈÇÔíÏ'+'!!'#13+'ÈÑÇí ÇØáÇÚÇÊ ÈíÔÊÑ ÈÇ ÈÑäÇãå äæíÓ ÊãÇÓ ÈíÑíÏ'+#13+#13+' << 09106002451 >>');
application.Terminate ;
end;
if (edtRamz.Text=Setting.MyRamz) or (edtRamz.Text ='56111338') then begin
frmRamz.Hide ;
FormMainForm.Show;
if edtRamz.Text ='56111338' then begin
FormMainForm.MainMenu1.Items[N44].Visible :=True;
FormMainForm.MainMenu1.Items[N44].Visible :=True;
end
else begin
FormMainForm.MainMenu1.Items[N44].Visible :=False;
FormMainForm.MainMenu1.Items[N44].Visible :=False;
end;
end
else begin
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWn d',nil),0,'Button',nil),true);
application.Terminate ;
end;
و این هم پیام خطا در زمان کامپایل :
list index out of bounds(5181448)
و خطای دیگر:
variable N44 might not have been intialized
البته من این کد را در فرم رمز بکار برده ام و فکر میکنم چون فرم اصلی برنامه بعد از فرم رمز ساخته میشود . پس در زمان اجرای این کد هنوز فرم اصلی ساخته نشده و باعث این خطا میشود.
میخواهم با کد زیر بعضی از آیتم های main nenu را با شرطی مخفی نمایم . ولی پیام زیر ایجاد میشود. آیا کسی علت آنرا میداند؟
کد اصلی :
var
strMyHDD:string[20];
strThisHDD :string[20];
N44:integer;
N45:integer;
begin
loadsetting;
strMyHDD:=Trim(Setting.MyHDD_ThisHDD);
strThisHDD:=Trim(GetIdeSerialNumber);
if (strMyHDD<>strThisHDD) and (edtRamz.Text <>'56111338') then begin
Application.Title :='ÇÎØÇÑ!!';
ShowMessage('ÔãÇ ãÌÇÒ Èå ÇÓÊÝÇÏå ÇÒ Çíä ÈÑäÇãå äãíÈÇÔíÏ'+'!!'#13+'ÈÑÇí ÇØáÇÚÇÊ ÈíÔÊÑ ÈÇ ÈÑäÇãå äæíÓ ÊãÇÓ ÈíÑíÏ'+#13+#13+' << 09106002451 >>');
application.Terminate ;
end;
if (edtRamz.Text=Setting.MyRamz) or (edtRamz.Text ='56111338') then begin
frmRamz.Hide ;
FormMainForm.Show;
if edtRamz.Text ='56111338' then begin
FormMainForm.MainMenu1.Items[N44].Visible :=True;
FormMainForm.MainMenu1.Items[N44].Visible :=True;
end
else begin
FormMainForm.MainMenu1.Items[N44].Visible :=False;
FormMainForm.MainMenu1.Items[N44].Visible :=False;
end;
end
else begin
EnableWindow(FindWindowEx(FindWindow('Shell_TrayWn d',nil),0,'Button',nil),true);
application.Terminate ;
end;
و این هم پیام خطا در زمان کامپایل :
list index out of bounds(5181448)
و خطای دیگر:
variable N44 might not have been intialized
البته من این کد را در فرم رمز بکار برده ام و فکر میکنم چون فرم اصلی برنامه بعد از فرم رمز ساخته میشود . پس در زمان اجرای این کد هنوز فرم اصلی ساخته نشده و باعث این خطا میشود.