나는 DLL과 헤더 파일을 갖고 있으며 C#에서 사용할 COM 래퍼를 만들려고합니다.
기능의 대부분은 int
또는 string
을 반환 했으므로 매우 간단했습니다.HBITMAP 비트 맵에서 .net 비트 맵
헤더 파일에이 구조체가 있습니다.
virtual HRESULT STDMETHODCALLTYPE GetBMP(
int Width,
int Height,
HBITMAP *Bitmap) = 0;
내 문제는 내가 탈출구 C 내 리그의 때죠 ++ 내가 반드시 사전에 .NET 스타일에 충당 뭔가
감사를 HBITMAP
를 변환하는 방법을 알고하지 않는 것이하십시오이다 바보 같은 짓
UPDATE : 문제는 분명히 t 이후
HBITMAP GetBMP(int Width, int Height)
{
HBITMAP bm = 0;
m_piHelper->GetBMP(Width,Height,&bm);
return bm ;
}
:이 같은 시도 hat in C# 'HBITMAP __ *'에서 'System.IntPtr'로 변환하여 bitmap.fromHbitmap에서 사용하는 방법
'GetBMP'에 대한'[DllImport]'C# 선언문은 세번째 파라미터를'out IntPtr'로 선언 한 곳입니다. – GSerg
아니요, C++에서 dll을 가져 오지 않았습니다. im은 C++ 래퍼를 쓰려고합니다. –
그럼 우리 모두를 혼란스럽게 만들었습니다. "Managed wrapper"는 C#으로 작성한 것입니다. C++ 래퍼를 작성하는 경우 COM 래퍼가 될 수 있습니다. 이 점을 반영하기 위해 질문을 편집했습니다. 언제든지 편집을 수정하십시오. (아마도 당신은 * 관리되는 C++을 사용하고 있습니까?) – GSerg