Powiedziałbym, że eksplorator kopiuje do plików docelowych, więc nie ma możliwości bezpośredniego napisz pliki docelowe, to ma sens, ponieważ nazwy plików źródłowych mogą pochodzić tylko z aplikacji, która skopiowała dane do schowka, które nie muszą być eksploratorem OTOH nazwy plików docelowych mogą faktycznie różnić się, ponieważ pliki ta sama nazwa mogła już istnieć w folderze docelowym, a tylko odkrywca może tworzyć zmodyfikowane nazwy plików docelowych (np. dodając "Kopię" lub dołączając "(2)" do nazwy pliku podstawowego)
Będziesz musiał podać format schowka dla Eksploratora Windows o to, że może wkleić pliki. Model documentation of standard clipboard formats sugeruje, że jest on prawidłowy. W tym formacie schowka podajesz listę nazw plików źródłowych, ale pliki muszą oczywiście istnieć, więc musisz je zapisać na dysku.
Można jednak spróbować uczynić proces możliwie lekkim. Zwykle, gdy użytkownik kopiuje dane do schowka, jest tam umieszczany natychmiast, bez względu na to, czy zostanie użyty do wklejenia. W przypadku aplikacji oznacza to, że za każdym razem trzeba utworzyć pliki i umieścić listę nazw plików w schowku. Jednak system Windows obsługuje tryb o nazwie Delayed Rendering, który jest używany dokładnie w takich przypadkach. Zasadniczo w schowku umieszczasz tylko pusty fragment danych i tylko wtedy, gdy inna aplikacja próbuje uzyskać dostęp do danych, których zażąda aplikacja. Możesz więc zaimplementować to w taki sposób, że tylko wtedy, gdy użytkownik spróbuje wkleić pliki do eksploratora, zapiszesz je na dysku i zwróci listę nazw plików.
Interesujące rzeczy - dzięki za linki :-) –
Dziękuję również ode mnie. Naucz się czegoś nowego każdego dnia! –