?
Solved

programming delete folder problem - lock by process

Posted on 2011-03-17
8
Medium Priority
?
681 Views
Last Modified: 2012-05-11
Hi Experts

i am trying to rename a folder from C#.
i get an error:
The process cannot access the file because it is being used by another process.  System.IO.IOException

i can't find out which process lock the folder.
i tried to use OpenedFilesView but it not indicate folder locking.

can someone help?

10x
0
Comment
Question by:gudidi
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
8 Comments
 
LVL 4

Expert Comment

by:LeDaouk
ID: 35156452
try a third party application to check wich process is locking the folder. like: unblocker
you can kill all process with it that are locking.
0
 

Author Comment

by:gudidi
ID: 35156511
is there a program that i can use just to know who holds the folder? without kill it?
0
 
LVL 10

Expert Comment

by:John Claes
ID: 35156540
@gudidi

How are you trying to rename the File?
0
What Is Blockchain Technology?

Blockchain is a technology that underpins the success of Bitcoin and other digital currencies, but it has uses far beyond finance. Learn how blockchain works and why it is proving disruptive to other areas of IT.

 

Author Comment

by:gudidi
ID: 35156554
hi

with this command:

Directory.Move(sSilviPath + "\\Components", sSilviPath + "\\Components_Old");

10x
0
 
LVL 82

Expert Comment

by:David Johnson, CD, MVP
ID: 35156750
not sure if the @ sign is needed File.Move(@"C:\MyFile.txt", @"C:\MyNewerFile.txt");
0
 

Author Comment

by:gudidi
ID: 35156769
While i stop the process with sleep command i can NOT change manually the folder name.
but i stop the processes i can cahnge it.
so, i would like to know how to find which process locks me?

10x
0
 
LVL 10

Expert Comment

by:John Claes
ID: 35156864
gudidi:

You found the process that is using one File or the directoryInfo  ! Your program is using it!

Are you somewhere creating a file or writing to a file in the Directory? => Close the stream!
Have you created a DirectoryInfo Object for that Folder? ==> Dispose of that object !
Have you created a FileInfo Object for a file in that folder? ==> Dispose of that object !
Are you running your program from that folder? ==> I'm sorry but you can't change the workingfolders name while running the program inside it

regards
poor beggar

0
 
LVL 23

Accepted Solution

by:
wdosanjos earned 2000 total points
ID: 35156870
To find the process, you can use the Sysinternals Handle utility:

     http://technet.microsoft.com/en-us/sysinternals/bb896655

It's a command line utility.  Just type the command below to find the process that's holding the folder or any file in that folder.

      handle myfoldername

The output will be something like this:

C:\>handle c:\temp

Handle v3.45
Copyright (C) 1997-2011 Mark Russinovich
Sysinternals - www.sysinternals.com

TextPad.exe        pid: 5376   type: File           360: C:\Temp
TextPad.exe        pid: 5376   type: File           3E0: C:\Temp

Open in new window

0

Featured Post

Want to be a Web Developer? Get Certified Today!

Enroll in the Certified Web Development Professional course package to learn HTML, Javascript, and PHP. Build a solid foundation to work toward your dream job!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
This Micro Tutorial will give you a basic overview of Windows DVD Burner through its features and interface. This will be demonstrated using Windows 7 operating system.
The viewer will learn how to successfully create a multiboot device using the SARDU utility on Windows 7. Start the SARDU utility: Change the image directory to wherever you store your ISOs, this will prevent you from having 2 copies of an ISO wit…
Suggested Courses

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question