Q&A

  • Access Violation Error 관련 문의....
현재 아래와 같은 소스로 구성된 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해야 하는 부분이 있어서 그렇습니다...

고수님들의 많은 조언 부탁 드리겠습니다.
0  COMMENTS