Witam. udało mi się dodać aktualną datę i czas do pobranej ramki z kamery oraz wyświetlić ją w pictureBox. jednak gdy próbuję zapisać sekwencję video program głasza wyjątek: Nastąpiła próba odczytu lub zapisu pamięci chronionej. Często wskazuje to, że inna pamięć jest uszkodzona.

KOD:

....
//inicjalizacja narzędzia zapisu wideo
writer = cvCreateVideoWriter("1.avi", CV_FOURCC('P','I','M','1'), 25, cvSize( frameW, frameH ), 1);
....

private: System::Void timer3_Tick(System::Object sender, System::EventArgs e)
{

        //pobranie daty i czasu systemowego
        SYSTEMTIME st;
                GetSystemTime(&st);
        System::String^ data;
        data = ("Data:"+st.wDay+":"+st.wMonth+":"+st.wYear+" Czas:"+ (st.wHour+1)+":"+st.wMinute+":"+st.wSecond+"");

        //konwersja string data do char napis
        //
        pin_ptr<const wchar_t> wch = PtrToStringChars(data);
        size_t convertedChars = 0;
        size_t  sizeInBytes = ((data->Length + 1) * 2);
        errno_t err = 0;
        char* napis = (char *)malloc(sizeInBytes);
        err = wcstombs_s(&convertedChars,napis, sizeInBytes,wch, sizeInBytes);
        //
        //definicja czcionki
        CvFont font;
        double hScale=0.5;
        double vScale=0.5;
        int    lineWidth=1;
        cvInitFont(&font,CV_FONT_HERSHEY_SIMPLEX, hScale,vScale,0,lineWidth);

        frame = cvQueryFrame(capture);

        //naniesienie tekstu na ramkę
        cvPutText (frame,napis,cvPoint(370,380), &font, cvScalar(255,255,0));

        //podgląd obrazu z kamery
        this->pictureBox1->Image  = gcnew    
        System::Drawing::Bitmap(frame->width,frame->height,frame->widthStep,
        System::Drawing::Imaging::PixelFormat::Format24bppRgb,
        (System::IntPtr) frame->imageData);

        //rejestracja sekwencji wideo
        cvWriteFrame(writer,frame);
     }

Proszę o pomoc, siedzę nad tym już sporo czasu...