Jump to content

Recommended Posts

Posted (edited)

I'm building a script to interface with an internally build application made with .Net.  My end goal is to have a script that will take the user's Username/Password as command line arguments and insert them into the applications login form.  

The issue I'm running into is around detecting text in a button control.  On the login page,there is a button to switch between Smart Card and UN/PW login.

>>>> Control <<<<
Class: WindowsForms10.BUTTON.app.0.2bb23b_r22_ad1
Instance: 3
ClassnameNN: WindowsForms10.BUTTON.app.0.2bb23b_r22_ad13
Name: btnLoginMode
Advanced (Class): [NAME:btnLoginMode]
ID: 852626
Text: Standard Login
Position: 156, 113
Size: 102, 26
ControlClick Coords: 55, 14
Style: 0x5601000B
ExStyle: 0x00000000
Handle: 0x000D0292
 
Can anyone please help guide me how to add logic to determine if this button says "Standard Login" vs "Smart Card"?  I need the script to wait until the "LoginMode" button says Standard Login or cancel if the user clicks the OK (NAME:btnOk) or Cancel (NAME:btnCancel) buttons.
 
Thank you.
Christopher
Edited by carazytrk
Posted

I'm trying to use the ControlGetText() function, however get @error=1 and ""

Local $btnLoginMode = ControlGetText("Workstation Login","","[NAME:btnLoginMode]]")
Do
    Sleep(20)
    MsgBox(0, "Value of $btnLoginMode is:", $btnLoginMode)
    $btnLoginMode = ControlGetText("Workstation Login","","[NAME:btnLoginMode]]")
Until $btnLoginMode = "Smart Card"
Posted (edited)

which Smart Card software you use ?

Edit:

no longer valid misunderstood your post
 
I understand that signing the application is a separate application, not related to the manufacturer of the smart card reader.
Edited by mlipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

  Reveal hidden contents

Signature last update: 2023-04-24

Posted

I ended up using a wait loop to work around this.  Thanks for the help

While ControlCommand("Workstation Login", "", NAME: txtPassword, "IsVisible", "") = 0
    If Not WinExists("Workstation Login") = 1 Then Exit
WEnd

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...