CN109614169B - 基于像素坐标方式的Windows客户端应用程序自动运行方法 - Google Patents

基于像素坐标方式的Windows客户端应用程序自动运行方法 Download PDF

Info

Publication number
CN109614169B
CN109614169B CN201811631168.7A CN201811631168A CN109614169B CN 109614169 B CN109614169 B CN 109614169B CN 201811631168 A CN201811631168 A CN 201811631168A CN 109614169 B CN109614169 B CN 109614169B
Authority
CN
China
Prior art keywords
application program
coordinate system
mouse
target position
taking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811631168.7A
Other languages
English (en)
Other versions
CN109614169A (zh
Inventor
肖强
兰方
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Suninfo Technology Co ltd
Original Assignee
Shanghai Suninfo Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Suninfo Technology Co ltd filed Critical Shanghai Suninfo Technology Co ltd
Priority to CN201811631168.7A priority Critical patent/CN109614169B/zh
Publication of CN109614169A publication Critical patent/CN109614169A/zh
Application granted granted Critical
Publication of CN109614169B publication Critical patent/CN109614169B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Abstract

本发明提供了一种基于像素坐标方式的Windows客户端自动运行方法,采用像素坐标方式的计算捕获方法,不依赖于命令行参数,同时既可以实现静态常规窗体或控件的定位,又能实现动态以及特殊窗体的准确定位;而且对所有的应用程序都适用,具有通用性、易操作性等特征。因此,本发明既解决普遍的Windows应用程序的流程化操作,又可以方便用户进行应用程序运维管理。

Description

基于像素坐标方式的Windows客户端应用程序自动运行方法
技术领域
本发明属于运维管理自动代填系统技术领域,特别涉及一种基于像素坐标方式的Windows客户端应用程序自动运行方法。
背景技术
伴随着国家信息化产业的推进,信息安全越来越受到政府和企业的重视。各种IT基础设施建设完成后,IT设备的运行维护工作变得越来越庞杂,在这种形势下,运维管理系统应用而生。
运维管理系统作为用户和目标设备的中间层,它需要完成各种协议的代理运维过程,以及不同应用的单点登录、自动配置等。Windows是目前占主导地位的桌面操作系统,其包含了种类繁多的应用程序,以满足用户在网页浏览、数据库操作、特定服务器客户端应用等纷繁复杂场景的操作需求。因此,对Windows系统下应用程序的自动代填和配置便成为整个运维管理系统中非常重要的一环。
在现有的主流技术中,对于Windows下应用程序的自动代填及配置一般有两种方法:(1)通过命令行调用传递参数进行登录及配置;(2)通过获取应用程序窗体控件并进行相应操作来完成登录及配置。使用这些方法虽然能实现一些基本操作,但同时也存在很大的不足之处:
1、大部分应用程序不提供命令行传递参数进行登录及配置操作;
2、通过操作窗体控件的方法,经常会遇到特殊窗体或控件无法通过句柄捕获和定位操作;而遇到动态窗体时,更无法实现准确定位;
3、部分应用需要经过复杂的配置才可以使用,比如Navicat、CSP等,对于这些应用根本无法通过简单的命令行参数或者控件操作完成配置。
发明内容
有鉴于现有技术的上述缺陷,本发明的目的在于提供一种基于像素坐标方式的Windows客户端自动运行方法,采用像素坐标方式的计算捕获方法,不依赖于命令行参数,同时既可以实现静态常规窗体或控件的定位,又能实现动态以及特殊窗体的准确定位;而且对所有的应用程序都适用,具有通用性、易操作性等特征。因此,本发明既解决普遍的Windows应用程序的流程化操作,又可以方便用户进行应用程序运维管理。
为了达到上述目的,本发明提供了一种基于像素坐标方式的Windows客户端应用程序自动运行方法,实现Windows客户端应用程序窗体或控件的流程化、精准化操作,从而实现应用程序的自动登录及配置,包括以下步骤:
步骤一、启动目标应用程序,获取应用程序主窗口句柄,然后前置和激活应用程序主窗口;
步骤二、进行鼠标移动模拟操作,包括以下步骤:
(1)将鼠标通过通用方法移动指向需要点击操作的目标位置,获取目标位置在客户区坐标系中的像素坐标(x,y);其中,客户区是指应用程序主窗口除了标题栏、工具栏、菜单栏后的剩下区域,客户区坐标系是指以客户区的左上角为坐标系的原点(0,0),从左到右为正,从上到下为正而形成的坐标系,以像素为单位;
(2)通过转换函数将客户区坐标系中坐标点的像素坐标转换为屏幕坐标系中的屏幕坐标;其中,屏幕坐标系是指以显示器屏幕的左上角为坐标系的原点(0,0),从左到右为正,从上到下为正而形成的坐标系,以像素为单位;
(3)获取显示器屏幕的宽度和高度(width,height),通过转换公式,将目标位置的像素坐标(x,y)转换为鼠标需要在屏幕坐标系中移动的坐标(px,py);通过鼠标编程接口,将鼠标移动到目标位置;然后继续通过鼠标编程接口执行鼠标左击、右击或双击操作;
步骤三、按需要改变目标位置并重复以上鼠标移动模拟操作,过程化依次执行完成所有鼠标移动模拟操作,即可实现应用程序的自动登录及配置。
进一步地,步骤一中启动目标应用程序是通过Windows通用接口1来实现的。
进一步地,步骤一中获取应用程序主窗口句柄是通过Windows通用接口2来实现的。
进一步地,步骤(1)中所述的通过通用方法移动是指通过手动移动。
进一步地,当目标位置为静态窗体或控件时,步骤(1)中目标位置的像素坐标(x,y)的获取可以通过将应用程序主窗口的截图放在画图板中,以像素模式查看并计算来获得。
进一步地,当目标位置为动态添加生成的数据时,此类数据一般都按一定规则进行排序罗列,此时则需要找出其排列规则(或按照名称排序,或按照修改时间排序),同时找到其配置文件,获取其添加的数据内容,通过编写其排列规则的排序算法定位目标数据在配置数据里的位置序号,然后根据客户区页面展示的大小来计算出目标位置的像素坐标(x,y)。
进一步地,基于本发明的方法编写程序时,可以将敏感数据以参数的形式传递,并在指定位置模拟代填。
进一步地,步骤二中所述的转换函数和转换公式是指图像平移函数和图像平移公式。对于用户而言,无论是基于客户区坐标系还是基于屏幕坐标系,目标位置的坐标都是通过显示器屏幕上的像素来体现的,因此客户区坐标系中的像素坐标通过简单的图像平移函数和图像平移公式即可转换为屏幕坐标系中的屏幕坐标,而屏幕坐标是鼠标可以读懂的语言,因此基于鼠标编程接口即可方便地实现鼠标的移动和模拟操作。
采用本发明的基于像素坐标方式的Windows客户端应用程序自动运行方法,现有的运维管理系统可以顺利实现Windows窗体控件的精准定位操作和数据代填功能,大大地提高了Windows客户端流程自动化运行的适应性和灵活性,达到了运维管理系统增加可容纳Windows客户端类型的效果,同时一定程度上完善推进了操作智能化的进度。
附图说明
图1是本发明一个较佳实施例的基于像素坐标方式的Windows客户端应用程序自动运行方法的流程示意图。
具体实施方式
下面对本发明的实施例作详细说明,下述的实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示,在一个较佳实施例中,本发明的基于像素坐标方式的Windows客户端应用程序自动运行方法,用于实现应用程序的自动登录及配置,包括以下步骤:
步骤一、通过Windows通用接口1启动目标Windows客户端应用程序;再通过Windows通用接口2获取应用程序主窗口句柄,然后前置和激活应用程序主窗口;
步骤二、进行鼠标移动模拟操作,包括以下步骤:
(1)将鼠标手动移动指向需要点击操作的目标位置,获取目标位置在客户区坐标系中的像素坐标(x,y);其中,客户区是指应用程序主窗口除了标题栏、工具栏、菜单栏后的剩下区域,客户区坐标系是指以客户区的左上角为坐标系的原点(0,0),从左到右为正,从上到下为正而形成的坐标系,以像素为单位;
(2)通过转换函数将客户区坐标系中坐标点的像素坐标转换为屏幕坐标系中的屏幕坐标;其中,屏幕坐标系是指以显示器屏幕的左上角为坐标系的原点(0,0),从左到右为正,从上到下为正而形成的坐标系,以像素为单位;
(3)获取显示器屏幕的宽度和高度(width,height),通过转换公式,将目标位置的像素坐标(x,y)转换为鼠标需要在屏幕坐标系中移动的坐标(px,py);通过鼠标编程接口,将鼠标移动到目标位置;然后继续通过鼠标编程接口执行鼠标左击、右击或双击操作;
步骤三、按需要改变目标位置并重复以上鼠标移动模拟操作,过程化依次执行完成所有鼠标移动模拟操作,即可实现应用程序的自动登录及配置。
将本发明的基于像素坐标方式的Windows客户端应用程序自动运行方法应用于运维管理系统中,在提高系统适用性,实用性,安全性、灵活性上均产生了显著的有益技术效果。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的试验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (1)

1.一种基于像素坐标方式的Windows客户端应用程序自动运行方法,用于实现所述应用程序的自动登录及配置,其特征在于,所述方法包括以下步骤:
步骤一、启动所述应用程序;获取应用程序主窗口句柄,然后前置和激活所述应用程序主窗口;
步骤二、进行鼠标移动模拟操作,包括以下步骤:
(1)将鼠标通过通用方法移动指向需要点击操作的目标位置,获取所述目标位置在客户区坐标系中的像素坐标(x,y);其中,客户区是指所述应用程序主窗口除了标题栏、工具栏、菜单栏后的剩下区域,所述客户区坐标系是指以所述客户区的左上角为坐标系的原点(0,0),从左到右为正,从上到下为正而形成的坐标系,以像素为单位;
(2)通过转换函数将所述客户区坐标系中坐标点的像素坐标转换为屏幕坐标系中的屏幕坐标;其中,所述屏幕坐标系是指以显示器屏幕的左上角为坐标系的原点(0,0),从左到右为正,从上到下为正而形成的坐标系,以像素为单位;
(3)获取所述显示器屏幕的宽度和高度(width,height),通过转换公式,将所述目标位置的像素坐标(x,y)转换为鼠标需要在所述屏幕坐标系中移动的坐标(px,py);通过鼠标编程接口,将鼠标移动到所述目标位置;然后继续通过所述鼠标编程接口执行鼠标左击、右击或双击操作;
步骤三、按需要改变目标位置并重复以上鼠标移动模拟操作,过程化依次执行完成所有鼠标移动模拟操作,即可实现所述应用程序的自动登录及配置;其中,
当所述目标位置为静态窗体或控件时,步骤(1)中所述目标位置的像素坐标(x,y)的获取是通过将所述应用程序主窗口的截图放在画图板中,以像素模式查看计算来获得;
当所述目标位置为动态添加生成的数据时,先找出该数据的排列规则,同时找到其配置文件,获取其添加的数据内容,通过编写所述排列规则的排序算法定位目标数据在配置数据里的位置序号,然后根据所述客户区页面展示的大小来计算出所述目标位置的像素坐标(x,y);其中
步骤一中启动所述应用程序是通过Windows通用接口1来实现的;
步骤一中获取应用程序主窗口句柄是通过Windows通用接口2来实现;
步骤(1)中所述的通过通用方法移动是指通过手动移动;
所述排列规则为按照名称排序或按照修改时间排序;
步骤二中所述的转换函数和转换公式是指图像平移函数和图像平移公式。
CN201811631168.7A 2018-12-29 2018-12-29 基于像素坐标方式的Windows客户端应用程序自动运行方法 Active CN109614169B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811631168.7A CN109614169B (zh) 2018-12-29 2018-12-29 基于像素坐标方式的Windows客户端应用程序自动运行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811631168.7A CN109614169B (zh) 2018-12-29 2018-12-29 基于像素坐标方式的Windows客户端应用程序自动运行方法

Publications (2)

Publication Number Publication Date
CN109614169A CN109614169A (zh) 2019-04-12
CN109614169B true CN109614169B (zh) 2022-03-15

Family

ID=66012976

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811631168.7A Active CN109614169B (zh) 2018-12-29 2018-12-29 基于像素坐标方式的Windows客户端应用程序自动运行方法

Country Status (1)

Country Link
CN (1) CN109614169B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111651756B (zh) * 2020-06-04 2022-05-31 成都安恒信息技术有限公司 一种应用于运维审计navicat的自动代填方法
CN113569222B (zh) * 2021-07-12 2024-04-05 成都安恒信息技术有限公司 一种用于windows程序的单点登录方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102122253A (zh) * 2011-02-25 2011-07-13 天津易泰通信息技术有限公司 基于windows消息的实现数据交换的方法
CN103164164A (zh) * 2013-04-10 2013-06-19 天津三星光电子有限公司 一种触控终端应用程序的显示控制方法及其触控终端
CN103366109A (zh) * 2013-08-14 2013-10-23 德讯科技股份有限公司 一种基于数字图像识别算法的XWindow代填方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9342320B2 (en) * 2008-05-16 2016-05-17 Mckesson Technologies Inc. Method for facilitating cooperative interaction between software applications
US8701029B2 (en) * 2009-06-24 2014-04-15 Red Hat Israel, Ltd. Presenting a modal dialog box using an invisible panel underneath
CN103377119B (zh) * 2012-04-23 2017-07-25 腾讯科技(深圳)有限公司 一种非标准控件自动化测试方法和装置
US9495064B2 (en) * 2014-02-12 2016-11-15 Beijing Lenovo Software Ltd. Information processing method and electronic device
CN105354138A (zh) * 2015-10-12 2016-02-24 上海斐讯数据通信技术有限公司 一种确定手机页面上特定控件属性的方法
CN105930261B (zh) * 2016-01-16 2018-06-22 平安科技(深圳)有限公司 测试方法及测试终端

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102122253A (zh) * 2011-02-25 2011-07-13 天津易泰通信息技术有限公司 基于windows消息的实现数据交换的方法
CN103164164A (zh) * 2013-04-10 2013-06-19 天津三星光电子有限公司 一种触控终端应用程序的显示控制方法及其触控终端
CN103366109A (zh) * 2013-08-14 2013-10-23 德讯科技股份有限公司 一种基于数字图像识别算法的XWindow代填方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
逻辑坐标与设备坐标——全窗口坐标、屏幕坐标、客户区坐标的总结;Sin_Geek;《https://blog.csdn.net/sin_geek/article/details/22222437》;20140326;正文第1-3页 *
鼠标API;没事多学点;《https://blog.csdn.net/shengzhadon/article/details/26744369》;20140523;正文第1-2页 *

Also Published As

Publication number Publication date
CN109614169A (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
AU2016286308B2 (en) Robotic process automation
Gurevich et al. TeleAdvisor: a versatile augmented reality tool for remote assistance
CN105807966B (zh) 一种触摸屏事件的获取方法及装置
DE112011102891T5 (de) Automatisches Anpassen einer Eingabekonfiguration
DE102012014603B4 (de) Betriebssystem und Verfahren für den synchronisierten Betrieb einer Touch-Vorrichtung
Lin et al. Apply RPA (robotic process automation) in semiconductor smart manufacturing
CN109614169B (zh) 基于像素坐标方式的Windows客户端应用程序自动运行方法
CN103092518B (zh) 一种基于rdp协议的移动云桌面精确触控方法
DE202017105614U1 (de) Systeme und Computerprogrammprodukte für eine Touchscreen-Benutzeroberfläche eines kollaborativen Bearbeitungstools
US20210064397A1 (en) Operation display apparatus and operation display program
CN105589552A (zh) 基于手势的投影交互方法及投影交互设备
DE102019200287A1 (de) Bildmessgerät und computerlesbares Medium
CN103064646A (zh) 一种拼接墙显示方法及装置
KR102011212B1 (ko) 인공지능 신경망의 학습 데이터로 사용되는 객체의 추출 및 저장방법
CN105262880A (zh) 一种应用于WiFi网络的手机控制演示系统
CN102520794B (zh) 手势辨识系统及方法
CN112416332B (zh) 一种图形化编程的界面展示方法、装置、设备及介质
DE102016204692A1 (de) Steuerung der Mehrfachauswahl auf berührungsempfindlichen Flächen
CN114430823A (zh) 软件知识捕捉方法、装置和系统
Kubenke et al. Potentials of IT-supported assistive systems: Comparison of two user studies in the manufacturing industry
CN105260288A (zh) 用图形化界面来显示主机的实时使用状态的方法
CN111814220B (zh) 一种cae的云仿真实现方法
CN104699243A (zh) 一种基于单目视觉的无实体虚拟鼠标方法
CN111818150B (zh) 一种基于云平台的cae仿真系统
CN112053280B (zh) 全景地图显示的方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Automatic Running Method of Windows Client Applications Based on Pixel Coordinate Method

Granted publication date: 20220315

Pledgee: China Minsheng Banking Corp Shanghai branch

Pledgor: SHANGHAI SUNINFO TECHNOLOGY Co.,Ltd.

Registration number: Y2024310000433

PE01 Entry into force of the registration of the contract for pledge of patent right