remove file access denied(remove broke)
Josphe Brigmo
JospheBrigmo at gmail.com
Fri Sep 14 16:55:21 UTC 2018
On Friday, 14 September 2018 at 15:21:21 UTC, H. S. Teoh wrote:
> On Fri, Sep 14, 2018 at 02:36:34PM +0000, Josphe Brigmo via
> Digitalmars-d-learn wrote: [...]
>> It happens on a bunch. I do get errors or overlong file names
>> but this doesn't seem to be the case.
>>
>> The fact is, that simply using execute shell using the same
>> file name works. So this is a D problem.
>>
>> It happens quite often and every time I can delete the files
>> in file explorer.
>
> It would really help if you post a stripped-down version of the
> code that exhibits the same problem. Otherwise we're just
> guessing what the real problem is.
>
>
> T
It woudln't help. I'm dealing with over a million files and you'd
need those files too.
But basically all I have done is created a new rename function:
void removeFile(string fn)
{
if (!isDir(fn))
{
// remove(fn)
setAttributes(fn, 0x80);
auto ls = executeShell(`del /F /Q "`~fn~`"`);
if (ls.status != 0) throw new Exception("Cannot delete file
`"~fn~"`!");
}
}
And this works and functions appropriately.
The other code is basically just recursively going through the
directory as standard practice using dirEntries and deleting
certain files(it's a little more complex since there is some
logic on the file name, but nothing touches the file except
delete).
More information about the Digitalmars-d-learn
mailing list