Q&A

  • DLL 입출력 파일...


지금 DLL입출력 함수의 사용이라는 것을 배우고 있는데요..

이전부터 이해가 안되는 질문이 3가지가 있었거든요...



1번질문 : 예제를 보면 DllProc:=@DLLEntrypoint;

이런게 있는데요... @ <-- 이건 머할때 앞에 붙여요?



2번질문 : DLL을 이용한 데이터 공유에서 질문하고 싶은건데요..

이번 단원 예제에서는 SheareDLL.DLL이라는 DLL파일을 만들거든요

그런데 여기서 DLLDate^.A, DLLDate^.B 이런게 있어요.. 변수명 같은데 이름이

이상해서

앞에 Var 나 const를 보면 이런건 선언도 안해주었던데..



3번째질문 : 이건 정말로 궁금한건데요..

DLL을 쓰는것이 곧 API를 쓰는거라고 했거든요.

그런데요 정말로 프로그래밍을 할때 DLL이 필요한가요?

어느면에서 필요한가요? 전 프로그래밍 배울때 이런거 필요하나?

라는 (엉뚱한생각)이 들어요...... 정말 어떨때 필요하죠?







1  COMMENTS
  • Profile
    유효종 2000.01.17 22:32
    이헌준 wrote:

    >

    > 지금 DLL입출력 함수의 사용이라는 것을 배우고 있는데요..

    > 이전부터 이해가 안되는 질문이 3가지가 있었거든요...

    >

    > 1번질문 : 예제를 보면 DllProc:=@DLLEntrypoint;

    > 이런게 있는데요... @ <-- 이건 머할때 앞에 붙여요?

    >



    C 를 아시는지 모르겠지만

    C 에서 Pointer Function 과 같다고 보시면 되겠네요

    즉 동적인 function 이나 procedure 를 실행하기 위해 많이 쓰이죠

    예를 들자면 프로그램이 실행할 때마다 DLL 을 메모리에 올리는 것보다

    필요할 때만 Dll 의 function pointer 를 알면 쓸데없는 메모리 낭비가

    없겠죠!~



    > 2번질문 : DLL을 이용한 데이터 공유에서 질문하고 싶은건데요..

    > 이번 단원 예제에서는 SheareDLL.DLL이라는 DLL파일을 만들거든요

    > 그런데 여기서 DLLDate^.A, DLLDate^.B 이런게 있어요.. 변수명 같은데 이름이

    > 이상해서

    > 앞에 Var 나 const를 보면 이런건 선언도 안해주었던데..

    >

    이것도 역시 Pointer 와 관련된 것입니다.

    . 은 C 에서 structure 와 같은거 구요 ^ 는 -> 와 같은거라고

    보시면 됩니다.

    이것들이 또 뭐냐고 묻는건 아니겠죠?





    > 3번째질문 : 이건 정말로 궁금한건데요..

    > DLL을 쓰는것이 곧 API를 쓰는거라고 했거든요.

    > 그런데요 정말로 프로그래밍을 할때 DLL이 필요한가요?

    > 어느면에서 필요한가요? 전 프로그래밍 배울때 이런거 필요하나?

    > 라는 (엉뚱한생각)이 들어요...... 정말 어떨때 필요하죠?

    >



    필요 없다고 생각 되시면 직접 만들어서 쓰시면 되겠네요..

    예를 들자면 PlaySound (File...) 는 wav File 을 열어 스피커로 출력하는건데

    -한줄로 끝-

    Dll 이나 API 를 쓰시기 싫으시면 직접 sound card I/O 포트를 열어

    device 수준에서의 콘트롤을 하시면 됩니다. Assembly 로 하셔야 하고...

    sound card 별 spec 도 아셔야 하고 중요한건 sound card 가 들린 컴퓨터에선

    돌아가질 않게 되겠죠...