2012-08-29 4 views
0

내 호스트 응용 프로그램은 wxWidgets을 사용하여 개발되었으며 순수한 C++ dll에서 응용 프로그램 경로가 필요합니다. 내가 실행 응용 프로그램을 개발하는 중이라면 argv [0]에서 응용 프로그램 경로를 얻을 수 있습니다. 하지만 dll을 개발한다면 어떻게 C++을 사용하여 응용 프로그램 경로를 얻을 수 있습니까? 가능한가?dll에서 응용 프로그램 경로 얻기

+0

이상한 질문입니다. 순수한 C++ dll이라면 왜 wwWidgets에 태그를 추가 했습니까? – ravenspoint

+0

@ravenspoint wxwidgets 응용 프로그램에서 dll을 연결하고 있습니다. 어쩌면 호스트와 도서관간에 정보를 교환 할 수있는 방법이있을 것입니다. 그래서 나는 wxwidgets에 대해 언급했다. –

+0

질문을 편집하여 실제로 묻고있는 내용을 설명해야합니다. – ravenspoint

답변

0

호스트에서 응용 프로그램 경로를 얻고 (메서드를 저장하지 않은 DLL 코드로 전달하려는 경우) 다른 응답자가 제안한대로 Windows API GetModuleFileName()을 사용할 수 있습니다. 또는 wxWidgets 메서드를 사용할 수도 있습니다 wxStandardPaths :: GetExecutablePath()

0

C++을 사용하여 DLL의 응용 프로그램 경로를 가져올 수 없습니다. C++ 언어는 DLL을 지정하고 지원하지 않습니다. 이런 경우에는 운영 체제 API를 사용해야합니다. 예를 들어 Windows API : GetModuleFileName.

3

.dll에 대해 언급 했으므로 Windows .dll을 개발할 가능성이 큽니다. .dll을 사용하여 .exe의 경로를 원하면 GetModuleFileName(NULL, ...)으로 전화하십시오. .dll의 경로를 원할 경우 에 전달 된 HINSTANCE 매개 변수를 대신 전달할 수 있습니다.