2012-01-05 2 views
4

Я пытаюсь сделать приложение WPF, чтобы я мог скопировать/вырезать и вставить информацию о файлах, и он скопировал/переместил их в специальную папку. Я знаю, что могу получить пути копирования файлов/разрезалиПрограммно вставлять файлы из буфера обмена: копировать или перемещать?

var files = Clipboard.GetFileDropList(); 

Но я хотел бы знать, нужно ли мне, чтобы скопировать или переместить файлы? Я читал что-то о прослушивании WM_COPY и WM_CUT. И я попытался подключить крючок Hwnd к моему окну, и он не сработал, ни WM_COPY, ни WM_CUT не вызвали. И я пробовал все.

Итак, каков наилучший способ определить, были ли файлы скопированы или разрезаны? И некоторые примеры кода или ссылки действительно помогли бы.

спасибо.

+0

Какое слово вы имеете в виду вместо «whther» точно? Предложение с этим словом не имеет смысла. –

+0

Я думаю, что приговор пропускает «знать» между «до» и «ли» и «я должен» после этого – Nuffin

+0

также пересмотреть свой вопрос, чтобы указать вопрос, который у вас есть или что вы действительно пытаетесь выполнить. спасибо – MethodMan

ответ

2

Работает от https://stackoverflow.com/a/2078081/939213 назад. и для копирования - заменить 5 на 2.

+0

Я не думаю, что это то, о чем он спрашивает. Он хочет захватить все копии и разрезы в буфер обмена из-за пределов его приложения. –

+0

Я так не думаю. (И посмотрите исходное название в редакциях.) – ispiro

+0

См. Комментарий, где он ответил мне, задавая ему этот самый вопрос. –

1

Вы не сможете установить крючок. Я знаю по опыту. Windows позволяет разрешать только левые и правые клики из .NET. Вам нужно будет создать dll win32, а затем вызвать его в коде .NET, чтобы захватить крючки, если вам нужно принять этот подход.

Или, как просто, как это приложение звучит, просто напишите его с помощью API в любом случае на C или C++.

Если это всего лишь небольшая функция в вашем приложении, а не само приложение, вам придется либо найти способ выполнить инъекцию, либо передать ее в свое приложение .NET, либо вам придется найти способ, который не работает Не используйте крючки.

Смежные вопросы