zoukankan      html  css  js  c++  java
  • AutoIt自动化编程(1)

    autoit 2~运行程序或打开文件

    1、运行程序
    Run 命令或者函数用来运行外部可执行文件

    AU3
    Run ( "文件名" [, "工作目录" [, 标志]] )

    EXAMPLE:

    AU3
    Run("Notepad.exe")


    上面的示例中都没有给出程序“Notepad.exe”的路径,为什么仍能执行?这是因为它们都会自动在脚本所在目录下搜寻目标文件,如有则运行,否则就到系统文件夹(%PATH%)中搜寻。
    注意:
    A)某些程序必须给定“工作目录”才能成功运行!
    B)给出完整的文件路径有助于轻微提高程序的可靠性。
    CAHKRun命令可以用来运行程序和直接打开文件,而AU3Run函数则只能用来运行程序(可执行文件)或传递参数让某个程序打开目标文件。
    当然,运行程序的功能还不仅仅是这么简单,我们还可以指定运行程序的初始状态,比如让运行的记事本窗口以最大化状态显示(或者最小化、隐藏):
    【示例 2.1.2
    AU3
    Run("Notepad.exe", "", @SW_MAXIMIZE) 
      
    2、打开文件
    前面已经提到,AHKRun命令可以直接打开文件,而AU3Run函数则只能用来运行程序,因此在打开文件的方式上有点不同:AHK脚本中可直接给出目标文件,而AHK将自动运行该文件的关联程序来打开它;而AU3则必须由用户自己传递参数让某个程序打开目标文件。
    【示例 2.2.1
    AHK
    Run, MyFile.txt
    Run, Notepad.exe MyFile.txt
    AU3
    Run("Notepad.exe MyFile.txt") 
      
    ps:AU3以“函数”的形式提供:
    Function(param1, param2, …)

    3、以命令行形式运行程序
    可以考虑运行系统的命令行解释器(cmd.exe/command.com),然后指定要执行的命令并传递参数。
    假设我们要执行命令“dir C:\WINDOWS\system 32 ,用以列出指定目录的所有文件及子目录。
    【示例 2.3.1
    AHK
    Run, %ComSpec% /k dir C:\WINDOWS\system32
    AU3
    Run(@ComSpec & " /k dir C:\WINDOWS\system32")
    注意:
    AComSpec是脚本内建的用以指示命令行解释器位置的变量或宏。
    B/k 参数表示“执行字符串指定的命令但保留”,若改为 /c 则表示“执行字符串指定的命令然后终断”。对此比较直观的解释是 /k 将在执行完命令后保留命令提示窗口,而 /c 则将在执行完命令之后关闭命令提示窗口。
    C)符号“&”是AU3定义的字符串连接符。


    附上我的两段代码:

    ;Run("rundll32.exe shell32.dll,Control_RunDLL ncpa.cpl,,2")
    ;Run("Notepad.exe d:\Nw.ps1")
    $file = FileOpen("d:\Nw.ps1", 0)   ;只能打开文件进行操作,但看不到文件
      
       ; 检查打开的文件是否可读
       If $file = -1 Then
        MsgBox(0, "错误", "不能打开文件.")
        Exit
       EndIf
      
       ; 每次读取一行文本,直到文件结束.
       While 1
        $line = FileReadLine($file)
        If @error = -1 Then ExitLoop
        MsgBox(0, "读取的行:", $line)
       Wend

    =====================================================

    Dim $title
    Dim $ok_control
    $title="关于 计算器"
    $ok_control="[CLASS:Button;TEXT:确定]"
    WinActivate($title)
    ControlClick($title,"",$ok_control)

  • 相关阅读:
    oracle 内连接、外连接、自然连接、交叉连接练习
    oracle语句练习
    简单的oracle sql语句练习
    CountDownLatch 使用方法
    T1,T2,T3 三个线程顺序执行
    【2018 校招真题】斐波那契数列
    使用自己的域名解析 cnblogs 博客
    在 github 中新建仓库后,如何上传文件到这个仓库里面。
    数据库常用语句整理
    使用 JQuery 实现将 table 按照列排序
  • 原文地址:https://www.cnblogs.com/djcsch2001/p/3047458.html
Copyright © 2011-2022 走看看