After we copy a file, we can wait for long before pasting it to the destination.
I have googled but can't figure out where windows store the information of the source file.
I don't think it's the clipboard who is responsible for data exchange
The most common approach is to store a pointer to the file, usually the file's path. This is usually in the
CF_HDROP format. The program performing the paste operation needs to support this format, and can go and read the file that it's pointing to. This is what Windows Explorer does.
It's also possible to store an entire file's data in the clipboard, which is later pasted out of it. This is usually used for transient and small files, and is rather inefficient. Outlook is one such application, when you copy (or drag-drop) an email. This is not supported by nearly as many applications as the pointer approach is; for example, it's not possible to paste or drop these into most web browsers.