Q&A

  • activeX dll의 parameter에 대한 질문입니다.
visual basic에서 만든 acriveX dll에서 아래와 같은 프로시져를 정의 했습니다.



Public Sub SetFileName(fn As String)

m_filename = fn

End Sub



fn은 스트링으로 받아들입니다.



이것을 델파이에서 dll을 불러와 사용하였더니



procedure setFileName: procedure(var fn:wideString)이라는 형식으로 나타납니다.



그래서



var

fn : widestring;

..

begin

..

fn := 'arrow.bmp';

xx.setFileName(fn);

---> access violation at address 00000.. 이라는 메세지가 나타납니다.

이럴경우 어떻게 이 파라메터 값을 넘겨 주어야 합니까?





참고로 visual basic 에서는 activeX dll을 불러와서

xx.setFilename "arrow.bmp"을 사용하면 에러없이 잘 사용됩니다.



그리고 델파이에서도 setFileName을 사용하지 않으면 실행이 됩니다.



그럼 답변 부탁드립니다. 감사합니다.





0  COMMENTS