作者:Daly 出处:http://www.cnblogs.com/daly 欢迎转载,也请保留这段声明。谢谢!

之前的一个项目需要需求希望可以通过命令行去远程执行一些Windows 系统操作。

所以决定采用: Python + vnctool

环境准备:

1. 2 台Windows机器。 其中一台作为lead机器, 一台作target机器。

2. Python2.7.5, VNC-5.0.5安装包和其他一些依赖包。 具体可以参考以下步骤。

On the lead machine:

1. Install Python2.7

1.1. Start with a Windows

1.2. Install python via python-2.7.5.msi

1.3. Set the Environment Variables (2 methods):

a. Open up PowerShell, and paste in the following:

[Environment]::SetEnvironmentVariable("Path",

"$env:Path;C:\Python27\;C:\Python27\Scripts\", "User")

b. Right click Computer and select "Properties" > click "Advanced system settings" > click "Environment Variables..." > select "Path" in "System variables" field and click "Edit" > add "C:\Python27\;C:\Python27\Scripts\;" at the "Variable value"

2. Install Twisted

2.1. Install Twisted via Twisted-13.1.0.win32-py2.7.exe

3. Install PIL

3.1. Install PIL via PIL-1.1.7.win32-py2.7.exe

4. Copy 2 scripts to C:\Python27\Scripts

4.1. Copy file ez_setup.py and get-pip.py to C:\Python27\Scripts

5. Install setuptools

5.1. Download setuptools-1.1.6

5.2. Launch CMD and input the follow commands to install setuptools:

> cd c:\setuptools-1.1.6

> python setup.py install

6. Install pip

6.1. Download pip-1.4.1

6.2. Launch CMD and input the follow commands to install pip:

> cd c:\pip-1.4.1

> python setup.py install

7. Install distribute

7.1. Download distribute-0.7.3

7.2. Launch CMD and input the follow commands to install distribute:

> cd c:\distribute-0.7.3

> python setup.py install

8. Install zope.interface

8.1. Download zope.interface-4.05

8.2. Launch CMD and input the follow commands to install zope.interface:

> cd c:\zope.interface-4.05

> python setup.py install

9. Install vncdotool

9.1. Download vncdotool -0.8.0

9.2. Launch CMD and input the follow commands to install vncdotool:

> cd c:\vncdotool -0.8.0

> python setup.py install

VNC Server installation(Install it on the lead machine and the target machine)

1. Install VNC Server

1.1. Download VNC-5.0.5-Windows.exe

1.2. Install VNC via VNC-5.0.5-Windows.exe

VNC Configuration (Configure it on the lead machine and the target machine)

1. After install VNC Server successfully, right click VNC icon in the bottom right corner of the toolbar > select "Options..."

2. Then select the "Advanced..." button:

3. Choose Authentication as "VNC password" and click "Configure.." > input the password to configure > choose Encryption as "Prefer off"

4. Select tab "Expert" > set the "ProtocolVersion" for the VNCServer to 4.0.

5. Click "Apply" and click "OK" to finish the configuration

VNCDO usage

1. Test the vncdo take effect:

On the lead machine, at the CMD prompt input:

> vncdo.exe -s xxx.xxx.xxx.xxx[the target machine's ip]  -p password[the password you set at VNC Configuration #3]  capture screenshot.png

you will get the target machine's currently screenshot

2. vncdo usage

a. Input "vncdo --help" in CMD to get the vncdo all usage

b. Some useful usage:

>vncdo -s xxx.xxx.xxx.xxx -p password type "hello"

>vncdo -s xxx.xxx.xxx.xxx -p password key ctrl-alt-del expect a.png 0

>vncdo -s xxx.xxx.xxx.xxx -p password type "administrator" key tab type "password" key enter expect d.png 0

3. Get more info from the website: http://pythonhosted.org/vncdotool/

https://pypi.python.org/pypi/vncdotool

vncdotool - A command line VNC client的更多相关文章

  1. Proxy settings in TortoiseSVN and command line svn client

    The server file is created when you install TortoiseSVN, Eclipse or command-line Subversion. Use the ...

  2. Can't use Subversion command line client: svn Probably the path to Subversion executable is wrong. Fix it.

    1.最近使用SVN工具时,Checkout出项目到本地后后,然后将其导入到Intellij idea中开发,在提交svn代码的时候,出现这样的错误:Can't use Subversion comma ...

  3. 使用intellij的svn时提示出错: Can't use Subversion command line client: svn.Errors found while svn working copies detection.

    使用Intellij的svn时提示出错:Can't use Subversion command line client: svn. Errors found while svn working co ...

  4. Can't use Subversion command line client:svn

    在Intellij IDEA里checkout东西时出先这个错误提示:Can't use Subversion command line client:svn Subversion command l ...

  5. MySQL 5.7 Command Line Client输入密码后闪退和windows下mysql忘记root密码的解决办法

    MySQL 5.7 Command Line Client输入密码后闪退的问题: 问题分析: 1.查看mysql command line client默认执行的一些参数.方法:开始->所有程序 ...

  6. Android Studio集成SVN报错:can't use subversion command line client : svn

    Android Studio集成SVN插件,check out出代码后,每次开启都会在右上角出现如下错误: Can't use Subversion command line client: svn ...

  7. MySQL中MySQL X.X Command Line Client一闪而过的问题

    问题介绍:我安装完MySQL(我安装的是5.5)后,使用MySQL 5.5 Command Line Client,每次点击,总是一闪而过.解决方法如下:      首先进入cmd 切入MySQL的安 ...

  8. Webstorm 提示 Can't use Subversion command line client

    Webstorm 提示 Can't use Subversion command line client Webstorm 提示 Can't use Subversion command line c ...

  9. Mysql安装后打开MySQL Command Line Client闪退解决方法

    1.开始菜单下;Mysql--->mysql server 5.6-->mysql command line Client ---右击,选择属性 2.在属性下查看目标位置: 3.将安装目录 ...

随机推荐

  1. API创建/更新员工薪水

    DECLARE lb_inv_next_sal_date_warning BOOLEAN; lb_proposed_salary_warning BOOLEAN; lb_approved_warnin ...

  2. 4. React 属性和状态介绍

            React 中的属性和状态初看之下可以互相替代,但是在 React 的设计哲学中两者有着截然不同的使用方式和使用场景. 属性的含义和用法         props = propert ...

  3. Android实现系统ROOT, 并能赋予app root权限

    1. 获取root权限 -->  修改adb源码     a. 打开 system/core/adb/adb_main.cpp,或者是 system/core/adb/daemon/main.c ...

  4. Google会思考的深度学习系统

    上周五在旧金山举行的机器学习会议上,Google软件工程师Quoc V. Le讲解了Google的"深度学习"系统是如何运作的. "深度学习"需要用到大型计算机 ...

  5. 后端分布式系列:分布式存储-HDFS DataNode 设计实现解析

    前文分析了 NameNode,本文进一步解析 DataNode 的设计和实现要点. 文件存储 DataNode 正如其名是负责存储文件数据的节点.HDFS 中文件的存储方式是将文件按块(block)切 ...

  6. Android开发工具下载地址

    Android Studio: http://zdz.la/iq4zSa

  7. 03_Weblogic之配置简单域:启动和配置域,使用模板创建域,使用控制台

     1 域:概览 是Oracle Weblogic Server的基本管理单元 始终包含一个配置为管理服务器的Oracle WebLogic Server实例 域中可以包括一些称为受管服务器的Ora ...

  8. 【一天一道LeetCode】#96. Unique Binary Search Trees

    一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 Given n ...

  9. java判断字符串是否回文

    java判断字符串是否回文 /** * java判断字符串是否回文<br><br> * 基本思想是利用字符串首尾对应位置相比较 * * @author InJavaWeTrus ...

  10. naoting

    生活就像一锅菠菜汤 20160714 夜