Module: Windows::Pipe
- Defined in:
- lib/windows/pipe.rb
Constant Summary collapse
- NMPWAIT_NOWAIT =
0x00000001- NMPWAIT_WAIT_FOREVER =
0xffffffff- NMPWAIT_USE_DEFAULT_WAIT =
0x00000000- PIPE_WAIT =
0x00000000- PIPE_NOWAIT =
0x00000001- PIPE_ACCESS_INBOUND =
0x00000001- PIPE_ACCESS_OUTBOUND =
0x00000002- PIPE_ACCESS_DUPLEX =
0x00000003- PIPE_TYPE_BYTE =
0x00000000- PIPE_TYPE_MESSAGE =
0x00000004- PIPE_READMODE_BYTE =
0x00000000- PIPE_READMODE_MESSAGE =
0x00000002- PIPE_CLIENT_END =
0x00000000- PIPE_SERVER_END =
0x00000001- PIPE_UNLIMITED_INSTANCES =
255- CallNamedPipe =
Win32API.new('kernel32', 'CallNamedPipe', 'PPLPLPL', 'I')
- ConnectNamedPipe =
Win32API.new('kernel32', 'ConnectNamedPipe', 'LP', 'I')
- CreateNamedPipe =
Win32API.new('kernel32', 'CreateNamedPipe', 'PLLLLLLL', 'L')
- CreatePipe =
Win32API.new('kernel32', 'CreatePipe', 'PPPL', 'I')
- DisconnectNamedPipe =
Win32API.new('kernel32', 'DisconnectNamedPipe', 'L', 'I')
- GetNamedPipeHandleState =
Win32API.new('kernel32', 'GetNamedPipeHandleState', 'LPPPPPL', 'I')
- GetNamedPipeInfo =
Win32API.new('kernel32', 'GetNamedPipeInfo', 'LPPPP', 'I')
- PeekNamedPipe =
Win32API.new('kernel32', 'PeekNamedPipe', 'LPLPPP', 'I')
- SetNamedPipeHandleState =
Win32API.new('kernel32', 'SetNamedPipeHandleState', 'LPPP', 'I')
- TransactNamedPipe =
Win32API.new('kernel32', 'TransactNamedPipe', 'LPLPLPP', 'I')
- WaitNamedPipe =
Win32API.new('kernel32', 'WaitNamedPipe', 'PL', 'I')
Instance Method Summary collapse
- #CallNamedPipe(name, buf, buf_size, out, out_size, read, timeout) ⇒ Object
- #ConnectNamedPipe(pipe, overlapped = 0) ⇒ Object
- #CreateNamedPipe(name, open_mode, pipe_mode, max, out_size, in_size, timeout, sec_attr) ⇒ Object
- #CreatePipe(read_pipe, write_pipe, pipe_attr, size) ⇒ Object
- #DisconnectNamedPipe(name) ⇒ Object
- #GetNamedPipeHandleState(name, state, instances, count, timeout, user, size) ⇒ Object
- #GetNamedPipeInfo(name, flags, out_size, in_size, max) ⇒ Object
- #PeekNamedPipe(name, buf, buf_size, bytes_read, bytes_avail, bytes_left) ⇒ Object
- #SetNamedPipeHandleState(name, mode, max, timeout) ⇒ Object
- #TransactNamedPipe(name, in_buf, in_buf_size, out_buf, out_buf_size, read, overlapped) ⇒ Object
- #WaitNamedPipe(name, timeout) ⇒ Object
Instance Method Details
#CallNamedPipe(name, buf, buf_size, out, out_size, read, timeout) ⇒ Object
35 36 37 |
# File 'lib/windows/pipe.rb', line 35 def CallNamedPipe(name, buf, buf_size, out, out_size, read, timeout) CallNamedPipe.call(name, buf, buf_size, out, out_size, read, timeout) != 0 end |
#ConnectNamedPipe(pipe, overlapped = 0) ⇒ Object
39 40 41 |
# File 'lib/windows/pipe.rb', line 39 def ConnectNamedPipe(pipe, overlapped = 0) ConnectNamedPipe.call(pipe, overlapped) != 0 end |
#CreateNamedPipe(name, open_mode, pipe_mode, max, out_size, in_size, timeout, sec_attr) ⇒ Object
43 44 45 |
# File 'lib/windows/pipe.rb', line 43 def CreateNamedPipe(name, open_mode, pipe_mode, max, out_size, in_size, timeout, sec_attr) CreateNamedPipe.call(name, open_mode, pipe_mode, max, out_size, in_size, timeout, sec_attr) end |
#CreatePipe(read_pipe, write_pipe, pipe_attr, size) ⇒ Object
47 48 49 |
# File 'lib/windows/pipe.rb', line 47 def CreatePipe(read_pipe, write_pipe, pipe_attr, size) CreatePipe.call(read_pipe, write_pipe, pipe_attr, size) != 0 end |
#DisconnectNamedPipe(name) ⇒ Object
51 52 53 |
# File 'lib/windows/pipe.rb', line 51 def DisconnectNamedPipe(name) DisconnectNamedPipe.call(name) != 0 end |
#GetNamedPipeHandleState(name, state, instances, count, timeout, user, size) ⇒ Object
55 56 57 |
# File 'lib/windows/pipe.rb', line 55 def GetNamedPipeHandleState(name, state, instances, count, timeout, user, size) GetNamedPipeHandleState.call(name, state, instances, count, timeout, user, size) != 0 end |
#GetNamedPipeInfo(name, flags, out_size, in_size, max) ⇒ Object
59 60 61 |
# File 'lib/windows/pipe.rb', line 59 def GetNamedPipeInfo(name, flags, out_size, in_size, max) GetNamedPipeInfo.call(name, flags, out_size, in_size, max) != 0 end |
#PeekNamedPipe(name, buf, buf_size, bytes_read, bytes_avail, bytes_left) ⇒ Object
63 64 65 |
# File 'lib/windows/pipe.rb', line 63 def PeekNamedPipe(name, buf, buf_size, bytes_read, bytes_avail, bytes_left) PeekNamedPipe.call(name, buf, buf_size, bytes_read, bytes_avail, bytes_left) != 0 end |
#SetNamedPipeHandleState(name, mode, max, timeout) ⇒ Object
67 68 69 |
# File 'lib/windows/pipe.rb', line 67 def SetNamedPipeHandleState(name, mode, max, timeout) SetNamedPipeHandleState.call(name, mode, max, timeout) != 0 end |
#TransactNamedPipe(name, in_buf, in_buf_size, out_buf, out_buf_size, read, overlapped) ⇒ Object
71 72 73 |
# File 'lib/windows/pipe.rb', line 71 def TransactNamedPipe(name, in_buf, in_buf_size, out_buf, out_buf_size, read, overlapped) TransactNamedPipe.call(name, in_buf, in_buf_size, out_buf, out_buf_size, read, overlapped) != 0 end |
#WaitNamedPipe(name, timeout) ⇒ Object
75 76 77 |
# File 'lib/windows/pipe.rb', line 75 def WaitNamedPipe(name, timeout) WaitNamedPipe.call(name, timeout) != 0 end |