当前位置: 首页 > news >正文

深圳网站推广优如何重建网站

深圳网站推广优,如何重建网站,网络挣钱,wordpress企业授权2007-08-02 13:11:14| 分类#xff1a; 学习教程 |举报 |字号 订阅 一、制作目的和原则 说到自动安装#xff0c;其目的就是模拟手动操作#xff0c;自动完成对指定按键的点击和输入指定内容#xff0c;处理可能出现的情况#xff0c;最终完成程序的安装和设置。 也许… 2007-08-02 13:11:14|  分类 学习教程 |举报 |字号 订阅 一、制作目的和原则 说到自动安装其目的就是模拟手动操作自动完成对指定按键的点击和输入指定内容处理可能出现的情况最终完成程序的安装和设置。 也许有人说这样就明白了用AutoIt里的MouseClick、Send来完成点击和输入只要抓好点击的坐标就一切搞定了啊这当然不能说不是个办法但做出来的成品可能只能在你自己的电脑上能用说不定下一次你自己也没法用了。因为每个人的电脑是不一样的安装窗体在不同分辨率下的位置也是不一样的如果用这样做的脚本在别人电脑上操作就会看到鼠标经过N次狂奔后打开了M个窗口却没有点到你要的东西用来整人倒不错。 我们的目的是让脚本能有效的在其他人电脑上运行安装处理遇到的情况完成设置或注册等动作然后结束。所以制作的原则就是通用、精确和可* 1、    尽量少的用鼠标模拟点击的方法实在用要也要做到保证点击坐标的可* 原因上面都说了但有时不得已用到点击坐标时怎么办呢你先想想吧。后面告诉你我的办法 2、    尽量少用sleep等待语句而换用其它准确的时间判断语句 有的朋友喜欢用sleep在一个操作后等待一下来保证脚本的可*性其实这却是个不可*的做法。因为每台电脑的性能有所差异在不同的情况下也有差异在你的电脑上制作脚本时要停顿5秒的在一台第旧的电脑上可能要等待20秒也不一定。AutoIt里是有解决方法的比如winwaitactive,winwaitclose等再不行自己写判断啦 3、    尽量考虑可能出现的情况 有的程序在安装时会提出一些要求比如需要更新什么文件或进行什么操作而且未必在每台电脑上安装时都会出现这就要我们在做好脚本后多在不同环境测试一下考虑到一些常见的问题 二、如何学好AutoIt 对于AutoIt我也是个菜鸟没有什么经验可谈,但我觉得有三点一定要做到 1、充分利用帮助文件。AutoIt的帮助文件写的非常详细索引和搜索功能使它在查询上非常方便而且每个命令最后都有例子。有什么问题先找它问问。 有的朋友经常说自己英文不好其实我的也不怎么样正好利用这个机会学习一下再说很多软件在使用时都要用到英文这方面加强还是有必要的。 2、经常实践。写脚本和编程有几分相似经常实践特别在学习新命令时 3、到AutoIt论坛请教。http://www.autoitscript.com/forum/index.php毕竟是AutoIt的官方论坛高手非常多。全都是英文大家也练习一下吧。 4、开拓思路变换方法。和编程一样很多问题不一定只有一个解决方法普通方法解决不了时还可以多试试其它方法。 三、分析一个典型安装脚本   先让我们来看“极点中文20040813十全大补版”的安装过程 第一步 “欢迎使用 极点中文平台 安装向导” 点击“下一步”——使用快捷键AltN第二步 “使用许可协议” 点击“接受本协议”——使用快捷键AltA 点击“下一步”——使用快捷键AltN 第三步 “信息” 点击“下一步”——使用快捷键AltN 第四步 “选择目标文件夹” 假如默认路径 点击“下一步”——使用快捷键AltN 如果曾经安装过极点原来的文件夹存在则会出现下面的窗口 点击“是”——使用快捷键AltY 第五步    “选择组件” 假如默认组件 点击“下一步”——使用快捷键AltN 第六步    “选择开始菜单文件夹” 假如默认菜单文件夹 点击“下一步”——使用快捷键AltN 第七步    “准备安装” 点击“安装”——使用快捷键AltI 等待安装进度 第八步    “完成” 取消“查看 freewb.chm”和“运行输入法调整工具”前的对勾 ——用TAB切换到对应项再用点击空格进行取消 点击“完成”——使用快捷键AltF 上面的步骤已经非常清楚的告诉我们应该怎样做下面我们只需要把上面的步骤做成脚本。脚本里我们需要用到的命令有 1、Run(“文件名”)——运行与脚本同一目录下的指定文件 2、WinWaitActive(“窗体标题”,”窗体文本”)——等待指定窗体出现 3、Send(“”)——发送模拟按键。Altn用!n表示 1、    WinActive(“窗体标题”,”窗体文本”)——判断指定窗体是否激活 下面是完整的脚本 ; ---------------------------------------------------------------------------- ; 脚本功能 ; 请将下载的极点中文20040813十全大补版改名为JDWB040813.exe ; 并将其与脚本文件放在同一文件夹下 ; ---------------------------------------------------------------------------- run(jdwb040813.exe) ;运行“jdwb040813.exe” WinWaitActive(安装 - 极点中文输入平台,安装向导) ;等待窗体安装 - 极点中文输入平台,安装向导出现 send(!n) ;发送快捷键AltN WinWaitActive(安装 - 极点中文输入平台,使用许可协议) send(!a) ;发送快捷键AltA send(!n) WinWaitActive(安装 - 极点中文输入平台,信息) send(!n) WinWaitActive(安装 - 极点中文输入平台,选择目标文件夹) send(!n) if winactive(目录已存在) Then ;如果窗体目录已存在是激活状态 send(!y) ;发送快捷键AltY EndIf WinWaitActive(安装 - 极点中文输入平台,选择组件) ;如果选择其他安装方式请在这里修改 send(!n) WinWaitActive(安装 - 极点中文输入平台,选择开始菜单文件夹) send(!n) WinWaitActive(安装 - 极点中文输入平台,准备安装) send(!i) ;发送快捷键AltI WinWaitActive(安装 - 极点中文输入平台,完成 极点中文输入平台 安装向导) send({SPACE}{TAB}{SPACE}{TAB}) ;默认状态下“查看 freewb.chm”获得焦点发送空格将勾去掉。 ;用TAB切换到下一个复选框 Send(!f) ;发送快捷键AltF ; ---------------------------------------------------------------------------- 脚本中“;”分号开头的部分是注释。 所有这些命令都能在帮助文件里找到具体介绍。 四、从示例脚本考虑几个问题 1、 用Autoit Window Spy精确取得窗体信息 2、 WinWaitActive的使用 3、 Send的使用 4、 修改默认路径ControlSetText和ControlSend 5、 修改默认组件 6、 用其它方式按键(ControlClick和MouseClick) 四、从示例脚本考虑几个问题 1、 用Autoit Window Spy精确取得窗体信息 在开始菜单里依次选择“程序—AutoIt V3—Autoit Window Spy”。“Autoit Window Spy”是AutoIt附带的一个获取信息的工具。启动后一般它都在最上面鼠标激活要查看信息的窗体“Autoit Window Spy”窗体里将显示激活窗体在鼠标下的信息如图这时可以用CtrlAltF使窗口内容暂停便于从窗体里复制需要的内容 2、 WinWaitActive的使用 WinWaitActive(“窗体标题”,”窗体文本”)——等待指定窗体出现。使用这个命令在AutoIt默认的情况下窗体标题可以是实际标题的一部分比如上面的命令也可以用 WinWaitActive(安装,信息) 但这样在匹配时精确程度也下降了也可能匹配到另一个标题带“安装”文本包含“信息”的窗体所以在使用这个命令时窗体标题尽量用完整标题最好从Autoit Window Spy窗体文本选择当前窗体里有代表性的文本。 3、 Send的使用 Send命令发送模拟按键是输出字符的首选。它的应用比较灵活 (1)      组合按键^ 表示Ctrl! 表示 Alt 表示Shift#表示 Win 比如上面完成时Send(“!f”) (2)      多个Send命令可以合写一次完成。 (3)      Send命令是不能输出中文的其实Unicode都是不能输出的。 Send命令中有很多特殊按键请参看帮助文件。 4、 修改默认路径ControlSetText和ControlSend 如何选择目标文件夹中的默认路径假如我们不希望它安装在系统盘而要安装在“D:Program FilesFreeWB”。 方法一、上面我们已经知道了Send命令的用法由于路径框这时是激活状态这里就可以用到了Send(“D:Program FilesFreeWB”) 方法二、使用命令ControlSetText ( 窗体标题, 窗体文本, 要设置文字的控件类名或控件精确标题, 需要设置的文字 ) ControlSetText功能是设置窗体里指定控件的文本不论窗体或控件这时的状态是否激活。注意ControlSetText是可以输出中文的。 控件类名可以用Autoit Window Spy取得如上图经查找输入框的类名为“TEdit1” 上面的要求可写命令为 ControlSetText(安装 - 极点中文输入平台,选择目标文件夹,TEdit1, D:Program FilesFreeWB ) 方法三、使用命令ControlSend ( 窗体标题, 窗体文本, 接收文字的控件类名或控件精确标题, 需要输入的文字 ) ControlSend功能和ControlSetText类似向窗体里指定控件的发送文本不论窗体或控件这时的状态是否激活。但ControlSend不能输出中文 ControlSend(安装 - 极点中文输入平台,选择目标文件夹,TEdit1, D:Program FilesFreeWB ) 5、 修改默认组件 极点在安装时提供了多种组件组合如何修改呢 其实很简单我们模拟一下使用键盘如何解决就行了。使用键盘TAB将焦点切换到要修改的控件再用键盘方法选择这个方法只用到Send命令就可以完成。推荐使用 6、 用其它方式按键(ControlClick和MouseClick) 上面脚本里遇到按键的地方我们都是用快捷键来完成的如果没有快捷键应该怎么办呢 (1)      从模拟按键的角度思考如果焦点可以切换到我们就可以用Tab键切换用Enter键确认 (2)      使用ControlClick(窗体标题, 窗体文本,要点击的控件类名或控件精确标题) ControlClick功能是点击指定窗体里的指定控件不论窗体或控件这时的状态是否激活。 (3)      使用模拟鼠标点击 这个方法是尽量不要使用的但有的窗体没有快捷键不能切换焦点又找不到控件信息这时只能用模拟鼠标点击的方法。 MouseClick(“鼠标左右键”,在屏幕的X位置,在屏幕的Y位置,点击次数) 使用这一方法必须取得准确的鼠标坐标而且坐标要适应不同情况最好用变量取得具体方法以后再介绍。 总结 在这篇文章里我不想过多的介绍每一个命令的详细用法其实一般的安装程序用上面的命令大概就能解决了。主要还是想介绍思路先考虑使用一般命令和模拟键盘动作再考虑复杂命令最后用相对不精确的模拟鼠标。 学习AutoIT和其它学习一样多思考多练习你一定会学的很好。 1.关于ctrlshift其他键如ctrlshiftf 时建议把shift放在前面。成为send(!f) 如果send(!f)有事会调出输入法。因为ctrlshift是各种输入法的切换方式。 2.关于ControlSetText和ControlSend ControlSend ( title, text, classnameNN, string [, flag] ) ControlSetText ( title, text, classnameNN, new text ) 如 Controlsend(last,,Edit1,http://autoit.3322.org CRLF) ControlSetText ( last, , Edit1, http://autoit.3322.org ) controlsend 有时是把新的字符串追加到编辑框中他后面可以带CRLF那即在输入后可以发送一个回车符。 而controlsettext肯定是把新的字符串替换了原来的数值且后面不能带CRLF,带了也无效。 AutoIt安装脚本技巧篇 ;[原创]迷你歌词(MiniLyrics) 2.7.233 安装并写入INI文件进行注册。请版主加精华 ;我认为这个安装过程比较典型与实用看看应该不错。我学autoit时间不长望网友指教。 ;因为我不喜欢用winamp而用foobar2000,这里我只选支持后者其他都不支持。 ;由于上传图数只有5个简单的图就省去几个。 ;简单介绍一下以下要用到的函数 ;ButtonNN 后面的NN表示控件名编号 ;ControlClick ( 窗口标题, 按钮文本描述, ButtonNN) 相当于用鼠标点击一下此窗口中的ButtonNN按钮。 ;ControlCommand ( 窗口标题, 按钮文本描述, ButtonNN, UnCheck, )此句作用是不选择此复选框。 ;ControlCommand ( 窗口标题, 支按钮文本描述, ButtonNN, Check, )此句作用是选择此复选框即打上勾。 ;$varControlGetText(窗口标题, 按钮文本描述, EditNN)此句的作用是读出文件框EditNN的内容到变量$var。 ControlCommand(窗口标题,, ComboBoxNN,SelectString, 下拉框或列表框内容) ;此句是选择下拉框或列表框的内容SelectString,是表示要选择下拉框中的内容。 而 Base是下 ;IniWrite ( aa.ini, MiniLyrics, RegName, www.crsky.com )此句的作用是在ini文件中建立一个设置项,在[MiniLyrics]区下的键值RegNamewww.crsky.com run(MINILYRICS.EXE) ;运行程序 WinWaitActive(Installer Language) ControlClick ( Installer Language, OK, Button1) ;要求选择语言默认就是简体中文按OK就行了。 WinWaitActive(MiniLyrics 2.7.233 安装 : 授权条款) ControlClick ( MiniLyrics 2.7.233 安装 : 授权条款, 我同意(I), Button2) ;这个简单与上面类似授权同意就行了。 WinWaitActive(MiniLyrics 2.7.233 安装: 请选择您想安装的播放器,支持 Winamp2) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 Winamp2, Button4, UnCheck, ) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 Winamp5, Button6, UnCheck, ) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 Foobar2000, Button8, Check, ) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 RealOne Player, Button11, UnCheck, ) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 Windows Media Player 9.0 (您需要先安装Windows Media Player), Button10, UnCheck, ) ControlClick ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 下一步(N) , Button2 ) ;这里我只选择支持foobar2000播放器设置为选择即打上勾其他全不选 ;如想要支持其他播放器只要把uncheck改为check就可以了。 ;选择后按下一步就可以了。 WinWaitActive(MiniLyrics 2.7.233 安装: 请选择您想安装的播放器,支持 QCD Player) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 QCD Player, Button17, UnCheck, ) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 iTunes, Button13, UnCheck, ) ControlCommand ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 支持 MUSICMATCH Jukebox, Button15, UnCheck, ) ControlClick ( MiniLyrics 2.7.233 安装: 请选择您想安装的播放器, 下一步(N) , Button2 ) ;同上 WinWaitActive(MiniLyrics 2.7.233 安装 : 安装选项) ControlCommand(MiniLyrics 2.7.233 安装 : 安装选项,, ComboBox1,SelectString, Base) ControlClick (MiniLyrics 2.7.233 安装 : 安装选项, 下一步(N) , Button2 ) ;这里因为这个软件就是一个插件我不需要他完全安装所以只要最基本的base就行了。 ;所以在下拉框里选择Base。 WinWaitActive(MiniLyrics 2.7.233 安装 : 安装目录) Dim $var,$inifile $var ControlGetText(MiniLyrics 2.7.233 安装 : 安装目录, , Edit1) ControlClick ( MiniLyrics 2.7.233 安装 : 安装目录, 安装(I), Button2 ) ;这里让你设置安装目录我设为默认。只是安装的目录保存到变量$var作为后面注册用。 WinWaitActive(MiniLyrics 2.7.233 安装 : 完成) ControlClick ( MiniLyrics 2.7.233 安装 : 完成, 关闭(L), Button2 ) ;这里简单安装完成点击关闭按钮就可以了。 $inifile$var/Minilyric.ini IniWrite ( $inifile, MiniLyrics, RegName, www.crsky.com ) IniWrite ( $inifile, MiniLyrics, RegCode, 56454DB301GGGF1F ) ;因为这个软件注册是要写入ini文件的不想很多软件是写入注册表的。 ;而autoit提供了ini文件的操作通过刚才的变量$var得到要写入的INI文件。 ;这里的MiniLyrics是ini的区域即在文件中用[MiniLyrics]表示的单独一排。 ;在安装好后这个区域是没有的不过用iniWrite函数后会自动生成的。 AutoIt技巧-如何处理安装中的中断 更新最优方法----Adlib函数 安装软件的过程是由一个个步骤组成的有时在两个必经步骤中会遇到诸如文件夹已经存在的提示这些提示并非在所有电脑安装时都会出现我称之为意外中断。如何处理意外中断是保证脚本稳定性的重要问题这也是我在AutoIt脚本制作入门里曾提到的要充分考虑各种安装环境。 更新最优方法----Adlib函数 安装软件的过程是由一个个步骤组成的有时在两个必经步骤中会遇到诸如文件夹已经存在的提示这些提示并非在所有电脑安装时都会出现我称之为意外中断。如何处理意外中断是保证脚本稳定性的重要问题这也是我在AutoIt脚本制作入门里曾提到的要充分考虑各种安装环境。 意外中断的出现主要是由于安装环境造成的。比如曾经安装过某软件删除后还保留其目录再次安装时提示文件夹已经存在或者在安装瑞星时如果电脑上安装了FlashGet或GetRight就会多一道“是否嵌入”的步骤。再比如联众大厅的安装在安装完成后会提示“已经集成3721是否注册”这个步骤如果在第二次安装时并不会出现因为它已经向注册表里添加了相关项。 根据出现原因我们有两个方法来解决中断。 方法一、改造安装环境 既然中断出现的原因是由于安装环境不同的我们可以人为的改造一个固定安装环境。比如“文件夹已经存在”可以在脚本之初判断是否存在这个文件夹如果存在就将其删除。再如安装联众大厅的例子可以在脚本之初删除注册表里有关项。经过上面的改造安装环境后一些步骤成为“固定”步骤就可以当做一般情况等到窗体出现再做相应判断。 缺点改造环境虽然能解决问题但需要注意的事有些环境是我们希望保留比如一些个人设置存在在文件夹里或注册资料保存在注册表的相关项里。在处理这样的情况时不能一概用些方法否则会造成难以弥补的后果。 方法二、处理中断 这个问题用语言描述时很简单“在步骤一和步骤二期间如果出现中断步骤则……”或者说成“在步骤二出现前如果出现中断则……”。有些朋友没有找到比较好的方法因为这个窗体既不是每次都会出现也不是步骤一后立刻出现。 我们可以用循环来解决这个问题。在步骤一处理后做一个循环循环中不断判断中断是否出现如果出现则进行相应处理如果一直到步骤二开始中断也没有出现则跳出循环继续后面的步骤。因为处理完中断后安装自然进行到步骤二所以没有写跳出语句而让其自然跳出。示意步骤如下 执行步骤一 do      if 中断出现 then         处理中断      endif until 步骤二出现 执行步骤二 下面针对联众安装时提示“是否注册3721”的中断例子。 使用静态安装参数在安装完成后出现登录信息前如果有出现“3721安装”则否选择“否”。登录信息出现后关闭登录窗口 RunWait(ScriptDir oom.exe /silent) Do     If WinExists(glWorld) then          ControlClick(glWorld,,Button2)     EndIf Until WinExists(登录信息) WinClose(登录信息) 更新最优方法----Adlib函数 AutoIt已经给我们提供了一个用于处理错误和弹出窗口的Adlib函数包括AdlibEnable和AdlibDisable。它的功能是在主程序运行期间不断调用处理子程序进行监视一旦发现符合子程序的执行条件立即执行子程序。其中AdlibEnable用来启动监视AdlibDisable用来禁用监视。 AdlibEnable说明      函数格式     AdlibEnable ( function [,time] )     参数说明     function是子程序的名称。     time为循环调用间隔默认为250ms该时间间隔可以修改。     用法及功能     在脚本运行之初使用也可在适当时机使用启动监视子程序。     AdlibDisable说明     函数格式     AdlibDisable ( )     用法及功能     一般情况即使不用此函数待脚本结束后也会自然中止。但有时在有特定要求时可在适当时机使用此函数中止监视。推荐在脚本最后使用此函数保持功能的完整性。 具体实例     仍以联众安装为例可修改脚本如下 AdlibEnable(KillPopup) RunWait(ScriptDir Room.exe /silent) WinExists(登录信息) WinClose(登录信息) AdlibDisable() Func KillPopup() If WinExists(glWorld) then         ControlClick(glWorld,,Button2) EndIf EndFunc 从可*性和稳定性上讲我认为一般情况下该方法和方法二相当但毕竟AutoIt已经提供了一个比较好的解决方法推荐大家使用。
http://www.tj-hxxt.cn/news/224612.html

相关文章:

  • 青海网页设计与网站建设网站建设创意文案
  • 做外贸网站案例宝安网站建设方案外包
  • 唐山做网站的电话吉林城市建设学校网站
  • ip做网站需要过白名单吗上海网站建设与设计公司好
  • 展示型网站模板代码百度seo官网
  • 旅游社网站建设规划书网站建设开场白
  • 镇江网站建设方式优化网站后台添加东西不能粘贴
  • 衡水需要做网站的公司开网站做彩票赚钱吗
  • 杭州网站建站公司自己做网站卖产品怎么样
  • 网站怎么用html网页设计代码作业网站
  • 条件查询 php网站源码建外贸网站有效果吗
  • 台州网站建设服务python编写网页
  • 网站做广告投放 要求做效果评估乐天seo培训中心
  • 企业logo设计网站进一步优化落实
  • 网站公司排行榜北京师范大学学风建设专题网站
  • 网站备案管理办法wordpress学生
  • 中国铁路建设集团公司网站wordpress取消自适应
  • 网站建制作建筑模板做凳子
  • 产品详情页面设计山西搜索引擎优化
  • 深圳华企网站建设落地页制作
  • 外贸网站建设制作滨海做网站的价格
  • 盘锦网站建设公司参考消息今天新闻
  • 深圳网站建设深正互联404源码网html
  • 铜仁网站建设哪家专业网站彩铃怎么做的
  • 平台优化沈阳seo搜索引擎
  • 站点的几种推广方式在局网站 作风建设方案
  • 惠州网站建设系统浏览器网站设置在哪里
  • 有哪些建站的公司在线crm系统价格
  • 湖南做网站的公司有哪些静态网站作品
  • 网站建设合同交什么印花税怎样说服企业做网站建设推广