powcshell.knownfolder module

目次

powcshell.knownfolder module#

デスクトップやマイドキュメントのような既知のフォルダ。

主なクラスは KnownFolderManagerKnownFolder です。

class powcshell.knownfolder.FffpMode(*values)#

ベースクラス: IntEnum

FFFP_MODE

EXACT_MATCH = 0#
NEAREST_PARENT_MATCH = 1#
class powcshell.knownfolder.IKnownFolder#

ベースクラス: IUnknown

GetCategory = <COM method offset 4: WinFunctionType>#
GetFolderDefinition = <COM method offset 11: WinFunctionType>#
GetFolderType = <COM method offset 9: WinFunctionType>#
GetIDList = <COM method offset 8: WinFunctionType>#
GetId = <COM method offset 3: WinFunctionType>#
GetPath = <COM method offset 6: WinFunctionType>#
GetRedirectionCapabilities = <COM method offset 10: WinFunctionType>#
GetShellItem = <COM method offset 5: WinFunctionType>#
SetPath = <COM method offset 7: WinFunctionType>#
class powcshell.knownfolder.IKnownFolderManager#

ベースクラス: IUnknown

FindFolderFromIDList = <COM method offset 11: WinFunctionType>#
FindFolderFromPath = <COM method offset 10: WinFunctionType>#
FolderIdFromCsidl = <COM method offset 3: WinFunctionType>#
FolderIdToCsidl = <COM method offset 4: WinFunctionType>#
GetFolder = <COM method offset 6: WinFunctionType>#
GetFolderByName = <COM method offset 7: WinFunctionType>#
GetFolderIds = <COM method offset 5: WinFunctionType>#
Redirect = <COM method offset 12: WinFunctionType>#
RegisterFolder = <COM method offset 8: WinFunctionType>#
UnregisterFolder = <COM method offset 9: WinFunctionType>#
class powcshell.knownfolder.KnownFolder(o: Any)#

ベースクラス: object

既知フォルダ。IKnownFolderインターフェイスのラッパーです。

property category: KnownFolderCategory#
property category_nothrow: ComResult[KnownFolderCategory]#
property folder_definition: KnownFolderDefinition#
property folder_definition_nothrow: ComResult[KnownFolderDefinition]#
property foldertype: GUID#

フォルダの種類(FolderTypeID定数)を取得します。

property foldertype_nothrow: ComResult[GUID]#

フォルダの種類(FolderTypeID定数)を取得します。

get_idlist(flags: KnownFolderFlag) ItemIDList#
get_idlist_nothrow(flags: KnownFolderFlag) ComResult[ItemIDList]#
get_path(flags: KnownFolderFlag) str#
get_path_nothrow(flags: KnownFolderFlag) ComResult[str]#
get_shellitem(flags: KnownFolderFlag) ShellItem2#
get_shellitem_nothrow(flags: KnownFolderFlag) ComResult[ShellItem2]#
get_shellitem_v2(flags: KnownFolderFlag) ShellItem#
get_shellitem_v2_nothrow(flags: KnownFolderFlag) ComResult[ShellItem]#
property id: GUID#
property id_nothrow: ComResult[GUID]#
property redirection_capabilitiy_nothrow: ComResult[KnownFolderRedirectionCapability]#
property redirection_capability: KnownFolderRedirectionCapability#
set_path(flags: KnownFolderFlag, path: str) None#
set_path_nothrow(flags: KnownFolderFlag, path: str) ComResult[None]#
property wrapped_obj: c_void_p#
class powcshell.knownfolder.KnownFolderCategory(*values)#

ベースクラス: IntEnum

KF_CATEGORY

COMMON = 3#
FIXED = 2#
PERUSER = 4#
VIRTUAL = 1#
class powcshell.knownfolder.KnownFolderDefinition(category: KnownFolderCategory, name: str | None, description: str | None, parent_folderid: GUID, relative_path: str | None, parsing_name: str | None, tooltip: str | None, localized_name: str | None, icon: str | None, security: str | None, attributes: int, flags: KnownFolderDefinitionFlag, foldertypeid: GUID)#

ベースクラス: object

フォルダ定義情報。KNOWNFOLDER_DEFINITION構造体のラッパーです。

attributes: int#
category: KnownFolderCategory#
description: str | None#
static empty() KnownFolderDefinition#
flags: KnownFolderDefinitionFlag#
foldertypeid: GUID#

FolderTypeIDクラスのGUID定数。

icon: str | None#
localized_name: str | None#
name: str | None#
parent_folderid: GUID#
parsing_name: str | None#
relative_path: str | None#
security: str | None#
tooltip: str | None#
class powcshell.knownfolder.KnownFolderDefinitionFlag(*values)#

ベースクラス: IntFlag

KF_DEFINITION_FLAGS

DEFAULT = 0#
LOCAL_REDIRECT_ONLY = 2#
NO_REDIRECT_UI = 64#
PRECREATE = 8#
PUBLISHEXPANDEDPATH = 32#
ROAMABLE = 4#
STREAM = 16#
class powcshell.knownfolder.KnownFolderFlag(*values)#

ベースクラス: IntFlag

KNOWN_FOLDER_FLAG

ALIAS_ONLY = 2147483648#
CREATE = 32768#
DEFAULT = 0#
DEFAULT_PATH = 1024#
DONT_UNEXPAND = 8192#
DONT_VERIFY = 16384#
FORCE_APPCONTAINER_REDIRECTION = 131072#
FORCE_APP_DATA_REDIRECTION = 524288#
FORCE_PACKAGE_REDIRECTION = 131072#
INIT = 2048#
NOT_PARENT_RELATIVE = 512#
NO_ALIAS = 4096#
NO_APPCONTAINER_REDIRECTION = 65536#
NO_PACKAGE_REDIRECTION = 65536#
RETURN_FILTER_REDIRECTION_TARGET = 262144#
SIMPLE_IDLIST = 256#
class powcshell.knownfolder.KnownFolderManager(o: Any)#

ベースクラス: object

既知フォルダマネージャ。IKnownFolderManagerインターフェイスのラッパーです。

サンプル

>>> kfmanager = KnownFolderManager.create()
static create() KnownFolderManager#
find_folderfromidlist(pidl: c_void_p) KnownFolder#
find_folderfromidlist_nothrow(pidl: c_void_p) ComResult[KnownFolder]#
find_folderfrompath(path: str, mode: FffpMode) KnownFolder#
find_folderfrompath_nothrow(path: str, mode: FffpMode) ComResult[KnownFolder]#
folderid_from_csidl(csidl: int) GUID#
folderid_from_csidl_nothrow(csidl: int) ComResult[GUID]#
folderid_to_csidl(folderid: GUID) int#
folderid_to_csidl_nothrow(folderid: GUID) ComResult[int]#
property folderids: tuple[GUID]#
property folderids_nothrow: ComResult[tuple[GUID]]#
get_folder(folderid: GUID) KnownFolder#
get_folder_nothrow(folderid: GUID) ComResult[KnownFolder]#
get_folderbyname(name: str) KnownFolder#
get_folderbyname_nothrow(name: str) ComResult[KnownFolder]#
redirect(folderid: GUID, flags: KnownFolderRedirectFlag, target_path: str | None = None, exclusions: Sequence[GUID] | None = None, window_handle: int = 0) str#
redirect_nothrow(folderid: GUID, flags: KnownFolderRedirectFlag, target_path: str | None = None, exclusions: Sequence[GUID] | None = None, window_handle: int = 0) ComResult[str]#
register_folder(folderid: GUID, definition: KnownFolderDefinition) None#
register_folder_nothrow(folderid: GUID, definition: KnownFolderDefinition) ComResult[None]#
unregister_folder(folderid: GUID) None#
unregister_folder_nothrow(folderid: GUID) ComResult[None]#
property wrapped_obj: c_void_p#
class powcshell.knownfolder.KnownFolderRedirectFlag(*values)#

ベースクラス: IntFlag

KF_REDIRECT_FLAGS

CHECK_ONLY = 16#
COPY_CONTENTS = 512#
COPY_SOURCE_DACL = 2#
DEL_SOURCE_CONTENTS = 1024#
EXCLUDE_ALL_KNOWN_SUBFOLDERS = 128#
OWNER_USER = 4#
PIN = 128#
SET_OWNER_EXPLICIT = 8#
UNPIN = 64#
USER_EXCLUSIVE = 1#
WITH_UI = 32#
class powcshell.knownfolder.KnownFolderRedirectionCapability(*values)#

ベースクラス: IntFlag

KF_REDIRECTION_CAPABILITIES

ALLOW_ALL = 255#
DENY_ALL = 1048320#
DENY_PERMISSIONS = 1024#
DENY_POLICY = 512#
DENY_POLICY_REDIRECTED = 256#
REDIRECTABLE = 1#