- PR -

サービスの再起動をプログラム操作したい。

投稿者投稿内容
ヨン
会議室デビュー日: 2006/07/23
投稿数: 5
投稿日時: 2006-07-23 16:47
System.ServiceProcess.ServiceController クラスを参照しています。

現在、開発言語VB.netでサービスを停止して、処理を行った後、サービスの再起動をかけたいのです。

サービスの停止、開始はServiceControllerStatus列挙体の値にあるのでできました。

しかし、サービスの再起動をかけるにはどうしたらよいでしょうか?

手動ではサービスの再起動って項目があるので、同じクラス内にサービスの再起動をかける列挙体の値があると思ったのですが見当たらないのです。

すみませんが、教えていただけないでしょうか?


[ メッセージ編集済み 編集者: ヨン 編集日時 2006-07-23 16:49 ]
やすのり
会議室デビュー日: 2006/07/23
投稿数: 5
投稿日時: 2006-07-23 17:52
コマンドでサービスの再起動ができたような気がします。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2006-07-23 18:01
ヨンさん、こんばんは。

再起動というのは、Stop した後で Start する事ではないんですか?
ヨン
会議室デビュー日: 2006/07/23
投稿数: 5
投稿日時: 2006-07-23 18:43
早速のご返答ありがとうございます。

基本的なことを確認させてください。

再起動は停止させて開始する事ですか?
でしたら、停止、開始で問題ないですよね?

あるデータベースを持つ検索マシーンがありまして、
なんか、停止してからデータ更新させても開始ではなく再起動させないと、停止したところまでしかデータが反映しないんじゃないっていわれました。
その場はそうなんだぁ。って思ったんですが、本当かな。。

現在は手動でやっている操作をプログラム化してやろう考えてます。
自分で試したわけではないので、分かりませんが、
サービスの再起動の動作を見ていると、確かに停止して開始させているだけのような気がします。

きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2006-07-23 19:01
ヨンさん、こんばんは。

引用:

なんか、停止してからデータ更新させても開始ではなく再起動させないと、停止したところまでしかデータが反映しないんじゃないっていわれました。


済みません、意味が判りませんでした。
再起動させたいサービスとは、データベースの事ですか?
いや、停止させたらデータは更新できませんから、違いますね…。

データベースを使用する何某かのサービスを開発している、という事なんでしょうか?
そのサービスを停止している間にデータを更新し、再起動するというのならまあ、話はわかります。
だけど「停止したところまでしかデータが反映しない」、というのはどういう意味なんでしょうか。

それと、停止しているサービスを再起動するって…?
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-07-23 20:57
引用:

ヨンさんの書き込み (2006-07-23 18:43) より:

あるデータベースを持つ検索マシーンがありまして、
なんか、停止してからデータ更新させても開始ではなく再起動させないと、停止したところまでしかデータが反映しないんじゃないっていわれました。
その場はそうなんだぁ。って思ったんですが、本当かな。。


 停止していないと更新を検知できないって、なんじゃそりゃ?
 または、正規ではない方法で更新しているのかな?

 私は、そっちの方が気になりました。

 「停止」しているサービスに「再起動」という項目はないっすよ?
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2006-07-23 21:15
引用:

ヨンさんの書き込み (2006-07-23 18:43) より:

基本的なことを確認させてください。

再起動は停止させて開始する事ですか?
でしたら、停止、開始で問題ないですよね?



普通はそうですがね。

引用:

あるデータベースを持つ検索マシーンがありまして、
なんか、停止してからデータ更新させても開始ではなく再起動させないと、停止したところまでしかデータが反映しないんじゃないっていわれました。
その場はそうなんだぁ。って思ったんですが、本当かな。。



独自に作成したものということであれば、その作成元しかわからないでしょう。

とりあえず、標準のものでは IISAdmin service のように複数の service を host しているような service で起動する順番を意識しないと metabase の内容が反映しないというくらいしか私は知りませんがね。
ヨン
会議室デビュー日: 2006/07/23
投稿数: 5
投稿日時: 2006-07-23 21:18
えーと すみません。
データベースを一度停止させて、データをインポートするそうです。
停止させないとインポートはできないそうです。

開始してからでないと再起動の項目ないですよね。

サービスの再起動しないと反映できないっていわれました。
開始してそれからサービスの再起動って事をするんだと思います。

でも 停止している状態から、開始するなら、
開始してから再度再起動かけるのと手間がかかるだけで、一緒のような気がします。

いわれたことを整理します。
停止 データをインポート 開始 
→停止したところまでしか反映しない。→インポートしたのが反映しない。

停止 データをインポート 開始 再起動
インポートしたデータ反映する。

って事をいわれました。

だから再起動操作を知りたかったんですが、、、
なんか整理したら変かなと思ってきました。

再起動は停止して開始するだけですよね。開始の間に読み込み直すのでしょうから、
停止 データをインポート 開始 
停止 データをインポート 開始 再起動
同ですよね。。???? 

再度確認してみます。


[ メッセージ編集済み 編集者: ヨン 編集日時 2006-07-23 23:25 ]

スキルアップ/キャリアアップ(JOB@IT)