c++ DLL에서 DLL 로드하면 바로 특정함수 실행하게 할 수 있을까요?

c++ DLL에서 DLL 로드하면 바로 특정함수 실행하게 할 수 있을까요?

작성일 2023.05.11댓글 1건
    게시물 수정 , 삭제는 로그인 필요

안녕하세요
C++ DLL을 로드하면 특정함수가 자동으로 호출 되게 할 수 있을까요?

DLL은 C++인데 사용 방식을 C처럼 해야되서 C++ 클래스 생성자를 호출할 수 없어서 그렇습니다.
혹시 알고 계신다면 알려주시면 감사하겠습니다.



profile_image 익명 작성일 -

DLL을 로드하면 특정 함수를 자동으로 호출하는 것은 기본적으로 불가능합니다. 로드한 DLL의 함수를 호출하려면 먼저 해당 함수에 대한 포인터를 얻어야 합니다. DLL에서 내보낸 함수의 이름 또는 주소를 사용하여 해당 함수에 대한 포인터를 가져올 수 있습니다.

그러나 DLL에서 클래스 생성자를 호출하는 것은 불가능합니다. DLL은 외부에서 사용될 수 있으므로 클래스 인스턴스를 만들고 초기화하는 것은 적절하지 않습니다. 대신, DLL에서는 C 스타일 함수를 제공하고, 이러한 함수를 통해 데이터와 기능을 제공합니다. 이를 통해 외부에서 DLL을 사용할 때 필요한 작업을 수행할 수 있습니다.

따라서 DLL에서 초기화가 필요한 경우에는, 외부에서 호출될 함수를 만들고 이 함수를 호출하기 전에 초기화 작업을 수행하는 것이 좋습니다. 초기화된 객체에 대한 포인터를 반환하고, 이 포인터를 사용하여 외부에서 작업을 수행하도록 하는 것입니다.

C++ 프로그램에서 dll 등록시키기...

... Visual Studio 6.0 C++ 프로그램으로 실행했구요.... usbspi.dll 은 lib파일이 없어서 Resource 파일에 바로 집어... dll로드하는지 확인해보세요~ LoadLibrary() 함수를...

[Matlab] C++ dll을 mexw64로 만드는 법

... 단 DLL 안에 있는 함수에 대한 설명이 적힌 해더파일을 만들어서 같이 로드하셔야합니다. 입출력은 포인터... 계실것이고 바로 사용하시면 됩니다. https://kr....

명시적 dll 호출

... - 명시적 실행 소스 코드 - #include <stdio.h> #include <windows.h> // 명시적으로 로드하는 경우, dll 에서 직접 함수의 주소를 읽어 오므로...

msvcp140.dll이 없어 코드 실행을 진행할...

msvcp140.dll이 없어 코드 실행을 진행할 수 없습니다 이 오류... 바로 다운로드 경로를 찾아갈 수 있습니다. 간혹 Visual C++ 재배포 패키지를 설치 하였음에도 dll 파일...

DLL과 CLASS, Library,의 차이점을...

소프트웨어를 공부하면서, C, c++을 하고 있습니다. DLL과... 함수가 모여서 새로운 기능을 하는 자동차가 바로... 그런데 DLL 은 Link 단계때 실행 파일안에 필요한 함수를...

DLL 라이브러리 내에서 fprintf...

... - dll에 있는 함수실행하기 위해서는... 라이브러리를 로드하는 과정이 필요합니다.... test_dll.txt","w"); 는 MathFuncs 네임스페이스 바로...