Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What type of file deletes itself as soon as the handle is closed?

Let's say I have a Windows application that creates a file and writes data to it. The application has opened the file exclusively so no other processes can read the data in the file.

If the process is killed, the file is deleted.

If the process is suspended and the handle to the file is closed (using Process Explorer), the file is deleted.

It must be a feature of Windows that causes this, as no more code in the process is run because it's killed or suspended.

How can this be? What type of file exhibits this behaviour?

like image 400
David Templeton Avatar asked Dec 30 '22 12:12

David Templeton


2 Answers

It's ok, I just found out.

It's FILE_FLAG_DELETE_ON_CLOSE in dwFlagsAndAttributes on the CreateFile function.

Should have looked harder before asking the question :)

like image 88
David Templeton Avatar answered Jan 01 '23 02:01

David Templeton


A "delete on close" filehandle.

like image 42
JSBձոգչ Avatar answered Jan 01 '23 01:01

JSBձոգչ