관리되지 않는 C++ dll은 int 형식을 창으로 사용하는 내 보낸 함수가 있습니다. hanlde관리되지 않는 C++ dll에 Windows 핸들 전달
void SetWindowHandle(int nHandle);
else 관리되지 않는 dll 코드에서 int
는 HWND
으로 캐스팅되고 올바르게 사용됩니다.
그리고 Windows 양식 응용 프로그램에서 다음과 같이 핸들을 설정합니다.
여기서 _hHandle
은 클래스 내부의 개인 멤버입니다. 나는 핸들을 올바르게 얻고 있는가? 그것은 그렇지만 응용 프로그램이 원하는 출력을 제공하지 않는 것 같습니다. 나는 그 문제가 그 손잡이에 있다고 생각한다.
추신 : 관리되지 않는 DLL에 대한 액세스 권한이 있으므로 제안 된 변경 사항을 수정할 수 있습니다.
Winforms 앱도 관리되는 C++이며 관리되지 않는 C++의 래퍼는 winforms 프로젝트와 함께 별도의 클래스 헤더/cpp로 포함됩니다. – rptony
그래, 나는 dll 내부에서도 (잘 정수) 핸들을 얻는다; 그것이 올바른 핸들인지는 모르겠다. 글쎄, 그 핸들에 대해 GetDC를 호출 해 보겠습니다. 올바르게 반환되면 올바른 핸들입니다. – rptony
값이 창 핸들인지 확인하려면 IsWindow를 호출하십시오. –