Pythonをサービスに変換:スクリプトをWindowsサービスとして実行

私を含む多くの人々は、タスクの自動化やサードパーティ製ユーティリティのAPI作成にPythonを活用しています。しかし残念ながら、Pythonをサービスに変換するためだけにpywin32ライブラリを導入することは理想的とは言えません。特に、pywin32が何らかの理由で自分たちが書いていないプロジェクトと競合する場合にはなおさらです。

この問題を解決する優れたユーティリティはいくつかあります:

しかし、信頼性と迅速なスクリプト展開が求められる場合、これらは使いにくいことがあります。 これらの理由から、今日は3クリックでの変換と信頼性を目指すEXE to Serviceについてご紹介します。


PythonをWindowsサービスに変換する方法

ステップ1: EXE to Serviceを開く

EXE to Serviceをインストールすると、デスクトップにショートカットが表示されます。

グラフィカルインターフェイスは、サービスの作成を簡素化することのみを目的としています。グラフィカルインターフェイスのないWindows Serverを実行している場合、2つの選択肢があります:


ステップ2: 新しいサービスを作成する

EXE to Serviceには、すでに完成されたPython to Serviceの例が含まれています。

「Create from example」ボタンをクリックするだけです。

Pythonをサービスに変換


ステップ3: Pythonスクリプトへのパスを設定する

表示されるウィンドウで、正しいパスを指定する必要があります:

Python to Service設定


ステップ4: サービスを保存して開始する

「Create Service」をクリックしてWindowsサービスを作成します。

このコンピューターでサービスをすぐに開始したい場合は、「Start」をクリックします。

これにより、Pythonは以下のようになります:

今後の記事では、PythonでメモリやCPUリークが発生した際の重要な状況に対する通知やアラートの作成方法について説明します。


結論

Pythonは元々高水準言語として開発され、Windowsサービスでの実行を意図していませんでした。しかし、EXE to Serviceのようなツールはこの問題をきれいに解決します。.pyスクリプトをシェルでラップするだけで、システム起動時に実行され、ログアウト後も持続し、services.mscと統合されます。複雑な回避策は必要ありません。


EXE_Service.msiをダウンロードして、あらゆる.exeファイルを数秒でWindowsサービスに変換できます。