Я хочу отслеживать файлы, открытые пользователем, и выбирать их по одному конкретному расширению. Если в открывшемся файле есть это расширение, я хочу назначить его путь к переменной для дальнейшей обработки. Примеры приложений очень требовательны к процессору. Есть ли простой и эффективный способ сделать это?Отслеживание файлов определенного расширения
ответ
Системный мониторинг файлов -> открытые события (включая сетевые диски, флэш-накопители и т. Д.) Потребует от вас записи драйвера фильтра FS.
Поскольку у вас есть доступ к машине, и вам определенно нужен доступ к системе, вы можете просто написать простое приложение, которое будет связано с расширениями Powerpoint, выполнить копию, а затем открыть Powerpoint, используя путь к файлу в качестве командной строки аргумент. Он будет выглядеть примерно так:
using System;
using System.Windows;
using System.Diagnostics;
using System.IO;
namespace WpfApplication1
{
internal class MainWindow : Window
{
public MainWindow()
{ }
[STAThread()]
static void Main(string[] args)
{
if (args.Length == 0)
{
// [ show error or print usage ]
return;
}
if (!File.Exists(args[0]))
{
// [ show error or print usage ]
return;
}
// Perform the copy
FileInfo target = new FileInfo(args[0]);
string destinationFilename = string.Format("X:\\ExistingFolder\\{0}", target.Name);
File.Copy(target.FullName, destinationFilename);
// You may need to place the filename in quotes if it contains spaces
string targetPath = string.Format("\"{0}\"", target.FullName);
string powerpointPath = "[FullPathToPowerpointExecutable]";
Process powerpointInstance = Process.Start(powerpointPath, targetPath);
// This solution is using a wpf windows app to avoid
// the flash of the console window. However if you did
// wish to display an accumulated list then you may choose
// to uncomment the following block to display your UI.
/*
Application app = new Application();
app.MainWindow = new MainWindow();
app.MainWindow.ShowDialog();
app.Shutdown(0);
*/
Environment.Exit(0);
}
}
}
Надеюсь, что это поможет.
, если я изменил функцию WPF по умолчанию, имя которой является «общедоступным MainWindow()», в «static void Main (строки [] args)», то это дает ошибку. Если я изменил его на что-то еще, функция не запустится. – m1clee
Создайте новое приложение WPF и удалите сгенерированные файлы (App.config, App.xaml, App.xaml.cs, MainWindow.xaml и MainWindow.xaml.cs). Затем добавьте новый класс под названием «MainWindow» и очистите все сгенерированный код. Вставьте код выше и он скомпилируется. Измените пути и начните тестирование. (Я тестировал его до создания сообщения) – Jeff
@ m1clee - Я рад, что сработал для вас. Удачи. – Jeff
- 1. Applescript выбора файлов определенного расширения
- 2. Удаление файлов без определенного расширения
- 3. Поиск файлов без определенного расширения
- 4. Получение всех файлов из определенного каталога, за исключением определенного расширения
- 5. Отслеживание файлов
- 6. Игнорировать отслеживание файлов без файлов в Git
- 7. Отслеживание конверсий после определенного времени
- 8. Отслеживание файлов развернутого приложения
- 9. Отслеживание музыки/mp3-файлов?
- 10. Отслеживание загрузки файлов
- 11. Расширения файлов
- 12. Использование Directory.GetFiles() для выбора всех файлов, но определенного расширения
- 13. список файлов определенного расширения в папке с использованием JSP
- 14. Возможно ли поиск файлов определенного расширения на всем устройстве?
- 15. Отслеживание событий отслеживания для расширения Chrome
- 16. Отслеживание файлов и изменений файлов в excel
- 17. Notepad ++ Выполнение при сохранении определенного расширения
- 18. Asterisk ami удаление определенного расширения
- 19. unzip только для определенного расширения
- 20. Невозможно удалить файлы определенного расширения
- 21. Установка Vim для определенного расширения
- 22. Отслеживание загрузки файлов в WordPress
- 23. Регистрация расширения оболочки для определенного типа файла
- 24. Отслеживание перехода джитта, начиная с определенного фиксации
- 25. Отслеживание событий для определенного поля формы
- 26. Отслеживание определенного видео с помощью QCAR
- 27. Изменить отслеживание определенного столбца в SQL Server
- 28. отслеживание определенного изменения электронной почты в ABRecordRef
- 29. Использования FileDialog выбрать файл определенного расширения
- 30. SAS Macro Расширения и расширения файлов
http://stackoverflow.com/questions/14779616/filesystemwatcher-used-to-watch-for-folder-file-open/14779729#14779729 прочитайте это –
Я видел это. Он ищет определенную папку, но я хочу посмотреть всю систему, особенно флеш-накопители. А также последний ответ предлагает C++. Я хочу использовать C#. – m1clee
Возможно, вместо того, чтобы контролировать всю систему, вы можете связать файлы .ppt/.pptx с вашим приложением. Это звучит намного проще. –