엉뚱한 질문입니다만..
VC에 선언된 함수는 다음과 같습니다.
PROTOTYPE
DWORD WINAPI XXX_dw_LockWait4GetImageAddr( DWORD IN_dwChannel,
DWORD *IN_dwImageAddr);
델파이로
function XXX_dw_LockWait4GetImageAddr(IN_dwChannel: DWORD;
IN_dwImageAddr: PDWORD): DWORD stdcall;
요렇게 변환했습니다.
소스에서는
var
dwADDR:DWORD;
begin
ZeroMemory(@dwADDR, sizeof(dwADDR));
ReturnV := XXX_dw_LockWait4GetImageAddr(0, @dwADDR);
end;
리턴값은 정상적인 값 0 으로 넘어오는데요.
@dwADDR 이미지값이 저장되어 있는 곳을 가리키는 것 같은데 이 값을 이용해
화면에 출력할 수 있는 방법은 있나요?
고수님들의 조언부탁드립니다.
감사합니다.
DVR 코드 특성상 Frame Buffer의 포인터를 넘기는 경우가 많죠.
그 Frame Buffer 를 읽어서 한점씩 그리면 됩니다.
좀 느리긴 하겠지만요. 그 점을 커버하려면 몇 개의 점씩 즉, 4바이트씩 처리를 하면 됩니다.
요즘 하드웨어가 빨라서 그리 느리지 않습니다.
그리고 DVR SDK 중에는 그냥 비트맵 데이터를 날려주는 경우도 있더군요.
지금 하시는 작업이 뭔지 몰라두 DLL 과 그 관련된 라이브러리를 만든 회사에 물어 보는게 제일 빠를 것 같습니다.
그럼 부디 성공하시길..