私はC#アプリケーションを実行しています。Apache Tomcatが実行されているかどうかを知る必要があります。Windowsマシンでtomcatが実行されているかどうかを知る方法とそのポート番号?
Tomcatがインストールされる方法は複数あります。特定のインストールでは、サービスリストにサービスが表示されますが、サービスリストには表示されません。
誰かが私を助けることができますか?
私はC#アプリケーションを実行しています。Apache Tomcatが実行されているかどうかを知る必要があります。Windowsマシンでtomcatが実行されているかどうかを知る方法とそのポート番号?
Tomcatがインストールされる方法は複数あります。特定のインストールでは、サービスリストにサービスが表示されますが、サービスリストには表示されません。
誰かが私を助けることができますか?
System.DiagnosticsのProcess.GetProcessesのようなものを使用できます。
Process[] processlist = Process.GetProcesses();
このリスト内の関連するプロセス名を確認してください。それ以外の場合は、特定のプロセス名(Tomcatなど)を見つけるためにいくつかの回答of the related linksを見てください。
ポートを見つけるために、これはプログラム的に少し難しいかもしれません。 Tomcatの設定ファイル$ CATALINA_HOME/conf/server.xmlを解析して、使用中のポートを見つける必要があるかもしれません。あなたは何かのようなものを探しているでしょう。
<Connector port="{portNumber is here}"...
設定ファイルについては、Tomcatのドキュメントを参照してください。
プロセス名は "Tomcat"ではなく "Java"であり、属性 "MainWindowName"は "Tomcat"です。 Tomcatが実行されているかどうかを知るためにサービスとプロセスを取得し、設定ファイルからポートを読み込むという組み合わせを使用しています。しかし、私は設定を読まずにそれをやりたかったのです。 – Kangkan
設定ファイルをスキャンする代わりに、PortReporter - http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=9964を使用することができます。 –