UIAHandler._remoteOps package

Subpackages

Submodules

UIAHandler._remoteOps.builder module

class UIAHandler._remoteOps.builder._RemoteBase(rob: RemoteOperationBuilder)

Bases: object

_mutable: bool = True
property rob: RemoteOperationBuilder
_robRef: ReferenceType[RemoteOperationBuilder] | None = None
isBound(toBuilder: RemoteOperationBuilder) bool
class UIAHandler._remoteOps.builder.Operand(rob: RemoteOperationBuilder, operandId: OperandId)

Bases: _RemoteBase

_sectionForInitInstructions: str | None = None
_defaultSectionForInitInstructions: str = 'main'
_operandId: OperandId | None = None
property operandId: OperandId
property sectionForInitInstructions: str
class UIAHandler._remoteOps.builder.InstructionBase

Bases: object

opCode: ClassVar[InstructionType]
abstract property params: dict[str, Any]
getByteCode() bytes
dumpInstruction() str
localExecute(registers: dict[OperandId, object])
_abc_impl = <_abc._abc_data object>
class UIAHandler._remoteOps.builder.GenericInstruction(opCode: 'lowLevel.InstructionType', **kwargs: 'Operand | _SimpleCData | ctypes.Array | ctypes.Structure')

Bases: InstructionBase

opCode: InstructionType
_params: dict[str, Operand | _SimpleCData | Array | Structure]
property params: dict[str, Operand | _SimpleCData | Array | Structure]
_abc_impl = <_abc._abc_data object>
class UIAHandler._remoteOps.builder.InstructionList

Bases: object

_modified = False
_byteCodeCache: bytes | None = None
_all: list[InstructionBase | str]
_instructions: list[InstructionBase]
_addItem(item: InstructionBase | str)
addComment(comment: str)
addInstruction(instruction: InstructionBase) int
addGenericInstruction(opCode: InstructionType, **params: Operand | _SimpleCData | Array | Structure) int
addMetaCommand(command: str)
getByteCode() bytes
getInstruction(index) InstructionBase
getInstructionCount() int
iterItems() Iterable[InstructionBase | str]
dumpInstructions() str
clear()
class UIAHandler._remoteOps.builder.RemoteOperationBuilder

Bases: object

_versionBytes: bytes = b'\x00\x00\x00\x00'
_sectionNames = ['static', 'const', 'main']
_lastOperandIdRequested = OperandId 1
_defaultSection: str = 'main'
property lastOperandIdRequested: OperandId
requestNewOperandId() OperandId
getInstructionList(section) InstructionList
getDefaultInstructionList() InstructionList
overrideDefaultSection(section: str)
getAllInstructions() list[InstructionBase]
getByteCode() bytes
dumpInstructions() str

UIAHandler._remoteOps.localExecute module

class UIAHandler._remoteOps.localExecute.LocalExecutionResult(status: 'int', errorLocation: 'int', extendedError: 'int', results: 'dict[lowLevel.OperandId, object]')

Bases: ExecutionResult

results: dict[OperandId, object]
hasOperand(operandId: OperandId) bool
getOperand(operandId: OperandId) object
exception UIAHandler._remoteOps.localExecute.HaltException

Bases: Exception

exception UIAHandler._remoteOps.localExecute.BreakLoopException

Bases: Exception

exception UIAHandler._remoteOps.localExecute.BadOperationStatusException

Bases: Exception

exception UIAHandler._remoteOps.localExecute.InstructionLimitExceededException

Bases: Exception

class UIAHandler._remoteOps.localExecute.LocalOperationResultSet(_registers: 'dict[lowLevel.OperandId, object]', status: 'int', errorLocation: 'int', extendedError: 'int')

Bases: object

_registers: dict[OperandId, object]
status: int
errorLocation: int
extendedError: int
hasOperand(operandId: OperandId) bool
getOperand(operandId: OperandId) object
class UIAHandler._remoteOps.localExecute.LocalExecutor(maxInstructions: int = 10000)

Bases: Executor

_operationStatus: int = 0
_instructions: list[InstructionBase]
_ip: int
_instructionLoopDepth = 0
_instructionCounter = 0
_maxInstructions: int
_registers: dict[OperandId, object]
_requestedResults: set[OperandId]
property operationStatus: int
storeRegisterValue(operandId: OperandId, value: object)
fetchRegisterValue(operandId: OperandId) object
_operationStatusFromException(e: Exception) int
_execute_ForkIfFalse(instruction: ForkIfFalse)
_execute_NewLoopBlock(instruction: NewLoopBlock)
_execute_NewTryBlock(instruction: NewTryBlock)
_execute_ContinueLoop(instruction: ContinueLoop, continueAddress: int | None)
_execute_SetOperationStatus(instruction: SetOperationStatus)
_execute_GetOperationStatus(instruction: GetOperationStatus)
_executeInstruction(instruction: InstructionBase, breakAddress: int | None = None, continueAddress: int | None = None)
_instructionLoop(stopInstruction: Type[InstructionBase] | None = None, breakAddress: int | None = None, continueAddress: int | None = None, catchAddress: int | None = None)
importElement(operandId: OperandId, element: IUIAutomationElement)
importTextRange(operandId: OperandId, textRange: IUIAutomationTextRange)
addToResults(operandId: OperandId)
loadInstructions(rob: RemoteOperationBuilder)
execute() LocalExecutionResult

UIAHandler._remoteOps.lowLevel module

class UIAHandler._remoteOps.lowLevel.OperandId

Bases: c_ulong

An operand ID is a unique identifier for an operand (or register) in the remote operation VM. It is an unsigned 32 bit integer.

class UIAHandler._remoteOps.lowLevel.RelativeOffset

Bases: c_long

A relative offset is a signed 32 bit integer that represents an offset from the current instruction pointer.

class UIAHandler._remoteOps.lowLevel.RemoteOperationResultSet(pResults: c_void_p)

Bases: object

Wraps a Windows.UI.UIAutomation.Core.AutomationRemoteOperationResultSet.

property errorLocation: int

The index of the instruction where the error occurred.

property extendedError: int

The error HRESULT produced by the instruction that caused the error.

property status: RemoteOperationStatus

The status of the remote operation. E.g. success, malformed bytecode, etc.

hasOperand(operandId: OperandId) bool

Returns true if the result set contains an operand with the given ID. I.e. The operand was requested as a result before execution, and the remote operation successfully produced a value for it.

getOperand(operandId: OperandId) object

Returns the value of the operand with the given ID. In order to succeed, the operand must have been requested as a result before execution, and the remote operation must have successfully produced a value for it.

class UIAHandler._remoteOps.lowLevel.RemoteOperation

Bases: object

Creates and wraps a Windows.UI.UIAutomation.Core.CoreAutomationRemoteOperation.

importElement(operandId: OperandId, element: IUIAutomationElement)

Imports a UI automation element into the remote operation VM at the given operand ID. :param operandId: The operand ID to import the element into. :param element: The element to import.

importTextRange(operandId: OperandId, textRange: IUIAutomationTextRange)

Imports a UI automation text range into the remote operation VM at the given operand ID. :param operandId: The operand ID to import the text range into. :param textRange: The text range to import.

addToResults(operandId: OperandId)

Requests that an operand be made available after execution in the results set. :param operandId: The operand ID to add to the results.

isOpcodeSupported(opcode: InstructionType) bool

Returns true if the given opcode (instruction) is supported by the remote operation VM. :param opcode: The opcode to check.

execute(byteCode: bytes) RemoteOperationResultSet

Executes the given byte code in the remote operation VM. :param byteCode: The byte code array to execute.

class UIAHandler._remoteOps.lowLevel.RemoteOperationStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Success = 0
MalformedBytecode = 1
InstructionLimitExceeded = 2
UnhandledException = 3
ExecutionFailure = 4
class UIAHandler._remoteOps.lowLevel.InstructionType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Nop = 0
Set = 1
ForkIfTrue = 2
ForkIfFalse = 3
Fork = 4
Halt = 5
NewLoopBlock = 6
EndLoopBlock = 7
BreakLoop = 8
ContinueLoop = 9
NewTryBlock = 10
EndTryBlock = 11
SetOperationStatus = 12
GetOperationStatus = 13
Add = 14
Subtract = 15
Multiply = 16
Divide = 17
BinaryAdd = 18
BinarySubtract = 19
BinaryMultiply = 20
BinaryDivide = 21
InPlaceBoolNot = 22
InPlaceBoolAnd = 23
InPlaceBoolOr = 24
BoolNot = 25
BoolAnd = 26
BoolOr = 27
Compare = 28
NewInt = 29
NewUint = 30
NewBool = 31
NewDouble = 32
NewChar = 33
NewString = 34
NewPoint = 35
NewRect = 36
NewArray = 37
NewStringMap = 38
NewNull = 39
GetPointProperty = 40
GetRectProperty = 41
RemoteArrayAppend = 42
RemoteArraySetAt = 43
RemoteArrayRemoveAt = 44
RemoteArrayGetAt = 45
RemoteArraySize = 46
RemoteStringMapInsert = 47
RemoteStringMapRemove = 48
RemoteStringMapHasKey = 49
RemoteStringMapLookup = 50
RemoteStringMapSize = 51
RemoteStringGetAt = 52
RemoteStringSubstr = 53
RemoteStringConcat = 54
RemoteStringSize = 55
GetPropertyValue = 56
Navigate = 57
IsNull = 58
IsNotSupported = 59
IsMixedAttribute = 60
IsBool = 61
IsInt = 62
IsUint = 63
IsDouble = 64
IsChar = 65
IsString = 66
IsPoint = 67
IsRect = 68
IsArray = 69
IsStringMap = 70
IsElement = 71
NewGuid = 72
IsGuid = 73
LookupId = 74
LookupGuid = 75
NewCacheRequest = 76
IsCacheRequest = 77
CacheRequestAddProperty = 78
CacheRequestAddPattern = 79
PopulateCache = 80
Stringify = 81
GetMetadataValue = 82
CallExtension = 83
IsExtensionSupported = 84
TextRangeClone = 656277763
TextRangeCompare = 656277764
TextRangeCompareEndpoints = 656277765
TextRangeExpandToEnclosingUnit = 656277766
TextRangeFindAttribute = 656277767
TextRangeFindText = 656277768
TextRangeGetAttributeValue = 656277769
TextRangeGetBoundingRectangles = 656277770
TextRangeGetEnclosingElement = 656277771
TextRangeGetText = 656277772
TextRangeMove = 656277773
TextRangeMoveEndpointByUnit = 656277774
TextRangeMoveEndpointByRange = 656277775
TextRangeSelect = 656277776
TextRangeAddToSelection = 656277777
TextRangeRemoveFromSelection = 656277778
TextRangeScrollIntoView = 656277779
TextRangeGetChildren = 656277780
TextRangeShowContextMenu = 656277781
class UIAHandler._remoteOps.lowLevel.ComparisonType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Equal = 0
NotEqual = 1
GreaterThan = 2
LessThan = 3
GreaterThanOrEqual = 4
LessThanOrEqual = 5
class UIAHandler._remoteOps.lowLevel.NavigationDirection(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Parent = 0
NextSibling = 1
PreviousSibling = 2
FirstChild = 3
LastChild = 4
class UIAHandler._remoteOps.lowLevel.TextUnit(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Character = 0
Format = 1
Word = 2
Line = 3
Paragraph = 4
Page = 5
Document = 6
class UIAHandler._remoteOps.lowLevel.TextPatternRangeEndpoint(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Start = 0
End = 1
class UIAHandler._remoteOps.lowLevel.PropertyId(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

LiveSetting = 30135
IsTransformPattern2Available = 30134
IsSpreadsheetItemPatternAvailable = 30132
Transform2CanZoom = 30133
IsDockPatternAvailable = 30027
IsGridItemPatternAvailable = 30029
IsExpandCollapsePatternAvailable = 30028
IsTextPattern2Available = 30119
StylesExtendedProperties = 30126
IsTextChildPatternAvailable = 30136
SpreadsheetItemFormula = 30129
IsDragPatternAvailable = 30137
DragIsGrabbed = 30138
AnnotationAnnotationTypeName = 30114
DragDropEffect = 30139
DragDropEffects = 30140
IsDropTargetPatternAvailable = 30141
OutlineColor = 30161
ItemStatus = 30026
DropTargetDropTargetEffect = 30142
DropTargetDropTargetEffects = 30143
IsObjectModelPatternAvailable = 30112
DragGrabbedItems = 30144
Transform2ZoomLevel = 30145
Transform2ZoomMinimum = 30146
AcceleratorKey = 30006
IsTextEditPatternAvailable = 30149
FlowsFrom = 30148
HasKeyboardFocus = 30008
IsPeripheral = 30150
Transform2ZoomMaximum = 30147
IsCustomNavigationPatternAvailable = 30151
AnnotationAuthor = 30115
IsSelectionItemPatternAvailable = 30036
ClassName = 30012
PositionInSet = 30152
SizeOfSet = 30153
Level = 30154
AnnotationTypes = 30155
AnnotationDateTime = 30116
AnnotationObjects = 30156
Name = 30005
IsScrollItemPatternAvailable = 30035
IsTableItemPatternAvailable = 30039
LandmarkType = 30157
IsRangeValuePatternAvailable = 30033
LocalizedLandmarkType = 30158
IsScrollPatternAvailable = 30034
FullDescription = 30159
IsSelectionPatternAvailable = 30037
IsTablePatternAvailable = 30038
SpreadsheetItemAnnotationObjects = 30130
AnnotationTarget = 30117
IsAnnotationPatternAvailable = 30118
FillColor = 30160
FillType = 30162
VisualEffects = 30163
OutlineThickness = 30164
CenterPoint = 30165
Rotation = 30166
Size = 30167
IsSelectionPattern2Available = 30168
Selection2FirstSelectedItem = 30169
Selection2LastSelectedItem = 30170
Selection2CurrentSelectedItem = 30171
Selection2ItemCount = 30172
HeadingLevel = 30173
IsDialog = 30174
DockDockPosition = 30069
IsTextPatternAvailable = 30040
IsTogglePatternAvailable = 30041
IsTransformPatternAvailable = 30042
IsValuePatternAvailable = 30043
IsWindowPatternAvailable = 30044
ValueValue = 30045
ValueIsReadOnly = 30046
RangeValueValue = 30047
RangeValueIsReadOnly = 30048
RangeValueMinimum = 30049
RangeValueMaximum = 30050
RangeValueLargeChange = 30051
RangeValueSmallChange = 30052
ScrollHorizontalScrollPercent = 30053
ScrollHorizontalViewSize = 30054
ScrollVerticalScrollPercent = 30055
ScrollVerticalViewSize = 30056
ScrollHorizontallyScrollable = 30057
ScrollVerticallyScrollable = 30058
SelectionSelection = 30059
SelectionCanSelectMultiple = 30060
SelectionIsSelectionRequired = 30061
GridRowCount = 30062
GridColumnCount = 30063
GridItemRow = 30064
GridItemColumn = 30065
GridItemRowSpan = 30066
GridItemColumnSpan = 30067
GridItemContainingGrid = 30068
ExpandCollapseExpandCollapseState = 30070
MultipleViewSupportedViews = 30072
MultipleViewCurrentView = 30071
AnnotationAnnotationTypeId = 30113
Culture = 30015
IsRequiredForForm = 30025
LegacyIAccessibleSelection = 30099
AriaRole = 30101
ItemType = 30021
LegacyIAccessibleKeyboardShortcut = 30098
LegacyIAccessibleDefaultAction = 30100
LegacyIAccessibleDescription = 30094
LegacyIAccessibleHelp = 30097
TableItemRowHeaderItems = 30084
TableItemColumnHeaderItems = 30085
LegacyIAccessibleState = 30096
ToggleToggleState = 30086
TransformCanMove = 30087
LabeledBy = 30018
NativeWindowHandle = 30020
IsPassword = 30019
HelpText = 30013
IsContentElement = 30017
IsControlElement = 30016
FrameworkId = 30024
Orientation = 30023
ClickablePoint = 30014
TransformCanRotate = 30089
IsLegacyIAccessiblePatternAvailable = 30090
LegacyIAccessibleValue = 30093
LegacyIAccessibleChildId = 30091
LegacyIAccessibleName = 30092
LegacyIAccessibleRole = 30095
TransformCanResize = 30088
IsOffscreen = 30022
IsSpreadsheetPatternAvailable = 30128
ControllerFor = 30104
IsEnabled = 30010
IsItemContainerPatternAvailable = 30108
OptimizeForVisualContent = 30111
IsSynchronizedInputPatternAvailable = 30110
IsVirtualizedItemPatternAvailable = 30109
IsInvokePatternAvailable = 30031
IsMultipleViewPatternAvailable = 30032
IsKeyboardFocusable = 30009
FlowsTo = 30106
AccessKey = 30007
AutomationId = 30011
ProcessId = 30002
SpreadsheetItemAnnotationTypes = 30131
IsDataValidForForm = 30103
ProviderDescription = 30107
StylesStyleId = 30120
BoundingRectangle = 30001
RuntimeId = 30000
DescribedBy = 30105
ControlType = 30003
IsGridPatternAvailable = 30030
StylesFillPatternColor = 30125
StylesFillPatternStyle = 30123
LocalizedControlType = 30004
StylesStyleName = 30121
StylesFillColor = 30122
AriaProperties = 30102
StylesShape = 30124
IsStylesPatternAvailable = 30127
WindowIsModal = 30077
TableRowHeaders = 30081
WindowWindowVisualState = 30075
SelectionItemIsSelected = 30079
TableColumnHeaders = 30082
WindowCanMinimize = 30074
TableRowOrColumnMajor = 30083
WindowWindowInteractionState = 30076
WindowCanMaximize = 30073
WindowIsTopmost = 30078
SelectionItemSelectionContainer = 30080
class UIAHandler._remoteOps.lowLevel.AttributeId(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

BackgroundColor = 40001
BulletStyle = 40002
StrikethroughColor = 40025
ForegroundColor = 40008
UnderlineStyle = 40030
AnnotationObjects = 40032
CapStyle = 40003
Culture = 40004
FontName = 40005
FontSize = 40006
FontWeight = 40007
HorizontalTextAlignment = 40009
Tabs = 40027
TextFlowDirections = 40028
UnderlineColor = 40029
IndentationFirstLine = 40010
IsReadOnly = 40015
IndentationLeading = 40011
IndentationTrailing = 40012
IsHidden = 40013
StrikethroughStyle = 40026
IsItalic = 40014
IsSubscript = 40016
IsSuperscript = 40017
MarginBottom = 40018
MarginLeading = 40019
MarginTop = 40020
MarginTrailing = 40021
OutlineStyles = 40022
OverlineColor = 40023
OverlineStyle = 40024
AnnotationTypes = 40031
StyleName = 40033
StyleId = 40034
IsActive = 40036
SelectionActiveEnd = 40037
CaretPosition = 40038
CaretBidiMode = 40039
LineSpacing = 40040
BeforeParagraphSpacing = 40041
AfterParagraphSpacing = 40042
SayAsInterpretAs = 40043
AnimationStyle = 40000
class UIAHandler._remoteOps.lowLevel.StyleId(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: IntEnum

Custom = 70000
Heading1 = 70001
Heading2 = 70002
Heading3 = 70003
Heading4 = 70004
Heading5 = 70005
Heading6 = 70006
Heading7 = 70007
Heading8 = 70008
Heading9 = 70009
Title = 70010
Subtitle = 70011
Normal = 70012
Emphasis = 70013
Quote = 70014
BulletedList = 70015
NumberedList = 70016

UIAHandler._remoteOps.operation module

class UIAHandler._remoteOps.operation.ExecutionResult(status: 'int', errorLocation: 'int', extendedError: 'int')

Bases: object

status: int
errorLocation: int
extendedError: int
hasOperand(operandId: OperandId) bool
getOperand(operandId: OperandId) RemoteBaseObject
class UIAHandler._remoteOps.operation.Executor

Bases: object

importElement(operandId: OperandId, element: IUIAutomationElement)
importTextRange(operandId: OperandId, textRange: IUIAutomationTextRange)
addToResults(operandId: OperandId)
loadInstructions(rob: RemoteOperationBuilder)
execute() ExecutionResult
exception UIAHandler._remoteOps.operation.OperationException(operation: Operation, executionResult: ExecutionResult)

Bases: RuntimeError

operation: Operation
executionResult: ExecutionResult
errorLocation: int | None = None
extendedError: int | None = None
instructionRecord: InstructionBase | None = None
exception UIAHandler._remoteOps.operation.ExecutionFailureException(operation: Operation, executionResult: ExecutionResult)

Bases: OperationException

exception UIAHandler._remoteOps.operation.MalformedBytecodeException(operation: Operation, executionResult: ExecutionResult)

Bases: OperationException

exception UIAHandler._remoteOps.operation.InstructionLimitExceededException(operation: Operation, executionResult: ExecutionResult)

Bases: OperationException

exception UIAHandler._remoteOps.operation.UnhandledException(operation: Operation, executionResult: ExecutionResult)

Bases: OperationException

exception UIAHandler._remoteOps.operation.NoReturnException

Bases: Exception

class UIAHandler._remoteOps.operation.RemoteExecutionResult(status: 'int', errorLocation: 'int', extendedError: 'int', resultSet: 'lowLevel.RemoteOperationResultSet')

Bases: ExecutionResult

resultSet: RemoteOperationResultSet
hasOperand(operandId: OperandId) bool
getOperand(operandId: OperandId) object
class UIAHandler._remoteOps.operation.RemoteExecutor

Bases: Executor

_isConnectionBound = False
_byteCode: bytes = b''
_ro: RemoteOperation
importElement(operandId: OperandId, element: IUIAutomationElement)
importTextRange(operandId: OperandId, textRange: IUIAutomationTextRange)
addToResults(operandId: OperandId)
loadInstructions(rob: RemoteOperationBuilder)
execute() ExecutionResult
class UIAHandler._remoteOps.operation.Operation(enableCompiletimeLogging: bool = False, enableRuntimeLogging: bool = False, localMode: bool = False)

Bases: object

_remoteLog: RemoteString | None = None
_returnIdOperand: RemoteInt | None = None
_yieldListOperand: RemoteArray | None = None
_built = False
_executionCount = 0
_compiletimeLoggingEnabled: bool
_runtimeLoggingEnabled: bool
_executorClass

alias of RemoteExecutor

_rob: RemoteOperationBuilder
_importedElements: dict[OperandId, IUIAutomationElement]
_importedTextRanges: dict[OperandId, IUIAutomationTextRange]
_requestedResults: dict[OperandId, RemoteBaseObject]
_staticOperands: list[RemoteBaseObject]
importElement(element: IUIAutomationElement, operandId: OperandId | None = None) RemoteElement
importTextRange(textRange: IUIAutomationTextRange, operandId: OperandId | None = None) RemoteTextRange
addToResults(*operands: RemoteBaseObject)
_registerStaticOperand(operand: RemoteBaseObject)
_refreshStaticInstructions()
buildContext()
buildFunction(func: Callable[[RemoteAPI], None]) Operation
buildIterableFunction(func: Callable[[RemoteAPI], None]) Operation
_execute() ExecutionResult
_dumpRemoteLog()
_dumpCompiletimeLog()
_executeUntilSuccess(maxTries: int) Generator[ExecutionResult, None, None]
execute(maxTries: int = 1) Any
iterExecute(maxTries: int = 1) Generator[Any, None, None]

UIAHandler._remoteOps.remoteAPI module

class UIAHandler._remoteOps.remoteAPI.RemoteAPI(op: Operation, enableRemoteLogging: bool = False)

Bases: _RemoteBase

_rob: builder.RemoteOperationBuilder
_op: operation.Operation
_logObj: RemoteString | None = None
Return(*values: RemoteBaseObject | int | float | str | bool | None)
Yield(*values: RemoteBaseObject | int | float | str | bool | None)
_newObject_RemoteType = ~_newObject_RemoteType
_newObject(RemoteType: Type[_newObject_RemoteType], value: Any, static: bool = False) _newObject_RemoteType
newUint(value: int = 0, static: bool = False) RemoteUint
newInt(value: int = 0, static: bool = False) RemoteInt
newFloat(value: float = 0.0, static: bool = False) RemoteFloat
newString(value: str = '', static: bool = False) RemoteString
newBool(value: bool = False, static: bool = False) RemoteBool
newGuid(value: GUID | str | None = None, static: bool = False) RemoteGuid
newVariant() RemoteVariant
newArray() RemoteArray
newElement(value: IUIAutomationElement | None = None, static: bool = False) RemoteElement
newTextRange(value: IUIAutomationTextRange | None = None, static: bool = False) RemoteTextRange
getOperationStatus() RemoteInt
setOperationStatus(status: RemoteInt | int)
_scopeInstructionJustExited: instructions.InstructionBase | None = None
ifBlock(condition: RemoteBool, silent: bool = False)
elseBlock(silent: bool = False)
continueLoop()
breakLoop()
whileBlock(conditionBuilderFunc: Callable[[], RemoteBool], silent: bool = False)
_range_intTypeVar = ~_range_intTypeVar
forEachNumInRange(start: _range_intTypeVar | int, stop: _range_intTypeVar | int, step: _range_intTypeVar | int = 1) Generator[RemoteIntBase, None, None]
forEachItemInArray(array: RemoteArray) Generator[RemoteVariant, None, None]
tryBlock(silent: bool = False)
catchBlock(silent: bool = False)
halt()
logRuntimeMessage(*args: str | RemoteBaseObject) None
getLogObject() RemoteString | None
addCompiletimeComment(comment: str)

UIAHandler._remoteOps.remoteAlgorithms module

UIAHandler._remoteOps.remoteAlgorithms.remote_forEachUnitInTextRange(ra: RemoteAPI, textRange: RemoteTextRange, unit: RemoteIntEnum[TextUnit] | TextUnit, reverse: bool = False) Generator[RemoteTextRange, None, None]

UIAHandler._remoteOps.remoteFuncWrapper module

class UIAHandler._remoteOps.remoteFuncWrapper._BaseRemoteFuncWrapper

Bases: object

generateArgsKwargsString(*args, **kwargs) str
_execRawFunc(func: ~typing.Callable[[~typing.Concatenate[~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_self, ~_remoteFunc_paramSpec]], ~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_return], funcSelf: ~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_self, *args: ~typing.~_remoteFunc_paramSpec, **kwargs: ~typing.~_remoteFunc_paramSpec) _remoteFunc_return
class UIAHandler._remoteOps.remoteFuncWrapper.RemoteMethodWrapper(mutable: bool = False)

Bases: _BaseRemoteFuncWrapper

_mutable: bool
_execRawFunc(func: ~typing.Callable[[~typing.Concatenate[~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_self, ~_remoteFunc_paramSpec]], ~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_return], funcSelf: ~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_self, *args: ~typing.~_remoteFunc_paramSpec, **kwargs: ~typing.~_remoteFunc_paramSpec) _remoteFunc_return
class UIAHandler._remoteOps.remoteFuncWrapper.RemoteContextManager

Bases: _BaseRemoteFuncWrapper

_execRawFunc(func: ~typing.Callable[[~typing.Concatenate[~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_self, ~_remoteFunc_paramSpec]], ~typing.ContextManager[~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_return]], funcSelf: ~UIAHandler._remoteOps.remoteFuncWrapper._remoteFunc_self, *args: ~typing.~_remoteFunc_paramSpec, **kwargs: ~typing.~_remoteFunc_paramSpec) Generator[_remoteFunc_return, None, None]