[Gdal-dev] Strange error during Driver.Create(String filename,...)

Daniele Romagnoli dany.geotools at gmail.com
Tue Jan 9 11:13:46 EST 2007

Hi list,
In the context of the GDAL ImageIO integration proposal I'm actually
building the framework which will add writing capabilities to the project.

Today I'm fighting against a strange error with Driver.Create (...) method.

>From a stand-alone testCase (I'm using Junit) the following code works
final File outputFile = new File
final BufferedImage im = ImageIO.read(new
Driver driver = gdal.GetDriverByName("JP2ECW");
final int width = im.getWidth();
final int height = im.getHeight();
Dataset ds = driver.Create (outFile.getAbsolutePath(), width, height, 1,

... some code ...


However, using the SAME code within the body of the "write" method of the
MyJP2KImageWriter class (which extends ImageWriter), it does not work.
(Such a method will be called during an ImageWrite operation performed using
JAI-ImageIO toolkit).

I noticed that the code only works if I chose a filename with a path
containing no subdirectory... As an instance, using "D:\\sample.jp2" instead
of "D:\\DatiPlugin\\samples\\sample.jp2".
(Out of curiosity, I tried using a BMP driver and the problem still exist)

After a deep debug, I finally noticed that the problem could be attributable
to the GDAL methods:

FILE *VSIFOpenL( const char * pszFilename, const char * pszAccess ) [from

which calls

VSIVirtualHandle *VSIWin32FilesystemHandler::Open( const char *pszFilename,
const char *pszAccess ) [from cpl_vsil_win32.cpp]

containing the code

hFile = CreateFile( pszFilename, dwDesiredAccess, FILE_SHARE_READ |
FILE_SHARE_WRITE, NULL, dwCreationDisposition,  dwFlagsAndAttributes, NULL

which makes hFile equal to INVALID_HANDLE_VALUE (By this reason, the Open
method returns NULL).

Could someone provide me some suggestions?

Thanks a lot.

Best Regards,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/gdal-dev/attachments/20070109/803746d8/attachment.html

More information about the Gdal-dev mailing list