현재 아래와 같은 소스로 구성된 procedure가 있습니다.
근데 이 소스가 3월 하순경 부터 갑자기 많은 오류를 내기 시작 했습니다.
" Access Violation ............"
<!--CodeS-->
setlength( saparam, 6);
saparam[0] := s_sql; //
saparam[1] := s_sql; //
saparam[2] := '';
saparam[3] := 'True';
saparam[4] := 'KKK';
saparam[5] := 'False'
s_form_flag := fnViewForm;
if s_form_flag <> '' then
begin
for i:= 0 to application.ComponentCount -1 do
begin
if application.Components[i] is TFormZZZN1000 then
begin
if TFormZZZN1000(application.Components[i]).ProgramID = s_form_flag then
begin
TFormZZZN1000(application.Components[i]).free;
Break;
end;
end;
end;
fnRunProgram(s_form_flag, saparam, True);
end;
<!--CodeE-->
3월 말경에 변경된 부분도 위의 내용중인 없습니다...
다만 현재까지 파악해본바로는 주로 XP쪽에서 오류가 빈번 하다는 것입니다...
2000이나 98에서도 나지 않는건 아니지만....현재 이쪽 사람들과 해본바로는 대략 그런듯....
위의 소스 내용중에 gnRunPrograms는 s_form_flag라는 변수 값을 FORM ID로 하는 FORM을 OPEN하는
함수 입니다...
고수분들이 보시기에 가장 의심나는 부분은 어디 일까요?
위의 소스중 FORM 을 FREE하는 것은 동일 FORM을 띄우지 않기 위해서 입니다...
데이터만 REFRESH하면 되기도 하겠지만 띄워야 하는 FORM이 권한 등의 문제로 인하여
REFRESH 가 아닌 다시 CREATE해야 하는 부분이 있어서 그렇습니다...
고수님들의 많은 조언 부탁 드리겠습니다.