windows系统管理员的python工具
WinSys-3.x的Python项目详细描述
===
winsys
==
enter winsys:the python windows administrator's toolkit.一个具有一致方法的模块集合,包装pywin32已经公开的windows api调用,添加一些cTypes,并给它们一种pythonic的感觉。这里没有什么是您不能用
10分钟和pywin32和sdk文档的副本来完成的。但都已经在这里了,
并且有一种更顽皮的感觉。
总是允许更复杂的场景
*将所有常量放在一个位置,根据它们的api用法对它们进行分组
*在可用的地方使用pywin32功能,在需要的地方使用ctype进行补充
*假设python的最新版本(至少2.5)
*充分利用上下文管理器(带语句)
*让每个对象能够干净地转储其内容及其子对象的内容
*保持对象方法,但提供方便的模块级函数
*对于类具有有用的工厂函数,可靠地接受字符串或对象参数
common features
----
winsys子类中的大多数对象都是:类:`core.\winsys object`类,它提供合理的默认值并定义常见功能,如转储函数。
以下特性在许多模块中都很常见:
pythonic命名
~~~~~~~~~~~~~~~~~~~~~
这有点争议,但在python社区中广泛采用的“带下划线的小写”约定之后,始终使用相同的命名约定
。最普遍的例外是:mod:`constants`模块中的
,在该模块中,windows常量用下划线``名称保留其
``大写'u。
许多功能已经公开为模块级的便利功能。因此,例如,在:mod:`fs`模块中,:class:`fs.file`
类提供了一个:meth:`fs.file.copy`方法,但在模块级别上的功能与:func:`fs.copy`相同。那样的话,您不必为了一个操作而实例化一个或多个对象。
factory函数
~~~~~~~~~~~~~~~~~~~~~~~~~~
大多数类都有一个相应的factory函数(通常小写字母为
相同的名称),该函数试图在
其参数是什么时更容易接受,并将它们转换为类的
自己的``````` init``方法需要什么。例如,类:`Br/>初始化器期望Pysid结构具有对应的:FUNC:‘主体’BR/>函数,它将取一个SID或一个用户或组名或没有或现有的
:类:“主体”对象。
BU/>转储
~~~~BR/> BR/> BR/>派生的每一个对象:“Cyr.ViSysObjor”有一个BR/>是转储方法。用于显示其内部结构,可能是递归的,其中
一些结构本身就是winsys对象。这是为了更方便地在解释器中特别使用,例如从文件加载的安全结构。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在可能和有意义的情况下,使用了惰性迭代器,通常由生成器实现。这始于:mod:`fs`模块,其中
查询了数千个文件以获取信息,但通常在包中采用
context managers
~~~~~~~~~~~~~~~~~~~
ED,通过BrutiLB上下文管理器的BR/>或通过“`y-Enthux``”和''``ExtItI``'方法定义一个对象为BR/>它自己的上下文管理器。
上下文管理对象的例子包括:类:“IPC.MySturt”和
:类:“Security。Security”对象。修饰函数的示例包括:func:`security.change\u privileges`和:func:`security.impersonate`函数。
to do
----
windows api是巨大的;即使pywin32所公开的
数量也远远超过了我当前的需要和我可以支配的时间。这个包的实现很大程度上是由windows系统管理员在日常工作中的特殊需求驱动的。我的目的是以类似的方式包装windows功能,但是如果有人有特殊的需求,或者可以提供附加功能,让我们来了解一下。
winsys
==
enter winsys:the python windows administrator's toolkit.一个具有一致方法的模块集合,包装pywin32已经公开的windows api调用,添加一些cTypes,并给它们一种pythonic的感觉。这里没有什么是您不能用
10分钟和pywin32和sdk文档的副本来完成的。但都已经在这里了,
并且有一种更顽皮的感觉。
总是允许更复杂的场景
*将所有常量放在一个位置,根据它们的api用法对它们进行分组
*在可用的地方使用pywin32功能,在需要的地方使用ctype进行补充
*假设python的最新版本(至少2.5)
*充分利用上下文管理器(带语句)
*让每个对象能够干净地转储其内容及其子对象的内容
*保持对象方法,但提供方便的模块级函数
*对于类具有有用的工厂函数,可靠地接受字符串或对象参数
common features
----
winsys子类中的大多数对象都是:类:`core.\winsys object`类,它提供合理的默认值并定义常见功能,如转储函数。
以下特性在许多模块中都很常见:
pythonic命名
~~~~~~~~~~~~~~~~~~~~~
这有点争议,但在python社区中广泛采用的“带下划线的小写”约定之后,始终使用相同的命名约定
。最普遍的例外是:mod:`constants`模块中的
,在该模块中,windows常量用下划线``名称保留其
``大写'u。
许多功能已经公开为模块级的便利功能。因此,例如,在:mod:`fs`模块中,:class:`fs.file`
类提供了一个:meth:`fs.file.copy`方法,但在模块级别上的功能与:func:`fs.copy`相同。那样的话,您不必为了一个操作而实例化一个或多个对象。
factory函数
~~~~~~~~~~~~~~~~~~~~~~~~~~
大多数类都有一个相应的factory函数(通常小写字母为
相同的名称),该函数试图在
其参数是什么时更容易接受,并将它们转换为类的
自己的``````` init``方法需要什么。例如,类:`Br/>初始化器期望Pysid结构具有对应的:FUNC:‘主体’BR/>函数,它将取一个SID或一个用户或组名或没有或现有的
:类:“主体”对象。
BU/>转储
~~~~BR/> BR/> BR/>派生的每一个对象:“Cyr.ViSysObjor”有一个BR/>是转储方法。用于显示其内部结构,可能是递归的,其中
一些结构本身就是winsys对象。这是为了更方便地在解释器中特别使用,例如从文件加载的安全结构。
在可能和有意义的情况下,使用了惰性迭代器,通常由生成器实现。这始于:mod:`fs`模块,其中
查询了数千个文件以获取信息,但通常在包中采用
context managers
~~~~~~~~~~~~~~~~~~~
ED,通过BrutiLB上下文管理器的BR/>或通过“`y-Enthux``”和''``ExtItI``'方法定义一个对象为BR/>它自己的上下文管理器。
上下文管理对象的例子包括:类:“IPC.MySturt”和
:类:“Security。Security”对象。修饰函数的示例包括:func:`security.change\u privileges`和:func:`security.impersonate`函数。
to do
----
windows api是巨大的;即使pywin32所公开的
数量也远远超过了我当前的需要和我可以支配的时间。这个包的实现很大程度上是由windows系统管理员在日常工作中的特殊需求驱动的。我的目的是以类似的方式包装windows功能,但是如果有人有特殊的需求,或者可以提供附加功能,让我们来了解一下。