win32-service 0.8.10 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/{CHANGES → CHANGELOG.md} +347 -336
- data/Gemfile +5 -0
- data/MANIFEST +24 -24
- data/README.md +75 -0
- data/Rakefile +83 -98
- data/VERSION +1 -0
- data/appveyor.yml +48 -48
- data/doc/daemon.txt +157 -157
- data/doc/service.txt +363 -363
- data/examples/demo_daemon.rb +96 -96
- data/examples/demo_daemon_ctl.rb +123 -123
- data/examples/demo_services.rb +30 -30
- data/lib/win32-daemon.rb +1 -1
- data/lib/win32-service.rb +1 -1
- data/lib/win32/daemon.rb +361 -361
- data/lib/win32/service.rb +1575 -1577
- data/lib/win32/windows/constants.rb +143 -143
- data/lib/win32/windows/functions.rb +75 -75
- data/lib/win32/windows/structs.rb +135 -135
- data/lib/win32/windows/version.rb +6 -0
- data/test/test_win32_daemon.rb +58 -58
- data/test/test_win32_service.rb +468 -468
- data/test/test_win32_service_configure.rb +110 -110
- data/test/test_win32_service_create.rb +153 -153
- data/test/test_win32_service_info.rb +189 -189
- data/test/test_win32_service_status.rb +110 -110
- data/win32-service.gemspec +41 -39
- metadata +19 -46
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/README +0 -71
- data/certs/djberg96_pub.pem +0 -21
- metadata.gz.sig +0 -0
data/win32-service.gemspec
CHANGED
@@ -1,39 +1,41 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
spec.
|
8
|
-
spec.
|
9
|
-
spec.
|
10
|
-
spec.
|
11
|
-
spec.
|
12
|
-
spec.
|
13
|
-
|
14
|
-
spec.
|
15
|
-
|
16
|
-
spec.
|
17
|
-
|
18
|
-
|
19
|
-
'
|
20
|
-
'
|
21
|
-
'
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
spec.
|
28
|
-
|
29
|
-
spec.add_development_dependency('
|
30
|
-
|
31
|
-
spec.
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
1
|
+
require 'rubygems'
|
2
|
+
lib = File.expand_path("../lib", __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require "win32/windows/version"
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'win32-service'
|
8
|
+
spec.version = Win32::Service::VERSION
|
9
|
+
spec.authors = ['Daniel J. Berger', 'Park Heesob']
|
10
|
+
spec.license = 'Artistic 2.0'
|
11
|
+
spec.email = 'djberg96@gmail.com'
|
12
|
+
spec.homepage = 'http://github.com/chef/win32-service'
|
13
|
+
spec.summary = 'An interface for MS Windows services'
|
14
|
+
spec.test_files = Dir['test/test*.rb']
|
15
|
+
|
16
|
+
spec.files = Dir['**/*'].reject{ |f| f.include?('git') }
|
17
|
+
|
18
|
+
spec.extra_rdoc_files = [
|
19
|
+
'CHANGELOG.md',
|
20
|
+
'README.md',
|
21
|
+
'MANIFEST',
|
22
|
+
'doc/service.txt',
|
23
|
+
'doc/daemon.txt'
|
24
|
+
]
|
25
|
+
|
26
|
+
spec.add_dependency('ffi')
|
27
|
+
spec.add_dependency('ffi-win32-extensions')
|
28
|
+
|
29
|
+
spec.add_development_dependency('test-unit')
|
30
|
+
spec.add_development_dependency('rake')
|
31
|
+
spec.add_development_dependency('win32-security')
|
32
|
+
|
33
|
+
spec.description = <<-EOF
|
34
|
+
The win32-service library provides a Ruby interface to services on
|
35
|
+
MS Windows. You can create new services, or control, configure and
|
36
|
+
inspect existing services.
|
37
|
+
|
38
|
+
In addition, you can create a pure Ruby service by using the Daemon
|
39
|
+
class that is included as part of the library.
|
40
|
+
EOF
|
41
|
+
end
|
metadata
CHANGED
@@ -1,37 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: win32-service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel J. Berger
|
8
8
|
- Park Heesob
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
|
-
cert_chain:
|
12
|
-
-
|
13
|
-
-----BEGIN CERTIFICATE-----
|
14
|
-
MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MREwDwYDVQQDDAhkamJl
|
15
|
-
cmc5NjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
|
16
|
-
MB4XDTE2MTIxMjAwMTQ1M1oXDTE3MTIxMjAwMTQ1M1owPzERMA8GA1UEAwwIZGpi
|
17
|
-
ZXJnOTYxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
|
18
|
-
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVtTm/wETO8yKVKRPBO
|
19
|
-
VgPRvE94iEfKryOb/tQrmhGhchG2ALqdw/r54cGJvLaXeItrYJ6N8pSE/FSnN5jM
|
20
|
-
xugUhHBprPl+AsQ4E+IBy0dKwyU8XjFoVYzWvT1wnqwQdSazdgFCfQqb51QCgUIT
|
21
|
-
PGGakKlyzCb3Mbq30is8+QlRrqXt/JbpkUZbQwUqCdAulMT4oyPBk/L+48pbVX0s
|
22
|
-
4yj7YaVAqfGByAMTPXEmUS388lX+0xq8+GGir2Fuh0TpNW0ggr9BxprwqL0Mg4Oo
|
23
|
-
YhM5L1y8Plolo8mOTN3+K8I3afZ0lD0BtwniVb6g+Ut/4aBjKy2+GyFwwNOu0gSj
|
24
|
-
desCAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFJfg
|
25
|
-
HmQ0uDU3Z9A9hB1lQMjr5VZSMB0GA1UdEQQWMBSBEmRqYmVyZzk2QGdtYWlsLmNv
|
26
|
-
bTAdBgNVHRIEFjAUgRJkamJlcmc5NkBnbWFpbC5jb20wDQYJKoZIhvcNAQEFBQAD
|
27
|
-
ggEBACjRCHRP944MHIQJNCglZbDnZowybV2HxmG1uhnvRwrOjBA7CXemc+QSAL7K
|
28
|
-
7eXC4FdojVEJrnU7ZxuCmfQU+fvkEQKOnah1osG1874aPiDlwtjHclpeqcDgTUI7
|
29
|
-
A7CF+OXK8x7ksFx205ruhPHKaPYtwVG/W/J+y7Wx8yl9rvwUgRBL5cVzTBiEz+AB
|
30
|
-
NRT7yoHXXfFXjuQWN1eHunSbNds2ZTGQd64yBCujb17Xdl+F9tu4klkTga3gxP3P
|
31
|
-
y3zoX1VttxnIZBojRM/s2A7c2aubMH2SVbXMR3ccVkB9XbYKl1OvCe7q85xEHit2
|
32
|
-
Kbpico5nnyHqf7YSPmvZe8bCU94=
|
33
|
-
-----END CERTIFICATE-----
|
34
|
-
date: 2016-12-12 00:00:00.000000000 Z
|
11
|
+
cert_chain: []
|
12
|
+
date: 2018-06-15 00:00:00.000000000 Z
|
35
13
|
dependencies:
|
36
14
|
- !ruby/object:Gem::Dependency
|
37
15
|
name: ffi
|
@@ -114,37 +92,32 @@ email: djberg96@gmail.com
|
|
114
92
|
executables: []
|
115
93
|
extensions: []
|
116
94
|
extra_rdoc_files:
|
117
|
-
-
|
118
|
-
- README
|
95
|
+
- CHANGELOG.md
|
96
|
+
- README.md
|
119
97
|
- MANIFEST
|
120
98
|
- doc/service.txt
|
121
99
|
- doc/daemon.txt
|
122
100
|
files:
|
101
|
+
- CHANGELOG.md
|
102
|
+
- Gemfile
|
103
|
+
- MANIFEST
|
104
|
+
- README.md
|
105
|
+
- Rakefile
|
106
|
+
- VERSION
|
123
107
|
- appveyor.yml
|
124
|
-
- certs
|
125
|
-
- certs/djberg96_pub.pem
|
126
|
-
- CHANGES
|
127
|
-
- doc
|
128
108
|
- doc/daemon.txt
|
129
109
|
- doc/service.txt
|
130
|
-
- examples
|
131
110
|
- examples/demo_daemon.rb
|
132
111
|
- examples/demo_daemon_ctl.rb
|
133
112
|
- examples/demo_services.rb
|
134
|
-
- lib
|
135
|
-
- lib/win32
|
113
|
+
- lib/win32-daemon.rb
|
114
|
+
- lib/win32-service.rb
|
136
115
|
- lib/win32/daemon.rb
|
137
116
|
- lib/win32/service.rb
|
138
|
-
- lib/win32/windows
|
139
117
|
- lib/win32/windows/constants.rb
|
140
118
|
- lib/win32/windows/functions.rb
|
141
119
|
- lib/win32/windows/structs.rb
|
142
|
-
- lib/win32
|
143
|
-
- lib/win32-service.rb
|
144
|
-
- MANIFEST
|
145
|
-
- Rakefile
|
146
|
-
- README
|
147
|
-
- test
|
120
|
+
- lib/win32/windows/version.rb
|
148
121
|
- test/test_win32_daemon.rb
|
149
122
|
- test/test_win32_service.rb
|
150
123
|
- test/test_win32_service_configure.rb
|
@@ -152,7 +125,7 @@ files:
|
|
152
125
|
- test/test_win32_service_info.rb
|
153
126
|
- test/test_win32_service_status.rb
|
154
127
|
- win32-service.gemspec
|
155
|
-
homepage: http://github.com/
|
128
|
+
homepage: http://github.com/chef/win32-service
|
156
129
|
licenses:
|
157
130
|
- Artistic 2.0
|
158
131
|
metadata: {}
|
@@ -172,14 +145,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
172
145
|
version: '0'
|
173
146
|
requirements: []
|
174
147
|
rubyforge_project:
|
175
|
-
rubygems_version: 2.6
|
148
|
+
rubygems_version: 2.7.6
|
176
149
|
signing_key:
|
177
150
|
specification_version: 4
|
178
151
|
summary: An interface for MS Windows services
|
179
152
|
test_files:
|
180
|
-
- test/test_win32_daemon.rb
|
181
153
|
- test/test_win32_service.rb
|
182
|
-
- test/
|
183
|
-
- test/test_win32_service_create.rb
|
154
|
+
- test/test_win32_daemon.rb
|
184
155
|
- test/test_win32_service_info.rb
|
156
|
+
- test/test_win32_service_configure.rb
|
185
157
|
- test/test_win32_service_status.rb
|
158
|
+
- test/test_win32_service_create.rb
|
checksums.yaml.gz.sig
DELETED
Binary file
|
data.tar.gz.sig
DELETED
Binary file
|
data/README
DELETED
@@ -1,71 +0,0 @@
|
|
1
|
-
== Description
|
2
|
-
The win32-service library allows you to control or create MS Windows services.
|
3
|
-
|
4
|
-
== Installation
|
5
|
-
gem install win32-service
|
6
|
-
|
7
|
-
== Synopsis
|
8
|
-
require 'win32/service'
|
9
|
-
|
10
|
-
# Iterate over the available services
|
11
|
-
Win32::Service.services do |service|
|
12
|
-
p service
|
13
|
-
end
|
14
|
-
|
15
|
-
== More Documentation
|
16
|
-
Please see the documentation in the 'doc' directory, or the gem documentation
|
17
|
-
that was installed when you installed this library as a gem.
|
18
|
-
|
19
|
-
== Known Issues
|
20
|
-
=== Problem:
|
21
|
-
Service.delete causes "Unable to delete: The specified service has been
|
22
|
-
marked for deletion."
|
23
|
-
|
24
|
-
=== Troubleshooting:
|
25
|
-
This can be caused by one of two things. Either you attempted to delete a
|
26
|
-
running service without stopping it first, or you have the Services
|
27
|
-
Administrative Tool (GUI) open. In the former case, the solution is to first
|
28
|
-
stop the service if it's running. In the latter, close the Services GUI
|
29
|
-
admin tool before deleting.
|
30
|
-
|
31
|
-
=== Problem:
|
32
|
-
Service.start causes, "The service did not respond to the start or control
|
33
|
-
request in a timely fashion."
|
34
|
-
|
35
|
-
=== Troubleshooting:
|
36
|
-
The best way to debug your services is to wrap your entire Daemon subclass
|
37
|
-
in a begin/end block and send error messages to a file. That should give a
|
38
|
-
good clue as to the nature of the problem. The most probable culprits are:
|
39
|
-
|
40
|
-
* You forgot to require 'win32/daemon' in your Daemon code.
|
41
|
-
|
42
|
-
* You've tried to require a library that's not in your $LOAD_PATH. Make sure
|
43
|
-
that your require statements are inside the begin/rescue block so that you can
|
44
|
-
easily find those mistakes.
|
45
|
-
|
46
|
-
* Your have a bad binary path name. Be sure to use an absolute path name for
|
47
|
-
the binary path name, including the full path to the Ruby interpreter, e.g.
|
48
|
-
'c:\ruby\bin\ruby' instead of just 'ruby'.
|
49
|
-
|
50
|
-
* You've got a syntax error in your code somewhere.
|
51
|
-
|
52
|
-
== See Also
|
53
|
-
ruby-wmi
|
54
|
-
|
55
|
-
== Future Plans
|
56
|
-
Add service_session_change hook
|
57
|
-
|
58
|
-
== Copyright
|
59
|
-
(C) 2003-2016, Daniel J. Berger, All Rights Reserved
|
60
|
-
|
61
|
-
== License
|
62
|
-
Artistic 2.0
|
63
|
-
|
64
|
-
== Warranty
|
65
|
-
This package is provided "as is" and without any express or
|
66
|
-
implied warranties, including, without limitation, the implied
|
67
|
-
warranties of merchantability and fitness for a particular purpose.
|
68
|
-
|
69
|
-
== Authors
|
70
|
-
Daniel J. Berger
|
71
|
-
Park Heesob
|
data/certs/djberg96_pub.pem
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
2
|
-
MIIDcDCCAligAwIBAgIBATANBgkqhkiG9w0BAQUFADA/MREwDwYDVQQDDAhkamJl
|
3
|
-
cmc5NjEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYDY29t
|
4
|
-
MB4XDTE2MTIxMjAwMTQ1M1oXDTE3MTIxMjAwMTQ1M1owPzERMA8GA1UEAwwIZGpi
|
5
|
-
ZXJnOTYxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixkARkWA2Nv
|
6
|
-
bTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMVtTm/wETO8yKVKRPBO
|
7
|
-
VgPRvE94iEfKryOb/tQrmhGhchG2ALqdw/r54cGJvLaXeItrYJ6N8pSE/FSnN5jM
|
8
|
-
xugUhHBprPl+AsQ4E+IBy0dKwyU8XjFoVYzWvT1wnqwQdSazdgFCfQqb51QCgUIT
|
9
|
-
PGGakKlyzCb3Mbq30is8+QlRrqXt/JbpkUZbQwUqCdAulMT4oyPBk/L+48pbVX0s
|
10
|
-
4yj7YaVAqfGByAMTPXEmUS388lX+0xq8+GGir2Fuh0TpNW0ggr9BxprwqL0Mg4Oo
|
11
|
-
YhM5L1y8Plolo8mOTN3+K8I3afZ0lD0BtwniVb6g+Ut/4aBjKy2+GyFwwNOu0gSj
|
12
|
-
desCAwEAAaN3MHUwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFJfg
|
13
|
-
HmQ0uDU3Z9A9hB1lQMjr5VZSMB0GA1UdEQQWMBSBEmRqYmVyZzk2QGdtYWlsLmNv
|
14
|
-
bTAdBgNVHRIEFjAUgRJkamJlcmc5NkBnbWFpbC5jb20wDQYJKoZIhvcNAQEFBQAD
|
15
|
-
ggEBACjRCHRP944MHIQJNCglZbDnZowybV2HxmG1uhnvRwrOjBA7CXemc+QSAL7K
|
16
|
-
7eXC4FdojVEJrnU7ZxuCmfQU+fvkEQKOnah1osG1874aPiDlwtjHclpeqcDgTUI7
|
17
|
-
A7CF+OXK8x7ksFx205ruhPHKaPYtwVG/W/J+y7Wx8yl9rvwUgRBL5cVzTBiEz+AB
|
18
|
-
NRT7yoHXXfFXjuQWN1eHunSbNds2ZTGQd64yBCujb17Xdl+F9tu4klkTga3gxP3P
|
19
|
-
y3zoX1VttxnIZBojRM/s2A7c2aubMH2SVbXMR3ccVkB9XbYKl1OvCe7q85xEHit2
|
20
|
-
Kbpico5nnyHqf7YSPmvZe8bCU94=
|
21
|
-
-----END CERTIFICATE-----
|
metadata.gz.sig
DELETED
Binary file
|