トレイアプリケーションを開発したい。これがすべきことは、最近変更されたファイルを探し続ける必要があるということです。ファイルがキャッチされると、そのファイルのコピーがWebサーバーに送られます。したがって、ユーザーはWebサイトにログインでき、後でユーザーはそれらのバックアップファイルをダウンロードできるようになります。知りたいのは、トレイアプリケーションをどのように開発するかです。そのためにWindowsサービスを作成する必要がありますか?もしそうなら、私はサービスを制御するためのトレイアプリケーションが必要です(トレイアプリケーションはサービスを開始および停止する機能を備えている必要があります[バックアップサービス]、ファイル拡張子を選択するオプション)私はc#を使用しています。よろしくお願いします。
2 に答える
個人的には、のようにはしませんがWindows Service
、システムの背後に「存在する」単純なアプリケーションを選択します。クライアントからの保守と更新、アンインストールが簡単です(彼の要求に応じて)。要するに、単純なことのために、私はWindowsサービスには行きません。
いくつかのメニューを使用して、sys-trayコンポーネントを追加します。PhilippSumiのWPFNotifyIconを見ることができます。
メニュー項目の1つには、OSの起動時に実行する実行可能ファイルを登録する項目を含めることができます。あなたは一種のコードでそれを達成することができます:
Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
Assembly curAssembly = Assembly.GetExecutingAssembly();
key.SetValue(curAssembly.GetName().Name, curAssembly.Location);
何らかの理由で投稿からはっきりしない場合、アプリケーションは実際、かなりの本番環境で大量のデータを管理し、WindowsServiceにアクセスして、それに関連するすべてのものを管理します。
お役に立てれば。
かなり簡単に聞こえます。
基本的なWinFormsアプリを作成します。アプリのメインウィンドウは「最小化」で開始され、タスクバーに表示されないはずです。ただし、アプリをシステムトレイに表示できるようにする「NotifyIcon」コンポーネントが必要です。NotifyIconをダブルクリックすると、ウィンドウが復元され、タスクバーにウィンドウが表示され、ウィンドウが最小化されるか、再び閉じられるまでNotifyIconが非表示になります。
このアプリケーションは、独自にファイルウォッチングを実行することも、Windowsサービスで使用される構成を編集することもできます。どちらの方法でも機能します。いずれにせよ、ユーザーがチェックしたいディレクトリ内のファイルを監視するFileSystemWatcher(またはそれらのいくつか)を設定する必要があります。FileSystemWatcherはファイルの変更を検出すると、Webサーバーへのアップロードを実行することで処理できるイベントを発生させます。
デザイン全体と同じように。オンラインバックアップシステムを実装している場合(あなたがそうしているように見えます)、ユーザーが以前のバージョンを復元したい場合に備えて、ユーザーがファイルの過去の反復にアクセスできることを確認します。ウイルスチェックも必要です。ユーザーが最後に必要とするのは、ウイルスがファイルを破壊し、バックアップシステムが破壊されたファイルをバックアップすることです。