ThinkGeo.com    |     Documentation    |     Premium Support

Closing a map that contain GdalRasterLayer keeps the file locked

Hello



I am using GdalRasterLayer to display an .nsf file ("MyFile.nsf"),

When I close the map and then tryto delete the file  ("MyFile.nsf"), I get an exception that the file is been hold by another process.

This makes my think that the dispose of the GdalRasterLayer  within the map object is not working good.

(I check the same scenario with GdiPlusRasterLayer and a .gif file. In this case there was not problem. after the map had been closed the .gif file was not loked any more)



I tried to call GC.Collect() but it did not helped

I tried to close the map and all its layers manually as following , but it did not worked


foreach (Overlay o in _map.Overlays)
           {
               
               if(o is LayerOverlay)
               foreach (Layer l in (o as LayerOverlay).Layers)
               {
                   l.Close(); 
                   var finalizeMethod = l.GetType().GetMethod("Finalize", BindingFlags.Instance | BindingFlags.NonPublic);
                   finalizeMethod.Invoke(l, null);



               }
                    o.Close();
           }
           _map.Dispose();

I found an old  thread with similar question, but the answer there is not quite complete

thinkgeo.com/forums/MapSuite/tabid/143/aft/9600/Default.aspx



Can you please explain, how can I make sure that the file been used to create GdalRasterLayer is not been held after the map object is disposed.

Best Regards

Miri

Hi Miri, 
  
 I am sorry we cannot reproduce your issue because we don’t have a valid nsf file for test. 
  
 We tested dem file and adf file, but both of them haven’t met same issue.  
  
 Could you please send a valid test nsf file for help us reproduce the issue and let us know your detail environment setting? 
  
 Regards, 
  
 Don

Hello



You can get .nsf file from my DropBox (your site does not allow to upload this type of file)

dropbox.com/s/fhmsweifkbl70l1/Image2.nsf?dl=0



Thank you

Miri

Hi Miri, 
  
 I am sorry because some reason we cannot succeed download the file which you put in DropBox. 
  
 Does that a big file? If it’s a big file could you please contact your sales for get our FTP to upload that, if it’s small please directly upload in this post. 
  
 Regards, 
  
 Don

Hi

I tried to upload the file again by adding it to a zip, the size of the zip  is 800 KB



Thank you

Hi miri,



Thanks for your feedback, it’s proved to be a bug in MapSuiteFdoExtension, please download the fixed version at  ap.thinkgeo.com:5001/fbsharing/OjfzBXob and extract it to “C:\Windows\SysWOW64” to have a try.



Thanks,

Johnny

thank you, I will try that version

Ok, any problem or question please let me know. 
  
 Thanks, 
 Johnny