これはサービスとして実行しようとしているコードです。Win32Utilsを使ってデーモンを作成できないruby gem
require 'rubygems'
require 'win32/daemon'
require 'win32/service'
include Win32
class Daemon
def service_main
while running?
sleep 3
File.open("c:\\test.log", "a"){ |f| f.puts "service is running" }
end
end
def service_stop
exit!
end
end
Daemon.mainloop
これは私がサービスは、サービスが、私はサービスからサービスを開始しようと登録された後、「RubyGemsのは」
include Win32
SERVICE_NAME = 'ruby_sample1'
# Create a new service
ser = Service.create({
:service_name => SERVICE_NAME,
:service_type => Service::WIN32_OWN_PROCESS,
:description => 'A custom service I wrote just for fun',
:start_type => Service::AUTO_START,
:error_control => Service::ERROR_NORMAL,
:binary_path_name => 'c:\\Ruby186\\bin\\ruby.exe -C c:\\temp\\test.rb',
:load_order_group => 'Network',
:dependencies => ['W32Time','Schedule'],
:display_name => SERVICE_NAME
})
「をwin32の/サービス」を必要と 必要 登録するために使用するコードです。 msc。 I「エラー1053:そのサービスは指定時間内に開始要求または制御要求に応答しませんでした」と言うエラーが出る
はい、これは私のために働いた+1です。 0.7.2で修正されたようですが、待てない場合は 'git clone'を実行して、結果のディレクトリに 'gem build win32-service'を実行してください。 gemspec 'then gem install --local win32-service-0.7.2.gem' RubyInstallerビルドとの間に常にエラーが発生するので、mswin32バージョンをアンインストールしてください。 –
dankingsbury