지금 작성하고있는 프로젝트에서
여러 EXE 파일과 여러 DLL 을 사용하고있습니다.
(패키지 관련 업무라서 실행파일 하나로 만들수가 없습니다..)
각각의 실행파일이나 DLL 에서는 모두 같은 DataModule 을 사용하고 있습니다.
각각의 파일에 같은 데이타모듈을 붙여야 하는 것이 번거로와
데이타모듈만 들어있는 DLL을 작성해서 사용할려고 하는데 잘 되질않는군요...
모듈에 있는 쿼리에 접근하려하면 에러가 납니다..
제 생각에는 실행파일과 DLL 이 서로 다른 주소공간을 사용하기때문인거 같은데
해결 방법을 찾질못하고 있습니다...
데이타모듈을 생성하는시점에서 현재 실행중인 프로그램의 핸들을 넣어주어야 할것도 같은데..
데이타모듈은 정적으로 바인딩을 하길 원합니다..
(프로젝트 안에서 공통으로 사용하기 때문이죠)
이러한 구조로 만든다는 것은 잘못된 생각인가요 ?
그렇다면 좀더 유연한 구조가 있다면 배워보고 싶습니다...
고수님들의 조언을 기다리겠습니다...
참고로
해본결과 쿼리를 생성하는 시점이 문제더군요..
동적으로 쿼리를 생성하고 사용후 바로 Free 시키면 에러는 없으나
이런 방식이라면 데이타베이스, 쿼리 여러개를 수시로 Create, Free 해주어야 하니
뭔가 찜찜하다는 생각이 들거든요...
Form갯수가 많아짐에 따라 EXE파일이 비대화(?)등의 문제가
발생합니다.
특히, Form들이 Auto Create되는 경우에는
실행모듈 Load시 속도저하 내지는
아예 실행되지는 못하는 (Resource부족등) 현상이 발생되는데 이것때문에
저도 시행착오를 많이 격었죠..
특히나 MDI 형태로 개발할 경우에는 말이죠.
결론은,
그래도 실행모듈은 하나로 가는게 낫더라는거죠.
물론 Client로 배포할 때마다 Download속도는 조금 느릴수도 있지만,
이것도 압축기술을 사용하면 큰무리가 없더군요.
제 경우에는 가장 큰 EXE가 30메가에 가까운것도 있었는데
별 무리는 없더군요..
도움이 되시기를
우동진 wrote:
> 지금 작성하고있는 프로젝트에서
> 여러 EXE 파일과 여러 DLL 을 사용하고있습니다.
> (패키지 관련 업무라서 실행파일 하나로 만들수가 없습니다..)
>
> 각각의 실행파일이나 DLL 에서는 모두 같은 DataModule 을 사용하고 있습니다.
>
> 각각의 파일에 같은 데이타모듈을 붙여야 하는 것이 번거로와
>
> 데이타모듈만 들어있는 DLL을 작성해서 사용할려고 하는데 잘 되질않는군요...
>
> 모듈에 있는 쿼리에 접근하려하면 에러가 납니다..
>
> 제 생각에는 실행파일과 DLL 이 서로 다른 주소공간을 사용하기때문인거 같은데
> 해결 방법을 찾질못하고 있습니다...
>
> 데이타모듈을 생성하는시점에서 현재 실행중인 프로그램의 핸들을 넣어주어야 할것도 같은데..
>
> 데이타모듈은 정적으로 바인딩을 하길 원합니다..
> (프로젝트 안에서 공통으로 사용하기 때문이죠)
>
> 이러한 구조로 만든다는 것은 잘못된 생각인가요 ?
>
> 그렇다면 좀더 유연한 구조가 있다면 배워보고 싶습니다...
>
> 고수님들의 조언을 기다리겠습니다...
>
> 참고로
> 해본결과 쿼리를 생성하는 시점이 문제더군요..
> 동적으로 쿼리를 생성하고 사용후 바로 Free 시키면 에러는 없으나
> 이런 방식이라면 데이타베이스, 쿼리 여러개를 수시로 Create, Free 해주어야 하니
> 뭔가 찜찜하다는 생각이 들거든요...
>
>