シンプルな生活:C#での自動アーカイブサービス

嫌い もちろん、これは記事ではなく、小さな旅行メモですが、それでもなお。 アーカイブの99%が私のコンピューターに届き、その内容に到達するためにすぐに解凍されることがありました。 そして、ケシのサファリでそれが私のためにそれをするなら、ウィンドウでは、コンテキストメニューのアイテムを毎回クリックする必要があります。

ある時点で、私はそれに飽き飽きし 、自分ですべてを解凍する簡単なサービスを書きました。 便利だと思ったので、人々と共有することにしました。


それはどのように見えますか


システムにはサービスがあります 画像

サービスは、指定されたフォルダーを調べ、指定された拡張子(デフォルトではExtentionsパラメーターで設定されたrarzip )を持つファイルの作成を監視します。 ファイルが表示されるとすぐに、winrarが起動し(別のアーカイバを構成できます)、解凍されます。

仕組み


すべてがiniファイル形式のmonitors.cfg設定を通じて設定されます
[WinRar]
c:\Program Files\WinRAR\WinRAR.exe

[Folders]
c:\downloads
c:\distrib

設定はその場で編集でき、サービス自体が変更をロードします。リロードする必要はありません。

FileSystemWatcherを介してファイルシステムを監視します
  1. foreach (monitoringFolders.Whereのvar watcher( Directory .Exists).Select(folder => new FileSystemWatcher(folder){IncludeSubdirectories = true }))
  2. {
  3. watcher.Created + = WatcherHandler;
  4. _watchers.Add(ウォッチャー);
  5. }
*このソースコードは、 ソースコードハイライターで強調表示されました。


Winrarは、キーx -ad -o + -で始まり、ファイルを置き換えて同じ名前のフォルダーに解凍します。

インストール方法

参照資料

  1. ソースコード
  2. バイナリ
ご清聴ありがとうございました。

Source: https://habr.com/ru/post/J124809/


All Articles