vncdotool - A command line VNC client
作者: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的更多相关文章
- 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 ...
- 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 ...
- 使用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 ...
- Can't use Subversion command line client:svn
在Intellij IDEA里checkout东西时出先这个错误提示:Can't use Subversion command line client:svn Subversion command l ...
- MySQL 5.7 Command Line Client输入密码后闪退和windows下mysql忘记root密码的解决办法
MySQL 5.7 Command Line Client输入密码后闪退的问题: 问题分析: 1.查看mysql command line client默认执行的一些参数.方法:开始->所有程序 ...
- Android Studio集成SVN报错:can't use subversion command line client : svn
Android Studio集成SVN插件,check out出代码后,每次开启都会在右上角出现如下错误: Can't use Subversion command line client: svn ...
- MySQL中MySQL X.X Command Line Client一闪而过的问题
问题介绍:我安装完MySQL(我安装的是5.5)后,使用MySQL 5.5 Command Line Client,每次点击,总是一闪而过.解决方法如下: 首先进入cmd 切入MySQL的安 ...
- Webstorm 提示 Can't use Subversion command line client
Webstorm 提示 Can't use Subversion command line client Webstorm 提示 Can't use Subversion command line c ...
- Mysql安装后打开MySQL Command Line Client闪退解决方法
1.开始菜单下;Mysql--->mysql server 5.6-->mysql command line Client ---右击,选择属性 2.在属性下查看目标位置: 3.将安装目录 ...
随机推荐
- Cocos2D iOS之旅:如何写一个敲地鼠游戏(十一):完善游戏逻辑
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...
- Android的Notification的简介-android学习之旅(四十一)
Notification简介 Notification位于手机饿最上面,用于显示手机的各种信息,包括网络状态,电池状态,时间等. 属性方法介绍 代码示例 package peng.liu.test; ...
- 怎么对MySQL数据库操作大数据?这里有思路
最近学到一招关于使用java代码操作MySQL数据库,对大文本数据(LOB)进行CRUD的技巧,虽然向数据库很少向中存入大文本文件(一般都是存储在硬盘上),但是还是很有必要知道这一技巧的.下面我就来说 ...
- ledisdb:支持类redis接口的嵌入式nosql
ledisdb现在可以支持嵌入式使用.你可以将其作为一个独立的lib(类似leveldb)直接嵌入到你自己的应用中去,而无需在启动单独的服务. ledisdb提供的API仍然类似redis接口.首先, ...
- ElGamal密码
ElGamal也是一种基于离散对数的公钥体制,与Diffie-Hellman密钥体制密切相关.ElGamal密码体系用于数字签名标准(DSS)和S/MIME电子邮件标准等一些技术标准中. 算法描述: ...
- 牛腩新闻发布系统--学习Web的小技巧汇总
2014年11月10日,是个难忘的日子,这一天,小编的BS学习开始了,BS的开头,从牛腩新闻发布系统开始,之前学习的内容都是CS方面的知识,软考过后,开始学习BS,接触BS有几天的时间了,跟着牛腩老师 ...
- GROUP BY 的实现与优化
由于GROUP BY实际上也同样需要进行排序操作,而且与ORDER BY相比,GROUP BY主要只是多了排序之后的分组操作.当然,如果在分组的时候还使用了其他的一些聚合函数,那么还需要一些聚合函数的 ...
- Cocos2D:塔防游戏制作之旅(六)
现在,创建一个新的类用来表示炮塔.添加新的类文件,名称为Tower,继承于CCNode. 替换Tower.h文件为如下内容: #import "cocos2d.h" #import ...
- SpriteBuilder中使用Node类型的ccb动画节点删除时崩溃的问题
因为节点需要呈现动画效果,虽然只有两个不同帧. 在SpriteBuilder中新建Bullet.ccb文件,类型为node. 添加如上2张图片,并制作动画效果帧. 在游戏中子弹遇到障碍物会被删除,时机 ...
- R12中注册客户化应用为多组织应用
Oralce EBS R12中引入了MOAC的控制,所有多OU的表对象都添加了数据库VPD的控制策略,需要访问这些对象中的数据,首先需要进行多组织环境的初始化,但是如果客户化的应用中也需要具备多OU的 ...