Я также столкнулся с той же проблемой, описанные выше методы не будут работать. Я случайно удалил файлы в следующем каталоге на нем.
Или
~ / Библиотека / Разработчик / Xcode / DerivedData /
Проверьте следующую библиотеку: Win32Utils. Можно создать простой сервис, который можно запустить/остановить/перезапустить на досуге. Я в настоящее время использую его для управления, экземпляр Полукровки для Windows разместил приложение для направляющих, и это работает безупречно.
Когда попытка Win32Utils один действительно потребность к studie документ и просматривает сеть прежде, чем найти некоторый простой рабочий пример. Это, кажется, работает сегодня 02.10.2008:
win32-сервис установки драгоценного камня
Обновление 20.11.2012: Согласно https://stackoverflow.com/users/1374569/paul register_bar.rb должен теперь быть
Service.create( :service_name => 'some_service',
:host => nil,
: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:\usr\ruby\bin\rubyw.exe -C c:\tmp\ bar.rb',
:load_order_group => 'Network',
:dependencies => ['W32Time','Schedule'],
:display_name => 'This is some service' )
<час> LOG_FILE = 'C:\\test.log'
begin
require "rubygems"
require 'win32/daemon'
include Win32
class DemoDaemon < Daemon
def service_main
while running?
sleep 10
File.open("c:\\test.log", "a"){ |f| f.puts "Service is running #{Time.now}" }
end
end
def service_stop
File.open("c:\\test.log", "a"){ |f| f.puts "***Service stopped #{Time.now}" }
exit!
end
end
DemoDaemon.mainloop
rescue Exception => err
File.open(LOG_FILE,'a+'){ |f| f.puts " ***Daemon failure #{Time.now} err=#{err} " }
raise
end
<час> , bar.rb является сервисом, но мы должны создать и зарегистрироваться сначала! это может быть сделано с кв/см, создают some_service
require "rubygems"
require "win32/service"
include Win32
# Create a new service
Service.create('some_service', nil,
: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:\usr\ruby\bin\rubyw.exe -C c:\tmp\ bar.rb',
:load_order_group => 'Network',
:dependencies => ['W32Time','Schedule'],
:display_name => 'This is some service'
)
Примечание, существует пространство между c:\tmp\ bar.rb в 'c:\usr\ruby\bin\rubyw.exe-C c:\tmp\ bar.rb'
Выполнение ruby register_bar.rb
, и теперь можно запустить сервис или с сервисной панели управления окон или
sc start some_service
и смотреть, c:test.log быть заполненным Сервисом выполняет четверг 02 октября 22:06:47, +0200 2008
require "rubygems"
require "win32/service"
include Win32
Service.delete("some_service")
Кредиты людям http://rubypane.blogspot.com/2008/05/windows-service-using-win32-service-and_29.html
Можно записать (или загрузка) сервис обертки. Обертка может назвать ruby.exe для выполнения программы. Тот же прием работает на Java, VB, и т.д.
Необходимо смочь выполнить это в IronRuby, так как у Вас была бы платформа.NET позади Вас.