私はこれをしばらく探していましたが、正しい検索用語を使用していないだけなのか、それとも答えを見つけるのが本当に難しいのかわかりません.
私がやろうとしているのは、バッチ ファイルからゲーム サーバー用の新しい Windows サービスを作成し、ゲーム サーバーのコマンド ラインで 2 つのコマンドを実行していくつかの処理を実行する別のバッチ ファイルを 30 分以上実行するタスクを作成することです。ファイル作業。
具体的には、私が運営を支援しているゲーム コミュニティ用に Bukkit を使用して Minecraft サーバーを実行しており、特に (サービスのように) 停止するように指示しない限り、常に稼働していることを確認したいと考えています。Bukkit はバッチ ファイルから直接実行され、独自のコマンド ライン機能が実行されます。
この種のものをサービスとして実行できると言われていますが、コマンドラインはビューや対話から隠されます。これは私のクエリの 2 番目の部分です。すべてのワールド ファイルとユーザーデータ ファイルをバックアップ ディレクトリにコピーし、7zip してディレクトリを削除する便利な小さな backup.bat ファイルがあります。唯一のことは、Minecraft は常にワールドのリージョン ファイルを開いて常に書き込みたいということです。つまり、そのまま実行するとマップが破損する可能性があります。これを補うために、サーバーで「save-off」コマンドを実行してファイルフックを一時的に無効にし、バックアップを実行し、バックアップが終了したらすぐに「save-on」を実行して、データを失うことなくゲームを続行できるようにする必要があります。 .
この 2 つ目の問題について知りたいのは、バッチ ファイルを介してゲーム サービスとやり取りすることは可能ですか、それともそのためのアプリケーションを作成する必要があるかということです。後者の場合、どのように正確にそれを行うのですか? 私は中程度の C++ の知識 (大学での 2 回目の OO-C++ コースまで) を持っており、どうしても必要な場合は別の言語を学ぶことができます。
簡単に言うと、2 つの質問があります。1. BAT ファイルを Windows サービスとして実行することは可能ですか、またその方法は? 2. BATファイルを介して上記のサービスとやり取りする方法、および可能でない場合は、どのような種類のアプリケーションを作成する必要がありますか(チュートリアルへのリダイレクトまたはチュートリアルの作成が機能します)。
事前にすべての助けに感謝します!