Eval

首页  后退  前进

Eval
down2

Eval

返回字符串变量的值.

 

Eval ( string )

参数

string

变量名称字符串.

返回值

成功:

返回变量的值.

失败:

返回 "" (空字符串), @error 设置 为非 0 值.

备注

如果使用 Eval() 读取变量, 大多数情况下 Assign() 用于创建/写入变量, IsDeclared() 用于检查变量是否存在.

 

函数示例

#include <MsgBoxConstants.au3>
Example()
Func Example()
    ; Assign the variable string sString with data.
    Assign("sString", "This is a string which is declared using the function Assign")
    ; Find the value of the variable string sString and assign to the variable $sEvalString.
    Local $sEvalString = Eval("sString")
    ; Display the value of $sEvalString. This should be the same value as $sString.
    MsgBox($MB_SYSTEMMODAL, "", $sEvalString)
EndFunc   ;==>Example

----------------------------------------

 

该函数可以通过命令 exect 调用

参见:

Assign, IsDeclared, Execute

例子
copy

exect=$var_s1='Hello'||$var_s2=Eval('var'&'_'&'s1')||_ViewValues('$var_s2') ;; 通过名称将$var_s2赋给变量$var_s1的示例

 

exect=$var_b=Binary('0x00204060')||$var_i=IsBinary(Eval('var_b'))||_ViewValues($var_i) ;; 返回1,因为变量$var_b是二进制数据类型

 

exect=$var_b=Binary('0x00204060')||$var_i=BinaryLen(Eval('var_b'))||_ViewValues('Размер~~в~~байтах:~~'&$var_i) ;; 返回字节数

 

exect=$var_b1=Binary('0x10203040')||$var_b2=BinaryMid(Eval('var_b1'),2,2)||_ViewValues(Eval('var_b2')) ;; 返回第3个字节

 

exect=$var_b=StringToBinary('Hello!',1)||_ViewValues('$var_b')||$var_s=BinaryToString(Eval('var_b'),1)||_ViewValues('$var_s') ;; 将字符串转换为ANSI二进制类型和的例子

 

exect=$var_b=StringToBinary('Hello!',2)||_ViewValues('$var_b')||$var_s=BinaryToString(Eval('var_b'),2)||_ViewValues('$var_s') ;; 将字符串转换为二进制类型UTF-16 LE和返回的示例

 

exect=$var_b=StringToBinary('Hello!',3)||_ViewValues('$var_b')||$var_s=BinaryToString(Eval('var_b'),3)||_ViewValues('$var_s') ;; 将字符串转换为二进制类型UTF-16 BE和返回的示例

 

exect=$var_b=StringToBinary('Hello!',4)||_ViewValues('$var_b')||$var_s=BinaryToString(Eval('var_b'),4)||_ViewValues('$var_s') ;; 将字符串转换为二进制类型UTF-8和返回的示例

 

exect=$var_i=10||$var_i=String($var_i)||_ViewValues(VarGetType(Eval('var_i'))) ;; 将变量$var_i转换为字符串类型的示例

 

exect=$var_aa=StringSplit('aa|bb|aa|cc|dd|aa|bb|ee|aa','|',2)||$var_i=IsArray(Eval('var_aa'))||_ViewValues($var_i)||$var_aa='Hello'||$var_i=IsArray(Eval('var_aa'))||_ViewValues($var_i) ;; 检查的一个例子是变量数组欧姆或无

 

exect=$var_n=3.14159||$var_i=IsNumber(Eval('var_n'))||_ViewValues($var_i)||$var_n='Hello'||$var_i=IsNumber(Eval('var_n'))||_ViewValues($var_i) ;; 示例检查变量是否是数字数据类型

 

exect=$var_aa=StringSplit('1|2|3|4','|',2)||$var_i=IsString(Eval('var_aa'))||_ViewValues($var_i)||$var_aa='Hello'||$var_i=IsString(Eval('var_aa'))||_ViewValues($var_i) ;; 样本检查是一个变量字符串数据类型

 

exect=$var_x=StringSplit('1|2|3|4','|',2)||_ViewValues(VarGetType(Eval('var_x')),'Тип~~данных~~переменной~~$var_x') ;; 数据类型定义

 

exect=$var_x=12345||_ViewValues(VarGetType(Eval('var_x')),'Тип~~данных~~переменной~~$var_x') ;; 数据类型定义

 

exect=$var_x=12345.001||_ViewValues(VarGetType(Eval('var_x')),'Тип~~данных~~переменной~~$var_x') ;; 数据类型定义

 

exect=$var_x='Hello!'||_ViewValues(VarGetType(Eval('var_x')),'Тип~~данных~~переменной~~$var_x') ;; 数据类型定义

 

exect=$var_h=WinGetHandle('[CLASS:#32770;REGEXPTITLE:.*\((Копирование|Переименование/перемещение)\)]')||WinWaitClose(Eval('var_h')) infbx=InfoBox2 ;; 获取"复制"窗口或"重命名/移动"后台或"队列"中的Total Commander的句柄等待窗口关闭并发送消息

 

exect=$var_h=WinGetHandle('[CLASS:#32770;REGEXPTITLE:.*\((Копирование|Переименование/перемещение)\)]')||WinWaitClose(Eval('var_h')) shutd=9 ;; 获取"复制"窗口或"重命名/移动"后台或"队列"中的Total Commander的句柄+等待窗口关闭并关闭计算机

 

exect=$var_i=Hex(PixelGetColor(0,0),6)||_ViewValues(Eval('var_i')) ;; 返回颜色左上角的指定像素

 

exect=$var_i=Hex(PixelGetColor(0,0),6)||_ViewValues(Eval('var_i'))||Opt('PixelCoordMode',0)||$var_i=Hex(PixelGetColor(0,0,'[ACTIVE]'),6)||_ViewValues(Eval('var_i')) ;; 返回颜色指定的像素1)屏幕坐标的左上角2)相对于活动窗口的坐标

 

exect=$var_h=WinActivate('Безымянный~~~~Блокнот')||ControlSend(Eval('var_h'),'''','[CLASS:Edit;INSTANCE:1]','Это~~некоторый~~текст') ;; 激活"记事本"窗口并插入指定的文本(应该启动)

 

exect=$var_handle=WinGetHandle('[CLASS:Notepad]')||$var_s=WinActive(Eval('var_handle'))?'активно':'не~~активно'||_ViewValues('$var_s') ;; 检查记事本窗口是否处于活动状态

 

exect=$var_handle=WinGetHandle('[CLASS:Notepad]')||$var_s=WinExists(Eval('var_handle'))?'существует':'не~~существует'||_ViewValues('$var_s') ;; 检查记事本窗口是否存在

 

exect=$var_handle=WinGetHandle('[CLASS:TTOTAL_CMD]')||$var_aclass=StringSplit(WinGetClassList(Eval('var_handle')),@LF)||_ViewValues($var_aclass) ;; 返回数组Total Commander元素的所有类

 

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||$var_a=WinGetPos(Eval('var_h'))||WinMove(Eval('var_h'),'''',10,10,200,300,20)||Sleep(3000)||WinMove(Eval('var_h'),'''',$var_a[0],$var_a[1],$var_a[2],$var_a[3],20) ;; 要移动Total Commander窗口,在3秒钟内返回窗口

 

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||WinSetOnTop(Eval('var_h'),'''',1)||Sleep(3000)||WinSetOnTop(Eval('var_h'),'''',0) ;; 启用3秒窗口状态"所有窗口顶部"Total Commander

 

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||WinSetState(Eval('var_h'),'''',@SW_HIDE)||Sleep(3000)||WinSetState(Eval('var_h'),'''',@SW_SHOW) ;; 3秒钟隐藏Total Commander窗口

 

exect=$var_h=WinGetHandle('[CLASS:TTOTAL_CMD]')||WinSetTrans(Eval('var_h'),'''',192)||Sleep(3000)||WinSetTrans(Eval('var_h'),'''',255) ;;持续3秒,使Total Commander窗口透明25%

 

exect=Run('notepad.exe')||$var_h=WinWaitActive('[CLASS:Notepad]')||ControlSend(Eval('var_h'),'''','Edit1','Hello') ;; 运行"记事本",等待激活并输入"hello"

 

exect=Run('notepad.exe')||$var_h=WinWaitActive('[CLASS:Notepad]')||ControlSend(Eval('var_h'),'''','Edit1','закройте~~окно')||WinWaitClose(Eval('var_h'))||MsgBox(4096,'''','окно~~закрыто') ;; 运行"记事本",等待用户关闭窗口

 

exect=Run('notepad.exe')||$var_h=WinWaitActive('[CLASS:Notepad]')||ControlSend(Eval('var_h'),'''','Edit1','сверните~~окно')||WinWaitNotActive(Eval('var_h'))||MsgBox(4096,'''','окно~~не~~активно') ;; 运行"记事本",等到窗口不活动

 

exect=$var_handle=WinGetHandle('Безымянный~~~~Блокнот')||WinClose(Eval('var_handle')) ;; 通过其标题和关闭来定义窗口句柄

 

exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]','''',5)||IsHWnd(Eval('var_h'))?_ViewValues('Это~~дескриптор~~HWND'):_ViewValues('Это~~НЕ~~дескриптор~~HWND') ;; 运行记事本和检查窗口句柄的有效性

 

exect=$var_s=FileSelectFolder('Выберите~~каталог.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}',1)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; 显示文件夹选择对话框。如果未选择,则退出

 

exect=$var_s=FileSaveDialog('Выберите~~имя.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','Скрипт(*.aut;*.au3)|Текстовый~~файл(*.ini;*.txt)',2)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; 显示文件保存对话框。如果未选择,则输出

 

exect=$var_s=FileOpenDialog('Выберите~~имя.','::{450D8FBA-AD25-11D0-98A8-0800361B1103}','Скрипт(*.aut;*.au3)|Текстовый~~файл(*.ini;*.txt)',2)||Eval('var_s')?_ViewValues('$var_s'):_Exit() ;; 显示打开的文件对话框。如果未选择,则输出

 

start=%%COMMANDER_PATH%%\PK\PK.exe exect=$var_h=WinWaitActive('[CLASS:ThunderRT6FormDC]')||ControlSetText(Eval('var_h'),'''','ThunderRT6TextBox1','пароль') ;; 启动程序,等待窗口打开,并在指定的字段中输入文本"密码"

 

start=%%COMMANDER_PATH%%\PK\PK.exe exect=$var_h=WinWaitActive('[CLASS:ThunderRT6FormDC]')||ControlSetText(Eval('var_h'),'''','ThunderRT6TextBox1','пароль')||ControlClick(Eval('var_h'),'''','ThunderRT6CommandButton3') ;; 启动程序,等待窗口打开,并在指定的字段中输入文本"密码",然后单击确定按钮

 

exect=$var_h=WinActivate('[CLASS:AkelPad4]')||WinWaitActive(Eval('var_h')) ;; 激活AkelPad窗口,暂停操作直到窗口被激活

 

exect=$var_h=WinGetHandle('[CLASS:AkelPad4]')||$var_n=Number(_SendM(Eval('var_h'),1222,153,0))||$var_i=$var_n=1?_SendM(Eval('var_h'),273,4256,0):0 start=%%COMMANDER_PATH%%\AkelFiles\Tools\AkelPadMin\AkelPadMin.exe||%P%N||&&procwait exect=$var_i=$var_n=1?_SendM(Eval('var_h'),273,4256,0):0 ;; 在AkelPadMin下的光标下打开文件,忽略已经运行AkelPad的设置"程序的一个副本"

up2

tcimage © Аверин Андрей для Total Commander Image Averin-And@yandex.ru