我有一个小应用程序,它将其设置存储在INI文件中。当另一个表单打开时,我关闭INI文件描述符:
procedure TIndexForm.startButtonClick(Sender: TObject);
var
workForm : TForm;
begin
workForm := TworkingForm.Create(nil);
workForm.Show();
configIni.Free; // freeing IniFile desciptor
IndexForm.Hide();
end;
我如何检查描述符仍然是开放的?像这样(代码不工作):
if not Assigned configIni then
configIni := TIniFile.Create(configPath);
提前致谢。
答案 0 :(得分:3)
欢迎使用Assigned
,但不检查变量是否引用有效的对象实例。 没有。相反,Assigned
只检查变量是否为空。要使其成为有效检查,请在释放它引用的对象时使变量为null:
configIni.Free;
configIni := nil;
如果需要,您可以使用FreeAndNil
辅助函数;它比我上面写的更多。