C# Exception: The process cannot access the file
i'm getting exception: process cannot access file.
here's snippet code:
if (!monitor.tryenter(lockobject))
      return;
  try
  {
      watcher.enableraisingevents  = false;
      try
      {
          xmldocument xdoc  = new xmldocument();
          xdoc.load(filename);
          xdoc =   null;
      }
      catch (xmlexception xe)
      {
          using (streamwriter w  = file.appendtext(filename))
          {
              console.writeline(xe);
              w.writeline("</test>");
              w.writeline("</testwrapper>");
          }
      }
      system.threading.thread.sleep(2000);
      xpathdocument myxpathdoc =  new xpathdocument(new  streamreader(filename,  system.text.encoding.getencoding("windows-1256")));
      xslcompiledtransform myxsltrans   = new xslcompiledtransform();
      myxsltrans.load("d:/gs/xsl/test.xsl");
      xmltextwriter mywriter =  new xmltextwriter(destinationfile,  null);
      mywriter.formatting   = formatting.indented;
      mywriter.indentation   = 4;
      myxsltrans.transform(myxpathdoc,  null, mywriter);
      mywriter.close();
  }
  catch (exception e)
  {
      console.writeline("the process failed: {0}", e.tostring());
  }
  finally
  {
      monitor.exit(lockobject);
      watcher.enableraisingevents  = true;
      gc.collect();
      gc.waitforpendingfinalizers();
      gc.collect();
  }  the code working before added these lines. these testing if xml file without closing tags (which) add tags. after added following code started giving me exception.
try
  {
      xmldocument xdoc =  new xmldocument();
      xdoc.load(filename);
      xdoc = null;
  
  }
  catch (xmlexception xe)
  {
      using (streamwriter w   = file.appendtext(filename))
      {
          console.writeline(xe);
          w.writeline("</test>");
          w.writeline("</testwrapper>");
      }
  }   
what wrong here ?
here error i'm getting :
the process failed: system.io.ioexception: process cannot access file 'z :\tf_b1bba.xml' because being used process. @ system.io.__error.winioerror(int32 errorcode, string maybefullpath) @ system.io.filestream.init(string path, filemode mode, fileaccess access, nt32 rights, boolean userights, fileshare share, int32 buffersize, fileoptions o ptions, security_attributes secattrs, string msgpath, boolean bfromproxy, boolea n uselongpath) @ system.io.filestream..ctor(string path, filemode mode, fileaccess access, fileshare share, int32 buffersize) @ system.xml.xmldownloadmanager.getstream(uri uri, icredentials credentials, iwebproxy proxy, requestcachepolicy cachepolicy) @ system.xml.xmlurlresolver.getentity(uri absoluteuri, string role, type ofo bjecttoreturn) @ system.xml.xmltextreaderimpl.openurldelegate(object xmlresolver) @ system.threading.compressedstack.runtrycode(object userdata) @ system.runtime.compilerservices.runtimehelpers.executecodewithguaranteedcl eanup(trycode code, cleanupcode backoutcode, object userdata) @ system.threading.compressedstack.run(compressedstack compressedstack, cont extcallback callback, object state) @ system.xml.xmltextreaderimpl.openurl() @ system.xml.xmltextreaderimpl.read() . @ system.xml.xmlloader.load(xmldocument doc, xmlreader reader, boolean prese vewhitespace) @ system.xml.xmldocument.load(xmlreader reader) @ system.xml.xmldocument.load(string filename) @ gselinterface.program.convert(object source, filesystemeventargs f) in c:\ documents , settings\administrator\desktop\consoleapplication1\consoleapplicat ion1\program.cs:line 178
                                                                          Visual Studio Languages                                                             ,                                                                 .NET Framework                                                     >                                                                 Visual C#                                                                            
 
 
Comments
Post a Comment