Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Błąd z pamięcią

Ostatnio zmodyfikowano 2012-09-30 21:18
Autor Wiadomość
Admixior
Temat założony przez niniejszego użytkownika
Błąd z pamięcią
» 2012-09-30 21:18:09
Próbuję zapisać bitmapę i....
C/C++
IStream * bmptojpg = NULL;

//utworzenie strumienia
if( CreateStreamOnHGlobal( NULL, TRUE, & bmptojpg ) == S_OK )
{
    _ULARGE_INTEGER integer;
    integer.QuadPart = bmphead.bfSize;
    //poszerzenie rozmiaru
    bmptojpg->SetSize( integer );
    DWORD writesuccess;
    //pisanie perwszego i drugie naglowka
    bmptojpg->Write( & bmphead, sizeof( BITMAPFILEHEADER ), & writesuccess );
    bmptojpg->Write( & bmpinfo, sizeof( bmpinfo ), & writesuccess );
   
   
    //petla wykonana bezblednie pomimo "+1" jednego więcej elementu do odczytu
    for( unsigned int bits = 0; bits < bmphead.bfSize - bmphead.bfOffBits + 1; bits++ )
    {
        char c = bmpbits[ bits ];
    }
   
    ULARGE_INTEGER ulnSize;
    LARGE_INTEGER lnOffset;
    lnOffset.QuadPart = 0;
   
    //sprawdzenie rozmiaru
    if( bmptojpg->Seek( lnOffset, STREAM_SEEK_END, & ulnSize ) == S_OK )
    {
        bmptojpg->Seek( lnOffset, STREAM_SEEK_SET, NULL );
    }
   
    //debugger pokazuje że dobry i ... zapisanie
    bmptojpg->Write( & bmpbits, bmphead.bfSize - bmphead.bfOffBits, & writesuccess ); //bfsize jest dobre (1600*900*4) a bfOffBits ma 54 czyli też dobrze
    //oraz błąd

ów błąd to coś takiego:
Unhandled exception at 0x774c15de in zapis_bmp.exe: 0xC0000005: Access violation reading location 0x00450000.


//EDIT:
PROBLEM ROZWIĄZANY
Był on w "&bmpbits" a dokładnie w "&" ;]
P-65870
« 1 »
  Strona 1 z 1