Python win32pipe.ConnectNamedPipe方法代码示例(pythonwin32pipe.connectnamedpipe方法的典型用法代码示例)

本文整理汇总了Python中win32pipe.ConnectNamedPipe方法的典型用法代码示例。如果您正苦于以下问题:Python win32pipe.ConnectNamedPipe方法的具体用法?Python win32pipe.ConnectNamedPipe怎么用?Python win32pipe.ConnectNamedPipe使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在win32pipe的用法示例。


Python win32pipe.ConnectNamedPipe方法代码示例(pythonwin32pipe.connectnamedpipe方法的典型用法代码示例)

在下文中一共展示了win32pipe.ConnectNamedPipe方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: _IOCPServerThread

# 需要导入模块: import win32pipe [as 别名]
# 或者: from win32pipe import ConnectNamedPipe [as 别名]
def _IOCPServerThread(self, handle, port, drop_overlapped_reference):
        overlapped = pywintypes.OVERLAPPED()
        win32pipe.ConnectNamedPipe(handle, overlapped)
        if drop_overlapped_reference:
            # Be naughty - the overlapped object is now dead, but
            # GetQueuedCompletionStatus will still find it.  Our check of
            # reference counting should catch that error.
            overlapped = None
            # even if we fail, be sure to close the handle; prevents hangs
            # on Vista 64...
            try:
                self.failUnlessRaises(RuntimeError,
                                      win32file.GetQueuedCompletionStatus, port, -1)
            finally:
                handle.Close()
            return

        result = win32file.GetQueuedCompletionStatus(port, -1)
        ol2 = result[-1]
        self.failUnless(ol2 is overlapped)
        data = win32file.ReadFile(handle, 512)[1]
        win32file.WriteFile(handle, data) 
开发者ID:htwenning,项目名称:remoteControlPPT,代码行数:24,代码来源:test_win32file.py

示例2: pipe

# 需要导入模块: import win32pipe [as 别名]
# 或者: from win32pipe import ConnectNamedPipe [as 别名]
def pipe(bufsize=8192):
        """Creates overlapped (asynchronous) pipe.
        """
        name = r'\\.\pipe\pycos-pipe-%d-%d' % (os.getpid(), next(_pipe_id))
        openmode = (win32pipe.PIPE_ACCESS_INBOUND | win32file.FILE_FLAG_OVERLAPPED |
                    FILE_FLAG_FIRST_PIPE_INSTANCE)
        pipemode = (win32pipe.PIPE_TYPE_BYTE | win32pipe.PIPE_READMODE_BYTE)
        rh = wh = None
        try:
            rh = win32pipe.CreateNamedPipe(
                name, openmode, pipemode, 1, bufsize, bufsize,
                win32pipe.NMPWAIT_USE_DEFAULT_WAIT, None)

            wh = win32file.CreateFile(
                name, win32file.GENERIC_WRITE | winnt.FILE_READ_ATTRIBUTES, 0, None,
                win32file.OPEN_EXISTING, win32file.FILE_FLAG_OVERLAPPED, None)

            overlapped = pywintypes.OVERLAPPED()
            # 'yield' can't be used in constructor so use sync wait
            # (in this case it is should be okay)
            overlapped.hEvent = win32event.CreateEvent(None, 0, 0, None)
            rc = win32pipe.ConnectNamedPipe(rh, overlapped)
            if rc == winerror.ERROR_PIPE_CONNECTED:
                win32event.SetEvent(overlapped.hEvent)
            rc = win32event.WaitForSingleObject(overlapped.hEvent, 1000)
            overlapped = None
            if rc != win32event.WAIT_OBJECT_0:
                pycos.logger.warning('connect failed: %s' % rc)
                raise Exception(rc)
            return (rh, wh)
        except:
            if rh is not None:
                win32file.CloseHandle(rh)
            if wh is not None:
                win32file.CloseHandle(wh)
            raise 
开发者ID:pgiri,项目名称:pycos,代码行数:38,代码来源:asyncfile.py

示例3: foo

# 需要导入模块: import win32pipe [as 别名]
# 或者: from win32pipe import ConnectNamedPipe [as 别名]
def foo(self,n):
		while(1):
			p = win32pipe.CreateNamedPipe(r'\\.\pipe\gpvdm_pipe',
				win32pipe.PIPE_ACCESS_INBOUND,
				win32pipe.PIPE_TYPE_MESSAGE | win32pipe.PIPE_WAIT,
				255, 65536, 65536,300,None)

			win32pipe.ConnectNamedPipe(p, None)
		
			th = Thread(target=self.rod, args=(p,))
			th.daemon = True
			th.start() 
开发者ID:roderickmackenzie,项目名称:gpvdm,代码行数:14,代码来源:windows_pipe.py

示例4: connect_pipe

# 需要导入模块: import win32pipe [as 别名]
# 或者: from win32pipe import ConnectNamedPipe [as 别名]
def connect_pipe(pipe, pipeName):
        overLap = pywintypes.OVERLAPPED()
        overLap.hEvent = win32event.CreateEvent(None, 1, 0, None)
        if overLap.hEvent == 0:
            raise PipeError('Could not create hEvent')

        try:
            # Wait for a pipe client connection
            ret = win32pipe.ConnectNamedPipe(pipe, overLap)
            if not ret in (0, ERROR_PIPE_CONNECTED):
                if ret == ERROR_IO_PENDING:
                    ret = win32event.WaitForSingleObject(overLap.hEvent, 
                                                         1000 * CONNECT_TIMEOUT_SECS)
                    if ret != win32event.WAIT_OBJECT_0:
                        # Timeout error
                        raise PipeError('Timeout error')
                else:
                    # API error
                    raise PipeError('API error')

                ret = win32pipe.GetOverlappedResult(pipe, overLap, True)
            if not ret in (0, ERROR_PIPE_CONNECTED):
                # API Error
                raise PipeError('API error 2')
        except PipeError:
            # Named pipe exception
            win32file.CancelIo(pipe)
            pipe.close()
            raise
        except BaseException, err:
            win32file.CancelIo(pipe)
            pipe.close()
            pipe = None
            raise PipeError('BaseException : ' + str(err))

        return pipe 
开发者ID:w3h,项目名称:isf,代码行数:38,代码来源:edfexecution.py

示例5: _serverThread

# 需要导入模块: import win32pipe [as 别名]
# 或者: from win32pipe import ConnectNamedPipe [as 别名]
def _serverThread(self, pipe_handle, event, wait_time):
        # just do one connection and terminate.
        hr = win32pipe.ConnectNamedPipe(pipe_handle)
        self.failUnless(hr in (0, winerror.ERROR_PIPE_CONNECTED), "Got error code 0x%x" % (hr,))
        hr, got = win32file.ReadFile(pipe_handle, 100)
        self.failUnlessEqual(got, str2bytes("foo\0bar"))
        time.sleep(wait_time)
        win32file.WriteFile(pipe_handle, str2bytes("bar\0foo"))
        pipe_handle.Close()
        event.set() 
开发者ID:htwenning,项目名称:remoteControlPPT,代码行数:12,代码来源:test_win32pipe.py

本文标签属性:

示例:示例英语

代码:代码转换器

python:python什么意思

ConnectNamedPipe:ConnectNamedPipe

上一篇:Java UserInterface类代码示例(javauserinterface类的具体用法)
下一篇:日本核污染水排海对中国哪个城市影响最大(报道称日本核污染水首次排海 11 日将结束,最早将于九月下旬开始)(日本核污染水排海对中国哪个城市影响最大)

为您推荐