• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python dist.load函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中pywincffi.core.dist.load函数的典型用法代码示例。如果您正苦于以下问题:Python load函数的具体用法?Python load怎么用?Python load使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



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

示例1: CreateEvent

def CreateEvent(
        bManualReset, bInitialState, lpEventAttributes=None, lpName=None):
    """
    Creates or opens an named or unnamed event object.

    .. seealso::

        https://msdn.microsoft.com/en-us/library/ms682396

    :param bool bManualReset:
        If True then this function will create a manual reset
        event which must be manually reset with :func:`ResetEvent`.  Refer
        to the msdn documentation for full information.

    :param bool bInitialState:
        If True the initial state will be 'signaled'.

    :keyword :class:`pywincffi.wintypes.SECURITY_ATTRIBUTES` lpEventAttributes:
        If not provided then, by default, the handle cannot be inherited
        by a subprocess.

    :keyword str lpName:
        Type is ``unicode`` on Python 2, ``str`` on Python 3.
        The optional case-sensitive name of the event.  If not provided then
        the event will be created without an explicit name.

    :returns:
        Returns a :class:`pywincffi.wintypes.HANDLE` to the event. If an event
        by the given name already exists then it will be returned instead of
        creating a new event.
    """
    input_check("bManualReset", bManualReset, bool)
    input_check("bInitialState", bInitialState, bool)

    ffi, library = dist.load()

    if lpName is None:
        lpName = ffi.NULL
    else:
        input_check("lpName", lpName, text_type)

    input_check(
        "lpEventAttributes", lpEventAttributes,
        allowed_types=(SECURITY_ATTRIBUTES, NoneType)
    )

    handle = library.CreateEvent(
        wintype_to_cdata(lpEventAttributes),
        ffi.cast("BOOL", bManualReset),
        ffi.cast("BOOL", bInitialState),
        lpName
    )

    try:
        error_check("CreateEvent")
    except WindowsAPIError as error:
        if error.errno != library.ERROR_ALREADY_EXISTS:
            raise

    return HANDLE(handle)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:60,代码来源:events.py


示例2: OpenEvent

def OpenEvent(dwDesiredAccess, bInheritHandle, lpName):
    """
    Opens an existing named event.

    .. seealso::

        https://msdn.microsoft.com/en-us/library/ms684305

    :param int dwDesiredAccess:
        The access desired for the event object.

    :param bool bInheritHandle:
    :param str lpName:
        Type is ``unicode`` on Python 2, ``str`` on Python 3.

    :return:
        Returns a :class:`pywincffi.wintypes.HANDLE` to the event.
    """
    input_check("dwDesiredAccess", dwDesiredAccess, integer_types)
    input_check("bInheritHandle", bInheritHandle, bool)
    input_check("lpName", lpName, text_type)

    ffi, library = dist.load()

    handle = library.OpenEvent(
        ffi.cast("DWORD", dwDesiredAccess),
        ffi.cast("BOOL", bInheritHandle),
        lpName
    )
    error_check("OpenEvent")
    return HANDLE(handle)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:31,代码来源:events.py


示例3: test_signaled

 def test_signaled(self):
     handle = CreateEvent(bManualReset=True, bInitialState=False)
     self.addCleanup(CloseHandle, handle)
     _, library = dist.load()
     SetEvent(handle)
     self.assertEqual(
         WaitForSingleObject(handle, 0), library.WAIT_OBJECT_0)
开发者ID:opalmer,项目名称:pywincffi,代码行数:7,代码来源:test_events.py


示例4: test_resets_event

    def test_resets_event(self):
        handle = CreateEvent(bManualReset=True, bInitialState=True)
        self.addCleanup(CloseHandle, handle)
        ResetEvent(handle)

        _, library = dist.load()
        self.assertEqual(WaitForSingleObject(handle, 0), library.WAIT_TIMEOUT)
开发者ID:opalmer,项目名称:pywincffi,代码行数:7,代码来源:test_events.py


示例5: test_create_console

 def test_create_console(self):
     _, library = dist.load()
     handle = CreateConsoleScreenBuffer(
         library.GENERIC_READ | library.GENERIC_WRITE,
         None, lpSecurityAttributes=None, dwFlags=None,
     )
     self.addCleanup(CloseHandle, handle)
开发者ID:opalmer,项目名称:pywincffi,代码行数:7,代码来源:test_console.py


示例6: ClearCommError

def ClearCommError(hFile):
    """
    Retrieves information about a communications error and reports the
    current status of a communications device.

    .. seealso::

        https://msdn.microsoft.com/en-us/aa363180

    :param pywincffi.wintypes.HANDLE hFile:
        A handle to the communications device, typically created by
        :func:`CreateFile`

    :rtype: tuple
    :return:
        Returns a two element tuple containing the ``lpErrors`` and
        ``lpStat`` result objects.

            * ``lpErrors`` - Contains the mast indicating the type of error
            * ``lpStat`` - A ``COMSTAT`` structure which contains the device's
               information.
    """
    input_check("hFile", hFile, HANDLE)

    ffi, library = dist.load()

    lpErrors = ffi.new("LPDWORD")
    lpStat = ffi.new("LPCOMSTAT")
    code = library.ClearCommError(wintype_to_cdata(hFile), lpErrors, lpStat)
    error_check("ClearCommError", code=code, expected=Enums.NON_ZERO)

    # TODO: Build Python instance of COMSTAT here!
    return lpErrors, lpStat
开发者ID:TurBoss,项目名称:pywincffi,代码行数:33,代码来源:comms.py


示例7: test_collect_data_timeout_fail

    def test_collect_data_timeout_fail(self):
        # should fail: only supported with named pipes
        with self.assertRaises(WindowsAPIError):
            self._set_collect_data_timeout(500)

        _, library = dist.load()
        self.assert_last_error(library.ERROR_INVALID_PARAMETER)
开发者ID:exvito,项目名称:pywincffi,代码行数:7,代码来源:test_pipe.py


示例8: WriteFile

def WriteFile(hFile, lpBuffer, nNumberOfBytesToWrite=None, lpOverlapped=None):
    """
    Writes data to ``hFile`` which may be an I/O device for file.

    .. seealso::

        https://msdn.microsoft.com/en-us/library/aa365747

    :param pywincffi.wintypes.HANDLE hFile:
        The handle to write to.

    :type lpBuffer: str/bytes
    :param lpBuffer:
        Type is ``str`` on Python 2, ``bytes`` on Python 3.
        The data to be written to the file or device.

    :keyword int nNumberOfBytesToWrite:
        The number of bytes to be written.  Defaults to len(lpBuffer).

    :keyword pywincffi.wintypes.OVERLAPPED lpOverlapped:
        See Microsoft's documentation for intended usage and below for
        an example.

        >>> from pywincffi.core import dist
        >>> from pywincffi.kernel32 import WriteFile, CreateEvent
        >>> from pywincffi.wintypes import OVERLAPPED
        >>> hEvent = CreateEvent(...)
        >>> lpOverlapped = OVERLAPPED()
        >>> lpOverlapped.hEvent = hEvent
        >>> bytes_written = WriteFile(
        ...     hFile, "Hello world", lpOverlapped=lpOverlapped)

    :returns:
        Returns the number of bytes written.
    """
    ffi, library = dist.load()

    input_check("hFile", hFile, HANDLE)
    input_check("lpBuffer", lpBuffer, binary_type)
    input_check(
        "lpOverlapped", lpOverlapped,
        allowed_types=(NoneType, OVERLAPPED)
    )

    if nNumberOfBytesToWrite is None:
        nNumberOfBytesToWrite = len(lpBuffer)
    else:
        input_check(
            "nNumberOfBytesToWrite", nNumberOfBytesToWrite,
            integer_types
        )

    bytes_written = ffi.new("LPDWORD")
    code = library.WriteFile(
        wintype_to_cdata(hFile), lpBuffer, nNumberOfBytesToWrite,
        bytes_written, wintype_to_cdata(lpOverlapped)
    )
    error_check("WriteFile", code=code, expected=Enums.NON_ZERO)

    return bytes_written[0]
开发者ID:TurBoss,项目名称:pywincffi,代码行数:60,代码来源:file.py


示例9: SetConsoleTextAttribute

def SetConsoleTextAttribute(hConsoleOutput, wAttributes):
    """
    Sets the attributes of characters written to a console buffer.

    .. seealso::

        https://docs.microsoft.com/en-us/windows/console/setconsoletextattribute

    :param pywincffi.wintypes.HANDLE hConsoleOutput:
        A handle to the console screen buffer. The handle must have the
        ``GENERIC_READ`` access right.

    :param int wAttributes:
        The character attribute(s) to set.
    """
    input_check("hConsoleOutput", hConsoleOutput, HANDLE)
    input_check("wAttributes", wAttributes, integer_types)
    ffi, library = dist.load()
    # raise Exception(type(wAttributes))
    # info = ffi.new("PCHAR_INFO")
    code = library.SetConsoleTextAttribute(
        wintype_to_cdata(hConsoleOutput),
        ffi.cast("ATOM", wAttributes)
    )
    error_check("SetConsoleTextAttribute", code=code, expected=NON_ZERO)
开发者ID:opalmer,项目名称:pywincffi,代码行数:25,代码来源:console.py


示例10: SetHandleInformation

def SetHandleInformation(hObject, dwMask, dwFlags):
    """
    Sets properties of an object handle.

    .. seealso::

        https://msdn.microsoft.com/en-us/ms724935

    :param pywincffi.wintypes.HANDLE hObject:
        A handle to an object whose information is to be set.

    :param int dwMask:
        A mask that specifies the bit flags to be changed.

    :param int dwFlags:
        Set of bit flags that specifies properties of ``hObject``.
    """
    input_check("hObject", hObject, HANDLE)
    input_check("dwMask", dwMask, integer_types)
    input_check("dwFlags", dwFlags, integer_types)
    ffi, library = dist.load()

    code = library.SetHandleInformation(
        wintype_to_cdata(hObject),
        ffi.cast("DWORD", dwMask),
        ffi.cast("DWORD", dwFlags)
    )
    error_check("SetHandleInformation", code=code, expected=Enums.NON_ZERO)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:28,代码来源:handle.py


示例11: GetStdHandle

def GetStdHandle(nStdHandle):
    """
    Retrieves a handle to the specified standard
    device (standard input, standard output, or standard error).

    .. seealso::

        https://msdn.microsoft.com/en-us/library/ms683231

    :param int nStdHandle:
        The standard device to retrieve.

    :rtype: pywincffi.wintypes.HANDLE
    :return:
        Returns a handle to the standard device retrieved.
    """
    _, library = dist.load()
    input_check("nStdHandle", nStdHandle,
                allowed_values=(library.STD_INPUT_HANDLE,
                                library.STD_OUTPUT_HANDLE,
                                library.STD_ERROR_HANDLE))

    handle = library.GetStdHandle(nStdHandle)

    if handle == library.INVALID_HANDLE_VALUE:  # pragma: no cover
        raise WindowsAPIError(
            "GetStdHandle", "Invalid Handle", library.INVALID_HANDLE_VALUE,
            expected_return_code="not %r" % library.INVALID_HANDLE_VALUE)

    return HANDLE(handle)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:30,代码来源:handle.py


示例12: test_type_check_on_pHandles_input_not_list

    def test_type_check_on_pHandles_input_not_list(self):
        _, library = dist.load()
        e1 = CreateEvent(True, False)
        self.addCleanup(CloseHandle, e1)

        with self.assertRaises(InputError):
            MsgWaitForMultipleObjects(e1, False, 0, library.QS_ALLEVENTS)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:7,代码来源:test_synchronization.py


示例13: test_dwCreationFlags_CREATE_NO_WINDOW

    def test_dwCreationFlags_CREATE_NO_WINDOW(self):
        """
        If we call CreateProcess() with dwCreationFlags set and
        pass in an environmnet, internally it must internally add
        CREATE_UNICODE_ENVIRONMENT to dwCreationFlags.  Otherwise it
        will fail due to an invalid parameter.
        """
        _, library = dist.load()

        env = {}
        for key, val in iteritems(os.environ):
            if isinstance(key, bytes):
                key = key.decode(sys.getfilesystemencoding())
            if isinstance(val, bytes):
                val = val.decode(sys.getfilesystemencoding())
            env[key] = val

        process = CreateProcess(
            lpCommandLine=u"{0} -c \"\"".format(sys.executable),
            lpApplicationName=None,
            lpProcessAttributes=None,
            lpThreadAttributes=None,
            bInheritHandles=True,
            dwCreationFlags=library.CREATE_NO_WINDOW,
            lpEnvironment=env,
            lpCurrentDirectory=None,
            lpStartupInfo=None
        )
        self.assertIsInstance(process, CreateProcessResult)
        self.addCleanup(self.cleanup_process, process)
开发者ID:opalmer,项目名称:pywincffi,代码行数:30,代码来源:test_process.py


示例14: GetExitCodeProcess

def GetExitCodeProcess(hProcess):
    """
    Retrieves the exit code of the given process handle.  To retrieve
    a process handle use :func:`OpenProcess`.

    .. warning::

        You may want to use :func:`process_exit_code` instead of this
        function if you're just checking to see if a process has
        exited at all.

    .. seealso::

        https://msdn.microsoft.com/en-us/library/ms683189

    :param pywincffi.wintypes.HANDLE hProcess:
        The handle of the process to retrieve the exit code for.

    :returns:
        Returns the exit code of the requested process if one
        can be found.
    """
    input_check("hProcess", hProcess, HANDLE)

    ffi, library = dist.load()
    lpExitCode = ffi.new("LPDWORD")
    code = library.GetExitCodeProcess(wintype_to_cdata(hProcess), lpExitCode)
    error_check("GetExitCodeProcess", code=code, expected=Enums.NON_ZERO)
    return lpExitCode[0]
开发者ID:TurBoss,项目名称:pywincffi,代码行数:29,代码来源:process.py


示例15: test_get_handle_info_stdin

 def test_get_handle_info_stdin(self):
     _, library = dist.load()
     stdin_handle = GetStdHandle(library.STD_INPUT_HANDLE)
     handle_flags = GetHandleInformation(stdin_handle)
     inherit = handle_flags & library.HANDLE_FLAG_INHERIT
     expected = (0, library.HANDLE_FLAG_INHERIT)
     self.assertIn(inherit, expected)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:7,代码来源:test_handle.py


示例16: test_handle_is_valid

    def test_handle_is_valid(self):
        _, library = dist.load()
        handle = OpenProcess(
            library.PROCESS_QUERY_INFORMATION, False, os.getpid())

        # If the handle were invalid, this would fail.
        CloseHandle(handle)
开发者ID:exvito,项目名称:pywincffi,代码行数:7,代码来源:test_process.py


示例17: OpenProcess

def OpenProcess(dwDesiredAccess, bInheritHandle, dwProcessId):
    """
    Opens an existing local process object.

    .. seealso::

        https://msdn.microsoft.com/en-us/library/ms684320

    :param int dwDesiredAccess:
        The required access to the process object.

    :param bool bInheritHandle:
        Enables or disable handle inheritance for child processes.

    :param int dwProcessId:
        The id of the local process to be opened.

    :returns:
        Returns a :class:`pywincffi.wintypes.HANDLE` to the opened process.
        This value can be used by other functions such as
        :func:`TerminateProcess`.
    """
    input_check("dwDesiredAccess", dwDesiredAccess, integer_types)
    input_check("bInheritHandle", bInheritHandle, bool)
    input_check("dwProcessId", dwProcessId, integer_types)
    ffi, library = dist.load()

    handle = library.OpenProcess(
        ffi.cast("DWORD", dwDesiredAccess),
        ffi.cast("BOOL", bInheritHandle),
        ffi.cast("DWORD", dwProcessId)
    )
    error_check("OpenProcess")
    return HANDLE(handle)
开发者ID:TurBoss,项目名称:pywincffi,代码行数:34,代码来源:process.py


示例18: test_lpCommandLine_length_max_command_line

    def test_lpCommandLine_length_max_command_line(self):
        with mock_library(CreateProcess=self.NoOpCreateProcess):
            _, library = dist.load()

            match = ".*cannot exceed %s.*" % library.MAX_COMMAND_LINE
            with self.assertRaisesRegex(InputError, match):
                CreateProcess(u" " * (library.MAX_COMMAND_LINE + 1))
开发者ID:exvito,项目名称:pywincffi,代码行数:7,代码来源:test_process.py


示例19: __repr__

 def __repr__(self):
     ffi, _ = dist.load()
     return "<%s 0x%x at 0x%x>" % (
         self.__class__.__name__,
         int(ffi.cast("intptr_t", self._cdata[0])),
         id(self)
     )
开发者ID:TurBoss,项目名称:pywincffi,代码行数:7,代码来源:objects.py


示例20: test_clear_error

    def test_clear_error(self):
        ffi, library = dist.load()

        # Try to find a COM device, skip the test if we can't
        # find one.  The 'maximum' comes from here:
        #   https://support.microsoft.com/en-us/kb/100111
        found_com_device = False
        for i in range(256):
            try:
                handle = CreateFile(
                    u"\\\\.\\COM%d" % i,
                    library.GENERIC_READ | library.GENERIC_WRITE,
                    dwCreationDisposition=library.OPEN_EXISTING,
                    dwShareMode=0
                )
                found_com_device = True
                self.addCleanup(CloseHandle, handle)
                ClearCommError(handle)
                break
            except WindowsAPIError:
                code, _ = ffi.getwinerror()
                if code != library.ERROR_FILE_NOT_FOUND:
                    self.fail("Unexpected Windows API error: %s" % code)
                self.SetLastError(0)  # cleanup after the failure

        if not found_com_device:
            self.skipTest("No COM devices present.")
开发者ID:TurBoss,项目名称:pywincffi,代码行数:27,代码来源:test_comms.py



注:本文中的pywincffi.core.dist.load函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python pywink.set_bearer_token函数代码示例发布时间:2022-05-26
下一篇:
Python checks.input_check函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap