Hi all,
I am working on a camera to collect data. In the process one of the functions is throwing errors while copying the data from the buffer on board to local system buffer.
The message which I am getting is
Unhandled exception at 0x1026ef58 (msvcr90d.dll) in Camera.exe: 0xC0000005: Access violation reading location 0xd41dddcc.
Code:
__declspec(dllexport) int intf_daq_get_frame (void * intf_p, unsigned char * frame_data, unsigned long frame_size)
{
BFDev *bf_p;
bf_p = (BFDev *) intf_p;
if (bf_p == NULL)
{
return FAILURE;
}
// Wait for frame to be acquired.
bf_p->rv = BiCirWaitDoneFrame(bf_p->Board, &bf_p->BufArray, INFINITE, &bf_p->CirHandle);
// Process newly acquired frame
memcpy(frame_data, (unsigned char *) (bf_p->CirHandle.pBufData), frame_size);
// Mark the processed buffer available for acquisition
bf_p->rv = BiCirStatusSet(bf_p->Board, &bf_p->BufArray, bf_p->CirHandle, BIAVAILABLE);
if(bf_p->rv != BI_OK)
{
BiErrorShow(bf_p->Board, bf_p->rv);
return FAILURE;
}
return SUCCESS;
}
Can someone tell me what would have went wrong and any suggestions.
Thanks in advance.