Работа с буфером обмена - C#
Формулировка задачи:
Добрый вечер.
Непонятные вещи творятся с Clipboard, Создаю файл, копирую его в Нное место (Рабочий стол допустим), копирую уже скопированный файл что б в Clipboard.GetFileDropList() появился путь уже к новому файлу, но он не появляется!
А если написать вот так
То достается старый путь, а потом новый!
Не пойму в чем проблема?
Пробовал и Sleep() и Sleep() в цикле, ничего не помогает
String sndc =@"c:\1.txt"; //Заношу "c:\1.txt" в StringCollection StringCollection filePath = new StringCollection(); filePath.Add(sndc); //Очищаю буфер и и заношу туда "c:\1.txt" Clipboard.Clear(); Clipboard.SetFileDropList(filePath); //Делаю клик (Рабочий стол), вставку КТРЛ+В и копирование КТРЛ+С InputSimulator InpSim = new InputSimulator(); InpSim.Mouse.LeftButtonClick(); InpSim.Keyboard.ModifiedKeyStroke(VirtualKeyCode.CONTROL, VirtualKeyCode.VK_V); InpSim.Keyboard.ModifiedKeyStroke(VirtualKeyCode.CONTROL, VirtualKeyCode.VK_C); //Здесь по идее должен достаться путь к новому файлу, но достается старый! filePath = Clipboard.GetFileDropList(); MessageBox.Show(filePath[0]);
MessageBox.Show(filePath[0]); filePath = Clipboard.GetFileDropList(); MessageBox.Show(filePath[0]);
Решение задачи: «Работа с буфером обмена»
textual
Листинг программы
filePath.Clear(); while (filePath.Count < 1) { filePath = Clipboard.GetFileDropList(); Thread.Sleep(100); } MessageBox.Show(filePath[0]);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д