I am working with an in-house utility written a couple of years ago that uses the MEM driver. Recently, after upgrading to Vista64 the utility stopped working. As it was using an old version of GDAL, I decided to fetch the source from the vault and recompile/link against GDAL 1.5.2. I didn't change any code, but the new utility is failing with "ERROR 1: Missing required field (one of PIXELS, LINES, or DATAPOINTER)"
I'm assuming the problem is either incorrect source (old code), a 64 bit issue, or a GDAL version issue. Before I start modifying the code to allocate memory and include a DATAPOINTER I thought I'd ask if there were any changes between GDAL 1.4 (Maybe older) GDAL 1.5.2 that might cause this or if it is a well known Vista 64 problem? Here's the snippet of code that is fails on the poMemDriver->Create(.) line: GDALDriver* poMemDriver; CString format = "MEM"; CString filename = "MEM:::"; poMemDriver = GetGDALDriverManager()->GetDriverByName(format); if (poMemDriver == NULL) { cout << "\"MEM\" driver not supported." << endl; return false; } m_poUtmRgbDataset = poMemDriver->Create( filename, m_poSrcDataset->GetRasterXSize(), m_poSrcDataset->GetRasterYSize(), 3, // 3 Bands, Red, Green, and Blue GDT_Byte, NULL); _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/gdal-dev