windows-pr 0.8.5 → 0.8.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +8 -0
- data/lib/windows/com.rb +24 -0
- data/lib/windows/error.rb +72 -0
- data/lib/windows/process.rb +5 -5
- data/lib/windows/tool_helper.rb +34 -0
- data/windows-pr.gemspec +1 -1
- metadata +54 -46
data/CHANGES
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
= 0.8.6 - 14-Jun-2008
|
2
|
+
* Added the Windows::Network::Winsock module.
|
3
|
+
* Added the Windows::ToolHelper module.
|
4
|
+
* Added CLSCTX enum constants to the Windows::COM module.
|
5
|
+
* Added several WSA socket error constants to Windows::Error.
|
6
|
+
* Moved the Process32First and Process32Next functions from Windows::Process
|
7
|
+
to Windows::ToolHelper.
|
8
|
+
|
1
9
|
= 0.8.5 - 28-May-2008
|
2
10
|
* Added more pipe related error codes to the Windows::Error module.
|
3
11
|
* Added the FlushFileBuffers function to the Windows::File module.
|
data/lib/windows/com.rb
CHANGED
@@ -70,6 +70,29 @@ module Windows
|
|
70
70
|
INVOKE_PROPERTYGET = 2
|
71
71
|
INVOKE_PROPERTYPUT = 4
|
72
72
|
INVOKE_PROPERTYPUTREF = 8
|
73
|
+
|
74
|
+
# CLSCTX enum constants
|
75
|
+
|
76
|
+
CLSCTX_INPROC_SERVER = 0x1
|
77
|
+
CLSCTX_INPROC_HANDLER = 0x2
|
78
|
+
CLSCTX_LOCAL_SERVER = 0x4
|
79
|
+
CLSCTX_INPROC_SERVER16 = 0x8
|
80
|
+
CLSCTX_REMOTE_SERVER = 0x10
|
81
|
+
CLSCTX_INPROC_HANDLER16 = 0x20
|
82
|
+
CLSCTX_RESERVED1 = 0x40
|
83
|
+
CLSCTX_RESERVED2 = 0x80
|
84
|
+
CLSCTX_RESERVED3 = 0x100
|
85
|
+
CLSCTX_RESERVED4 = 0x200
|
86
|
+
CLSCTX_NO_CODE_DOWNLOAD = 0x400
|
87
|
+
CLSCTX_RESERVED5 = 0x800
|
88
|
+
CLSCTX_NO_CUSTOM_MARSHAL = 0x1000
|
89
|
+
CLSCTX_ENABLE_CODE_DOWNLOAD = 0x2000
|
90
|
+
CLSCTX_NO_FAILURE_LOG = 0x4000
|
91
|
+
CLSCTX_DISABLE_AAA = 0x8000
|
92
|
+
CLSCTX_ENABLE_AAA = 0x10000
|
93
|
+
CLSCTX_FROM_DEFAULT_CONTEXT = 0x20000
|
94
|
+
CLSCTX_ACTIVATE_32_BIT_SERVER = 0x40000
|
95
|
+
CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000
|
73
96
|
|
74
97
|
API.new('BindMoniker', 'PLPP', 'L', 'ole32')
|
75
98
|
API.new('CLSIDFromProgID', 'PP', 'L', 'ole32')
|
@@ -130,6 +153,7 @@ module Windows
|
|
130
153
|
API.new('OleGetIconOfClass', 'PPI', 'L', 'ole32')
|
131
154
|
API.new('OleGetIconOfFile', 'PI', 'L', 'ole32')
|
132
155
|
API.new('OleIconToCursor', 'PL', 'L', 'olepro32')
|
156
|
+
API.new('OleInitialize', 'V', 'L', 'ole32')
|
133
157
|
API.new('OleRegGetMiscStatus', 'PLP', 'L', 'ole32')
|
134
158
|
API.new('OleRegGetUserType', 'PLP', 'L', 'ole32')
|
135
159
|
API.new('OleSetAutoConvert', 'PP', 'L', 'ole32')
|
data/lib/windows/error.rb
CHANGED
@@ -325,6 +325,78 @@ module Windows
|
|
325
325
|
SCHED_E_ACCOUNT_DBASE_CORRUPT = 267025 # 0x00041311L
|
326
326
|
SCHED_E_NO_SECURITY_SERVICES = 267026 # 0x00041312L
|
327
327
|
SCHED_E_UNKNOWN_OBJECT_VERSION = 267027 # 0x00041313L
|
328
|
+
|
329
|
+
# Socket errors
|
330
|
+
WSA_INVALID_HANDLE = 6
|
331
|
+
WSA_NOT_ENOUGH_MEMORY = 8
|
332
|
+
WSA_INVALID_PARAMETER = 87
|
333
|
+
WSA_OPERATION_ABORTED = 995
|
334
|
+
WSA_IO_INCOMPLETE = 996
|
335
|
+
WSA_IO_PENDING = 997
|
336
|
+
WSAEINTR = 10004
|
337
|
+
WSAEBADF = 10009
|
338
|
+
WSAEACCESS = 10013
|
339
|
+
WSAEFAULT = 10014
|
340
|
+
WSAEINVAL = 10022
|
341
|
+
WSAEMFILE = 10024
|
342
|
+
WSAEWOULDBLOCK = 10035
|
343
|
+
WSAEINPROGRESS = 10036
|
344
|
+
WSAEALREADY = 10037
|
345
|
+
WSAENOTSOCK = 10038
|
346
|
+
WSAEDESTADDRREQ = 10039
|
347
|
+
WSAEMSGSIZE = 10040
|
348
|
+
WSAEPROTOTYPE = 10041
|
349
|
+
WSAENOPROTOOPT = 10042
|
350
|
+
WSAEPROTONOSUPPORT = 10043
|
351
|
+
WSAESOCKTNOSUPPORT = 10044
|
352
|
+
WSAEOPNOTSUPP = 10045
|
353
|
+
WSAEPFNOSUPPORT = 10046
|
354
|
+
WSAEAFNOSUPPORT = 10047
|
355
|
+
WSAEADDRINUSE = 10048
|
356
|
+
WSAEADDRNOTAVAIL = 10049
|
357
|
+
WSAENETDOWN = 10050
|
358
|
+
WSAENETUNREACH = 10051
|
359
|
+
WSAENETRESET = 10052
|
360
|
+
WSAECONNABORTED = 10053
|
361
|
+
WSAECONNRESET = 10054
|
362
|
+
WSAENOBUFS = 10055
|
363
|
+
WSAEISCONN = 10056
|
364
|
+
WSAENOTCONN = 10057
|
365
|
+
WSAESHUTDOWN = 10058
|
366
|
+
WSAETOOMANYREFS = 10059
|
367
|
+
WSATIMEDOUT = 10060
|
368
|
+
WSAECONNREFUSED = 10061
|
369
|
+
WSAELOOP = 10062
|
370
|
+
WSAENAMETOOLONG = 10063
|
371
|
+
WSAEHOSTDOWN = 10064
|
372
|
+
WSAEHOSTUNREACH = 10065
|
373
|
+
WSAENOEMPTY = 10066
|
374
|
+
WSAEPROCLIM = 10067
|
375
|
+
WSAEUSERS = 10068
|
376
|
+
WSAEDQUOT = 10069
|
377
|
+
WSAESTALE = 10070
|
378
|
+
WSAEREMOTE = 10071
|
379
|
+
WSASYSNOTREADY = 10091
|
380
|
+
WSAVERNOTSUPPORTED = 10092
|
381
|
+
WSANOTINITIALISED = 10093
|
382
|
+
WSAEDISCON = 10101
|
383
|
+
WSAENOMORE = 10102
|
384
|
+
WSAECANCELLED = 10103
|
385
|
+
WSAEINVALIDPROCTABLE = 10104
|
386
|
+
WSAEINVALIDPROVIDER = 10105
|
387
|
+
WSAEPROVIDERFAILEDINIT = 10106
|
388
|
+
WSASYSCALLFAILURE = 10107
|
389
|
+
WSASERVICE_NOT_FOUND = 10108
|
390
|
+
WSATYPE_NOT_FOUND = 10109
|
391
|
+
WSA_E_NO_MORE = 10110
|
392
|
+
WSA_E_CANCELLED = 10111
|
393
|
+
WSAEREFUSED = 10112
|
394
|
+
WSAHOST_NOT_FOUND = 11001
|
395
|
+
WSATRY_AGAIN = 11002
|
396
|
+
WSANO_RECOVERY = 11003
|
397
|
+
WSANO_DATA = 11004
|
398
|
+
WSA_QOS_RECEIVERS = 11005
|
399
|
+
WSA_QOS_SENDERS = 11006
|
328
400
|
|
329
401
|
API.new('GetLastError', 'V', 'L')
|
330
402
|
API.new('SetLastError', 'L', 'V')
|
data/lib/windows/process.rb
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
require 'windows/api'
|
2
|
-
include Windows
|
3
2
|
|
3
|
+
# The Windows module serves as a namespace only.
|
4
4
|
module Windows
|
5
|
+
# The Process module includes process related functions and constants,
|
6
|
+
# including some tool help functions that relate to processes.
|
5
7
|
module Process
|
6
8
|
API.auto_namespace = 'Windows::Process'
|
7
9
|
API.auto_constant = true
|
@@ -60,7 +62,7 @@ module Windows
|
|
60
62
|
LOGON_WITH_PROFILE = 0x00000001
|
61
63
|
LOGON_NETCREDENTIALS_ONLY = 0x00000002
|
62
64
|
|
63
|
-
SHUTDOWN_NORETRY = 0x00000001
|
65
|
+
SHUTDOWN_NORETRY = 0x00000001
|
64
66
|
|
65
67
|
API.new('CreateProcess', 'PPPPLLLPPP', 'B')
|
66
68
|
API.new('CreateProcessAsUser', 'LPPLLILPPPP', 'B', 'advapi32')
|
@@ -85,8 +87,6 @@ module Windows
|
|
85
87
|
API.new('GetProcessWorkingSetSize', 'LPP', 'B')
|
86
88
|
API.new('GetStartupInfo', 'P', 'V')
|
87
89
|
API.new('OpenProcess', 'LIL', 'L')
|
88
|
-
API.new('Process32First', 'LP', 'B')
|
89
|
-
API.new('Process32Next', 'LP', 'B')
|
90
90
|
API.new('SetEnvironmentVariable', 'PP', 'B')
|
91
91
|
API.new('SetPriorityClass', 'LL', 'B')
|
92
92
|
API.new('SetProcessAffinityMask', 'LL', 'B')
|
@@ -101,7 +101,7 @@ module Windows
|
|
101
101
|
begin
|
102
102
|
API.new('GetProcessId', 'L', 'L')
|
103
103
|
API.new('GetProcessHandleCount', 'LP', 'B')
|
104
|
-
rescue
|
104
|
+
rescue Windows::API::Error
|
105
105
|
# Do nothing - not supported on current platform. It's up to you to
|
106
106
|
# check for the existence of the constant in your code.
|
107
107
|
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'windows/api'
|
2
|
+
|
3
|
+
# Functions and constants from tlhelp32.h
|
4
|
+
|
5
|
+
module Windows
|
6
|
+
module ToolHelper
|
7
|
+
API.auto_namespace = 'Windows::ToolHelper'
|
8
|
+
API.auto_constant = true
|
9
|
+
API.auto_method = true
|
10
|
+
API.auto_unicode = true
|
11
|
+
|
12
|
+
TH32CS_SNAPHEAPLIST = 0x00000001
|
13
|
+
TH32CS_SNAPPROCESS = 0x00000002
|
14
|
+
TH32CS_SNAPTHREAD = 0x00000004
|
15
|
+
TH32CS_SNAPMODULE = 0x00000008
|
16
|
+
TH32CS_SNAPMODULE32 = 0x00000010
|
17
|
+
TH32CS_INHERIT = 0x80000000
|
18
|
+
TH32CS_SNAPALL = TH32CS_SNAPHEAPLIST | TH32CS_SNAPMODULE |
|
19
|
+
TH32CS_SNAPPROCESS | TH32CS_SNAPTHREAD
|
20
|
+
|
21
|
+
API.new('CreateToolhelp32Snapshot', 'LL', 'L')
|
22
|
+
API.new('Heap32First', 'PLL', 'B')
|
23
|
+
API.new('Heap32ListFirst', 'LP', 'B')
|
24
|
+
API.new('Heap32ListNext', 'LP', 'B')
|
25
|
+
API.new('Heap32Next', 'P', 'B')
|
26
|
+
API.new('Module32First', 'LP', 'B')
|
27
|
+
API.new('Module32Next', 'LP', 'B')
|
28
|
+
API.new('Process32First', 'LP', 'B')
|
29
|
+
API.new('Process32Next', 'LP', 'B')
|
30
|
+
API.new('Thread32First', 'LP', 'B')
|
31
|
+
API.new('Thread32Next', 'LP', 'B')
|
32
|
+
API.new('Toolhelp32ReadProcessMemory', 'LLPLL', 'B')
|
33
|
+
end
|
34
|
+
end
|
data/windows-pr.gemspec
CHANGED
@@ -2,7 +2,7 @@ require "rubygems"
|
|
2
2
|
|
3
3
|
spec = Gem::Specification.new do |gem|
|
4
4
|
gem.name = "windows-pr"
|
5
|
-
gem.version = "0.8.
|
5
|
+
gem.version = "0.8.6"
|
6
6
|
gem.author = "Daniel J. Berger"
|
7
7
|
gem.email = "djberg96@gmail.com"
|
8
8
|
gem.homepage = "http://www.rubyforge.org/projects/win32utils"
|
metadata
CHANGED
@@ -1,33 +1,36 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.4
|
3
|
-
specification_version: 1
|
4
2
|
name: windows-pr
|
5
3
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.8.
|
7
|
-
date: 2008-05-28 00:00:00 -06:00
|
8
|
-
summary: Windows functions and constants bundled via Win32::API
|
9
|
-
require_paths:
|
10
|
-
- lib
|
11
|
-
email: djberg96@gmail.com
|
12
|
-
homepage: http://www.rubyforge.org/projects/win32utils
|
13
|
-
rubyforge_project: win32utils
|
14
|
-
description: Windows functions and constants bundled via Win32::API
|
15
|
-
autorequire:
|
16
|
-
default_executable:
|
17
|
-
bindir: bin
|
18
|
-
has_rdoc: true
|
19
|
-
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
-
requirements:
|
21
|
-
- - ">"
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 0.0.0
|
24
|
-
version:
|
4
|
+
version: 0.8.6
|
25
5
|
platform: ruby
|
26
|
-
signing_key:
|
27
|
-
cert_chain:
|
28
|
-
post_install_message:
|
29
6
|
authors:
|
30
7
|
- Daniel J. Berger
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2008-06-14 00:00:00 -06:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: windows-api
|
17
|
+
version_requirement:
|
18
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 0.2.3
|
23
|
+
version:
|
24
|
+
description: Windows functions and constants bundled via Win32::API
|
25
|
+
email: djberg96@gmail.com
|
26
|
+
executables: []
|
27
|
+
|
28
|
+
extensions: []
|
29
|
+
|
30
|
+
extra_rdoc_files:
|
31
|
+
- MANIFEST
|
32
|
+
- README
|
33
|
+
- CHANGES
|
31
34
|
files:
|
32
35
|
- doc/conversion_guide.txt
|
33
36
|
- lib/windows/clipboard.rb
|
@@ -59,6 +62,7 @@ files:
|
|
59
62
|
- lib/windows/system_info.rb
|
60
63
|
- lib/windows/thread.rb
|
61
64
|
- lib/windows/time.rb
|
65
|
+
- lib/windows/tool_helper.rb
|
62
66
|
- lib/windows/unicode.rb
|
63
67
|
- lib/windows/volume.rb
|
64
68
|
- lib/windows/window.rb
|
@@ -121,6 +125,32 @@ files:
|
|
121
125
|
- README
|
122
126
|
- test
|
123
127
|
- windows-pr.gemspec
|
128
|
+
has_rdoc: true
|
129
|
+
homepage: http://www.rubyforge.org/projects/win32utils
|
130
|
+
post_install_message:
|
131
|
+
rdoc_options: []
|
132
|
+
|
133
|
+
require_paths:
|
134
|
+
- lib
|
135
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - ">="
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: "0"
|
140
|
+
version:
|
141
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: "0"
|
146
|
+
version:
|
147
|
+
requirements: []
|
148
|
+
|
149
|
+
rubyforge_project: win32utils
|
150
|
+
rubygems_version: 1.1.1
|
151
|
+
signing_key:
|
152
|
+
specification_version: 2
|
153
|
+
summary: Windows functions and constants bundled via Win32::API
|
124
154
|
test_files:
|
125
155
|
- test/tc_clipboard.rb
|
126
156
|
- test/tc_com.rb
|
@@ -162,25 +192,3 @@ test_files:
|
|
162
192
|
- test/tc_unicode.rb
|
163
193
|
- test/tc_volume.rb
|
164
194
|
- test/tc_window.rb
|
165
|
-
rdoc_options: []
|
166
|
-
|
167
|
-
extra_rdoc_files:
|
168
|
-
- MANIFEST
|
169
|
-
- README
|
170
|
-
- CHANGES
|
171
|
-
executables: []
|
172
|
-
|
173
|
-
extensions: []
|
174
|
-
|
175
|
-
requirements: []
|
176
|
-
|
177
|
-
dependencies:
|
178
|
-
- !ruby/object:Gem::Dependency
|
179
|
-
name: windows-api
|
180
|
-
version_requirement:
|
181
|
-
version_requirements: !ruby/object:Gem::Version::Requirement
|
182
|
-
requirements:
|
183
|
-
- - ">="
|
184
|
-
- !ruby/object:Gem::Version
|
185
|
-
version: 0.2.3
|
186
|
-
version:
|