By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
449,220 Members | 1,473 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 449,220 IT Pros & Developers. It's quick & easy.

Help Needed. Removing a Folder Problem

P: n/a
When I push a button to trigger the code:

def runCCCC(self, event):
cmd_out = self.A_com()
if App.runF != "":
os.mkdir('C:\copiedFiles')

for item in App.runF:
App.beCopied = str(item)
shutil.copy(App.beCopied,
'C:\copiedFiles')
cmd = 'cccc C:\copiedFiles\*.*' + cmd_out
os.system(cmd)
shutil.rmtree('C:\copiedFiles')
else:
tkMessageBox.showinfo("Window Text",
"Please Firstly Browse and Insert A File")
I encountered this error:

Traceback (most recent call last):
File "C:\Python24\lib\lib-tk\Tkinter.py", line 1345,
in __call__
return self.func(*args)
File "C:\Python24\TkScripts\RCFolder.py", line 61,
in runCCCC
shutil.rmtree('C:\copiedFiles',
ignore_errors=False)# OLMADI!!!
File "C:\Python24\lib\shutil.py", line 168, in
rmtree
onerror(os.remove, fullname, sys.exc_info())
File "C:\Python24\lib\shutil.py", line 166, in
rmtree
os.remove(fullname)
OSError: [Errno 13] Permission denied:
'C:\\copiedFiles\\Analog.c'

1. What I want to do is to get the list of files I
inserted to a Listbox,
2. Creating a folder,(C:\copiedFiles)
3. Copying all of these files to this folder with the
same names,
4. Running CCCC for all of the files in this folder,
5. Than removing this folder.

Can anyone enlighten me on this Error I have got and
how to solve it?

Regards
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
Jul 20 '06 #1
Share this Question
Share on Google+
3 Replies


P: n/a
Note the error is permission denied. I would guess that
either the file has read-only flag set or perhaps the
'cccc' program is still running and has the file open
in a separate thread so you can't delete the directory
until it has completed. You should take a look at the
subprocess module and use something like (not tested):

retcode = call([r'cccc C:\copiedfiles\*.*', cmd_out])

This will wait for execution of cccc to complete prior
to returning.

-Larry Bates
Kilicaslan Fatih wrote:
When I push a button to trigger the code:

def runCCCC(self, event):
cmd_out = self.A_com()
if App.runF != "":
os.mkdir('C:\copiedFiles')

for item in App.runF:
App.beCopied = str(item)
shutil.copy(App.beCopied,
'C:\copiedFiles')
cmd = 'cccc C:\copiedFiles\*.*' + cmd_out
os.system(cmd)
shutil.rmtree('C:\copiedFiles')
else:
tkMessageBox.showinfo("Window Text",
"Please Firstly Browse and Insert A File")
I encountered this error:

Traceback (most recent call last):
File "C:\Python24\lib\lib-tk\Tkinter.py", line 1345,
in __call__
return self.func(*args)
File "C:\Python24\TkScripts\RCFolder.py", line 61,
in runCCCC
shutil.rmtree('C:\copiedFiles',
ignore_errors=False)# OLMADI!!!
File "C:\Python24\lib\shutil.py", line 168, in
rmtree
onerror(os.remove, fullname, sys.exc_info())
File "C:\Python24\lib\shutil.py", line 166, in
rmtree
os.remove(fullname)
OSError: [Errno 13] Permission denied:
'C:\\copiedFiles\\Analog.c'

1. What I want to do is to get the list of files I
inserted to a Listbox,
2. Creating a folder,(C:\copiedFiles)
3. Copying all of these files to this folder with the
same names,
4. Running CCCC for all of the files in this folder,
5. Than removing this folder.

Can anyone enlighten me on this Error I have got and
how to solve it?

Regards
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
Jul 20 '06 #2

P: n/a
Note the error is permission denied. I would guess that
either the file has read-only flag set or perhaps the
'cccc' program is still running and has the file open
in a separate thread so you can't delete the directory
until it has completed. You should take a look at the
subprocess module and use something like (not tested):

retcode = call([r'cccc C:\copiedfiles\*.*', cmd_out])

This will wait for execution of cccc to complete prior
to returning.

-Larry Bates
Kilicaslan Fatih wrote:
When I push a button to trigger the code:

def runCCCC(self, event):
cmd_out = self.A_com()
if App.runF != "":
os.mkdir('C:\copiedFiles')

for item in App.runF:
App.beCopied = str(item)
shutil.copy(App.beCopied,
'C:\copiedFiles')
cmd = 'cccc C:\copiedFiles\*.*' + cmd_out
os.system(cmd)
shutil.rmtree('C:\copiedFiles')
else:
tkMessageBox.showinfo("Window Text",
"Please Firstly Browse and Insert A File")
I encountered this error:

Traceback (most recent call last):
File "C:\Python24\lib\lib-tk\Tkinter.py", line 1345,
in __call__
return self.func(*args)
File "C:\Python24\TkScripts\RCFolder.py", line 61,
in runCCCC
shutil.rmtree('C:\copiedFiles',
ignore_errors=False)# OLMADI!!!
File "C:\Python24\lib\shutil.py", line 168, in
rmtree
onerror(os.remove, fullname, sys.exc_info())
File "C:\Python24\lib\shutil.py", line 166, in
rmtree
os.remove(fullname)
OSError: [Errno 13] Permission denied:
'C:\\copiedFiles\\Analog.c'

1. What I want to do is to get the list of files I
inserted to a Listbox,
2. Creating a folder,(C:\copiedFiles)
3. Copying all of these files to this folder with the
same names,
4. Running CCCC for all of the files in this folder,
5. Than removing this folder.

Can anyone enlighten me on this Error I have got and
how to solve it?

Regards
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
Jul 20 '06 #3

P: n/a
Kilicaslan Fatih wrote:
[...]
Dear All,

I changed the mode of the files before copying them.
So the problem is solved as follows:

SOLUTION:

def runCCCC(self, event):
cmd_out = self.A_com()
if App.runF != "":
os.mkdir('C:\copiedFiles')

for item in App.runF:
os.chmod(item, 0700)
shutil.copy(item, 'C:\copiedFiles')

cmd = 'cccc C:\copiedFiles\*.*' + cmd_out
os.system(cmd)
for root,dir,files in
os.walk("C:\copiedFiles"):

shutil.rmtree('C:\copiedFiles')
else:
tkMessageBox.showinfo("Window Text",
"Please Firstly Browse and Insert A File")
Just be careful with those string constants: you should really be using
either 'C:\\copiedFiles' or r'C:\copiedFiles'. No problems at the moment
because "\c" isn't a defined escape sequence, but if your directory name
had begun with a "t", for example, you'd have got a tab after the colon.

regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://holdenweb.blogspot.com
Recent Ramblings http://del.icio.us/steve.holden

Jul 20 '06 #4

This discussion thread is closed

Replies have been disabled for this discussion.