Jump to content
Sign in to follow this  
ubelong2matt

Possible Send Bug

Recommended Posts

I'm hoping someone can help me.  I have a script that grabs the source of an XML page, parses it using _XMLDomWrapper, writes to an INI, and compares that with preparation to use "send" commands to post to a Twitter account.  The problem is, when trying to send the title of the XML, message boxes display it correctly but the sent information omits the first character, posts second, then omits two more before posting the rest of it.
 
For instance, the title is stored in a variable and is displayed as when passing it to a message box:

#Phishing: Phishing: It Help Desk

However, when it is passed to the send command to be typed into a Twitter post, it turns into:

ishing: Phishing: It Help Desk

It sounds confusing so here's my code.  The XML file and INI file will generate automatically.  I would suggest, since that's a live feed of XML that you use the XML provided below and opt NOT to update the XML file when asked.  Also, each time you run the program, you'll want to delete the INI file so it actually runs the functions to send the information.
 
WARNING:  I am not good at coding.  I learn by example and most of the code I write is sloppy and could probably be done in vastly fewer lines of code and easier with different functions or techniques.  You have been warned that this will be ugly.
 
Script:

#include <_XMLDomWrapper.au3>
#include <Inet.au3>

Opt("SendKeyDelay", 10)

;==============================================
;     VARIABLES
;==============================================
Global $xmlFile = @ScriptDir & "\alerts.xml"
Global $alertINI = @ScriptDir & "\alert.ini"
;==============================================

If FileExists($xmlFile) Then
    Switch MsgBox(36,"File Exists","The XML file exists." & @CRLF & "Should it be deleted and a new one downloaded?")
        Case 6 ;yes
            FileDelete($xmlFile)
            _getXML()
            _parseXML()
            _iniCompare()
        Case 7 ;no
            _parseXML()
            _iniCompare()
    EndSwitch
Else
    _getXML()
    _parseXML()
    _iniCompare()
EndIf

;==============================================
;     FUNCTION _getXML
;==============================================
Func _getXML()
    Local $xmlSource = _INetGetSource('http://alerts.illinoisstate.edu/xml/',True)
    FileWrite($xmlFile,$xmlSource)
EndFunc
;==============================================

;==============================================
;     FUNCTION _parseXML
;==============================================
Func _parseXML()
    _XMLFileOpen($xmlFile, 'xmlns:isuoa="http://alerts.illinoisstate.edu/xml/oa.dtd"')

    Local $title = _XMLGetValue("//title")
    Global $alertTitle = "#" & $title[3]
    MsgBox(0,"test",$alertTitle)

    Global $alertLink = _XMLGetValue("//link")
    $alertLink = StringReplace($alertLink[3],"http://","")
    $alertLink = StringReplace($alertLink,"illinoisstate","ilstu")
    $alertLink = StringReplace($alertLink,"#_","")
    ;MsgBox(0,"test",$alertLink)

    Global $alertUpdate = _XMLGetValue("//isuoa:updatecount")
    $alertUpdate = $alertUpdate[1]
    ;MsgBox(0,"test",$alertUpdate)
EndFunc
;==============================================

;==============================================
;     FUNCTION _iniCompare
;==============================================
Func _iniCompare()
    If $alertTitle = IniRead($alertINI,"OPTS","Title",0) And $alertLink = IniRead($alertINI,"OPTS","Link",0) Then
        If $alertUpdate > 0 Then
            If $alertUpdate <> IniRead($alertINI,"OPTS","Update",0) Then
                ;_twitterLogin()
                _postUpdate()
            EndIf
        EndIf
    Else
        ;_twitterLogin()
        _postAlert()
    EndIf
EndFunc
;==============================================

;==============================================
;     FUNCTION _twitterLogin
;==============================================
Func _twitterLogin()
    ;MsgBox(0,"test","lets log into twitter")
    ShellExecute("http://twitter.com")
    Sleep(2000)
    Send("{ENTER}")
    Sleep(5000)
    Send("{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}{TAB}")
EndFunc
;==============================================

;==============================================
;     FUNCTION _postAlert
;==============================================
Func _postAlert()
    Sleep(2000)
    Send("{ASC 35}" & $alertTitle & @CRLF & $alertLink)
    ;Send($alertTitle & @CRLF & $alertLink)
    IniWrite($alertINI,"OPTS","Title",'"' & $alertTitle & '"')
    IniWrite($alertINI,"OPTS","Link",'"' & $alertLink & '"')
    IniWrite($alertINI,"OPTS","Update",$alertUpdate)
    Sleep(2000)
    ;MsgBox(0,"test",$alertTitle & @CRLF & $alertLink)
EndFunc
;==============================================

;==============================================
;     FUNCTION _postUpdate
;==============================================
Func _postUpdate()
    Sleep(2000)
    Send("[UPDATE] {ASC 35}" & $alertTitle & @CRLF & $alertLink)
    ;Send("[UPDATE] " & $alertTitle & @CRLF & $alertLink)
    IniWrite($alertINI,"OPTS","Update",$alertUpdate) ;make this last
    Sleep(2000)
    ;MsgBox(0,"test",$alertTitle & @CRLF & $alertLink)
EndFunc

;==============================================

XML:

<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0" xmlns:isuoa="http://alerts.illinoisstate.edu/xml/oa.dtd" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Tech Alerts at Illinois State University</title>
        <link>http://alerts.illinoisstate.edu/</link>
        <description>Technology Alerts that affect Illinois State University</description>
        <language>en-us</language>
        <copyright>Copyright 2013, Illinois State University</copyright>
        <webMaster>alerts@illinoisstate.edu (Tech Alerts at Illinois State)</webMaster>
        <atom:link href="http://alerts.illinoisstate.edu/xml/" rel="self" type="application/rss+xml" />
        <image>
            <url>https://alerts.illinoisstate.edu/templates/images/rss-logo.png</url>
            <title>Tech Alerts at Illinois State University</title>
            <link>http://alerts.illinoisstate.edu/</link>
            <description>Tech Alerts</description>
            <width>102</width>
            <height>102</height>
        </image>
        <item>
            <title>Phishing: Phishing: It Help Desk</title>
            <link>http://alerts.illinoisstate.edu/#_2614</link>
            <description><![CDATA[<p>The following phishing email has been reported to the Help Desk. This email was not sent by Illinois State University.</p>
<p><span style="color: rgb(255, 0, 0); font-weight: 700;">Important:</span> If you clicked the link in this email and &quot;logged in&quot; with your ULID and password, you should change your password and security question immediately.</p>
<p>For more information, refer to <a href="http://helpdesk.illinoisstate.edu/kb/1364/">[1364] How to recognize phishing emails targeting Illinois State University</a>.</p><blockquote><p>Your mailbox is almost full.</p><p>465MB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 500MB</p><p>Current size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Maximum size</p><p>Please increase your mailbox quota size automatically by clicking HERE&lt;http://valmessage.jigsy.com/&gt; and fill-out the necessary requirements to automatically increase your mailbox quota size.</p><p>IMPORTANT NOTE: You won&#39;t be able to send and receive mail messages at 480MB .</p><p>ITS help desk</p><p>ADMIN TEAM</p><p>=A9Copyright 2013 Microsoft</p></blockquote>]]></description>
            <pubDate>Tue, 22 Oct 2013 12:15:00 -0500</pubDate>
            <category>Active</category>
            <isuoa:updatecount>0</isuoa:updatecount>
            <author>alerts@illinoisstate.edu (Tech Alerts at Illinois State)</author>
            <guid isPermaLink="true">http://alerts.illinoisstate.edu/archive/2614/</guid>
        </item>
        <item>
            <title>Network: Network Maintenance</title>
            <link>http://alerts.illinoisstate.edu/#_2343</link>
            <description><![CDATA[<p><span style="color: rgb(0, 0, 0); font-family: Tahoma, sans-serif; ">Telecommunications &amp; Networking have scheduled network maintenance for this date. More details will be posted as they become available.</span></p>]]></description>
            <pubDate>Sun, 17 Nov 2013 00:00:00 -0600</pubDate>
            <category>Upcoming</category>
            <isuoa:updatecount></isuoa:updatecount>
            <author>alerts@illinoisstate.edu (Tech Alerts at Illinois State)</author>
            <guid isPermaLink="true">http://alerts.illinoisstate.edu/archive/2343</guid>
        </item>
    </channel>
</rss>
I scoured the internet and these forums/site for anything that could explain what it's doing.  If this is a stupid question/problem all I ask is that you go easy on me and forgive my ignorance.
 
Thank you for your time,
Matt
Edited by ubelong2matt

Share this post


Link to post
Share on other sites

Would like to help you but got this when I tried to download the dependency:

 

403. That’s an error.

Your client does not have permission to get URL /files/_XMLDomWrapper.au3 from this server. (Client IP address: 220.xxx.xxx.xxx)

You are attempting to perform an activity that you have insufficient permissions for. If you feel this is in error, please contact the project administrator. That’s all we know.

 

Share this post


Link to post
Share on other sites

Would like to help you but got this when I tried to download the dependency:

 

Hmm, not sure what dependency you're talking about.  If it's the XML file, I said not to use it since it changes.  This script works fine unless the word starts with a PH (for phishing).  There are system and network alerts also.  I've only tested it with system, aside from phishing, and it works fine with that.  You shouldn't use the XML download (say no when prompted).  I provided the XML to test with since, in this particular incident, the bug exists in it.

 

Help file -> "When using 2 digit ASCII codes you must use a leading 0"

 

The ASCII code was added as a "work-around" attempt for this problem.  I thought the use of the hash tag may have been the problem.  Before that, I was using +3 to issue a hash tag.  I also tried slowing down the send speed but it didn't work or I need to slow it down further.

After more testing, I noticed that there is rectangle window that appears, for a split second, over SciTE which I think is the culprit.  It has nothing in it that I can read and doesn't appear long enough to even screen shot.  However, I think it's causing the problem.  I will try to find out what it is.

Thanks for the help so far, guys!

Share this post


Link to post
Share on other sites

Ok I get you now.

Try sending the # raw.

Send("#", 1)

EDIT:

Or the whole string as raw, else autoit sees #p as Windows key + p

 

John, you're wonderful.  Thank you so much.  That worked!!!!  I owe you a beer.

EDIT

The window I saw, shape and all, WAS Windows+p.  So simply.  Awesome catch!!!!

Edited by ubelong2matt

Share this post


Link to post
Share on other sites

Oh.  Grunty, you can just search the web for the AutoIt _XMLDomWrapper.au3 include.  I would post it here but it won't be updated as newer versions get created (possible).

Share this post


Link to post
Share on other sites

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
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Drac89
      Hi Team, 
      I am trying to send credentials via autoit on a web app launched via IE. I am passing the credentials into variables and trying to send them send("$username") but username field isn't getting populated. But the password field, I can send the credential, also when I try ieformsetvalue and set the username wrt username field fetched, it's getting send but my login button remains greyed out. 
      Can angularjs keydown function interfere in the autoit send process and not allow the credentials passed if it's not typed out? This is a general question to understand if javascript or angular js etc could detect if the credentials are automated, then it might not detect it as a keydown? 
    • By rudi
      Hello,
      once more I have to see, that my knowledge about XML is too poor, even to use this existing XML UDF
      If it should be a better approach to make use of StringRegEx, or maybe a totally different approach, any suggestions will be mostly appreciated.
       
      I downloaded the ZIP XML_1.1.1.13 and tried to get how to use it from the sample AU3 files included in that ZIP file, well, I don't really get it😵
       
       
      What I want to do:
      My mobile phone's backup contain all the contacts in an XML file. This is an example of such a file, backupinfo.xml, shortened to show just one fictive entry:
       
      <?xml version="1.0" encoding="utf-8" ?> <ContactRecords> <contact> <structuredName> <displayName>Max Mustermann</displayName> <givenName>Max</givenName> <familyName>Mustermann</familyName> <prefixName /> <middleName /> <suffixName /> <phoneticGivenName /> <phoneticMiddleName /> <phoneticFamily /> </structuredName> <organization> <company>Schlosserei Mustermann GmbH</company> <department /> <title /> </organization> <phones> <phone> <number>07652 881 8181</number> <type>home</type> <customLabel /> </phone> <phone> <number>0 800 435 2758</number> <type>work</type> <customLabel /> </phone> <phone> <number>+49 160 4321 222</number> <type>mobile</type> <customLabel /> </phone> </phones> <emails /> <addresses /> <ims /> <WebSites /> <Events /> <note /> <nickName /> <photo /> <netPhone /> <groups> <group> <groupName>Ungrouped</groupName> </group> </groups> </contact> </ContactRecords>  
      Basically I want to search my mobile's contacts for phone numbers to, to see, what contact they belong to. Propably it will make the task much more easy, when standardizing the mobile's contact XML to hold all numbers in "international-notation-without-any-whitespaces" (thats no problem):
       
      <?xml version="1.0" encoding="utf-8" ?> <ContactRecords> <contact> <structuredName> <displayName>Max Mustermann</displayName> <givenName>Max</givenName> <familyName>Mustermann</familyName> <prefixName /> <middleName /> <suffixName /> <phoneticGivenName /> <phoneticMiddleName /> <phoneticFamily /> </structuredName> <organization> <company>Schlosserei Mustermann GmbH</company> <department /> <title /> </organization> <phones> <phone> <number>+4976528818181</number> <type>home</type> <customLabel /> </phone> <phone> <number>+498004352758</number> <type>work</type> <customLabel /> </phone> <phone> <number>+491604321222</number> <type>mobile</type> <customLabel /> </phone> </phones> <emails /> <addresses /> <ims /> <WebSites /> <Events /> <note /> <nickName /> <photo /> <netPhone /> <groups> <group> <groupName>Ungrouped</groupName> </group> </groups> </contact> </ContactRecords>  
      What I would like to get from the XML file as a result, e.g. searching the phone number "+491604321222"
      Present in XML  or not (true) if present then return the values for... type (mobile) givenname (Max) familyname (Mustermann) company (Schlosserei Mustermann GmbH) optional: Other node names and their values within that contact, when not "empty" (like in this examle <emails /> or <middlename />)  
      The values from #2 - #6 would be perfect when returned in a 2D Array, Col0 = name, Col1 = value.
      Regards, Rudi.
       
    • By diff
      Hello,
      still learning and trying to understand AutoIT but having problem in filling my PDF file.
       
      So my code looks like similar to this:
      Global $1 = "text text 44444444" Global $2 = "texting2 texting2" Global $3 = "newtext3 next3" ShellExecute ("C:\Users\XXX\Desktop\myPDF.pdf") WinWaitActive("MyPDF.pdf - Adobe Acrobat Reader DC") Send ("{TAB}") ClipPut($1) Send ("^v") Send ("{TAB 3}") ClipPut($2) Send("^v") Send ("{TAB}") ClipPut($3) Send("^v") So its fill my PDF form, the first field looks good, the code add the text text 4444, then second should be $2 with texting2 texting2 but for some reason the code uses for second and third field after TAB only variable $3.
      So, I receive in $2 and $3 for some reason same newtext3 next3 in both, why its skipping the variable $2? Maybe there also much better solution for instant text? Because Send writes with delay by letters which I don't like.
      Thanks!
    • By Yodavish
      My AutoIt script works fine, for the most part, however, if it goes idle for roughly 30 minutes, it will won't be able to send data to a 3rd party application window titled, "Case #". 
      The problem lies within the function "SendFusion", it's able to see the handle for the "WinActivate" and "WinWaitActivate" (I've also tried putting in 10 seconds in the WinWaitActivate as well, doesn't work). However, if we have been idle, it will always fail to send data afterward. On what I've tried so far:
      "Send" function with the data and a {ENTER} i.e. Send($CaseTxt & "{ENTER}"), this won't even hit the enter key  ControlSetText, tried passing the handle from WinActivate, using the title "Case #" that was copied directly from the Autoit Window Info, hard coding the title, Using CLASS:WindowsForms10... always returns a 0 ControlCommand (same as above) always returns a 0 ControlGetFocus always returns a 0 ControlFocus, always returns a 0 Creating a new and simple Au3 script that just sends data to "Case #", also fails NOTE: If I close the Au3 script and just scan the data directly into the "Case #" or even type it, it works fine with no issues. I'm confused as to why it would not work after a long idle period?
      Below are the essential parts of the script, I can provide the entire thing if needed. Any suggestions would be greatly appreciated!
      #include <AutoItConstants.au3> #include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> #include <Process.au3> #include <Misc.au3> #include <IE.au3> ;--------------------------------------------------------------- ; Only one instance can run ;--------------------------------------------------------------- If _Singleton("gross.exe", 1) = 0 Then MsgBox($MB_SYSTEMMODAL, "Warning", "Gross.exe is already running. Please exit the existing version first (check the icons in the lower right corner of your screen) before running it again.") Exit EndIf ;--------------------------------------------------------------- ; AutoIt Options ;--------------------------------------------------------------- Opt("GUIOnEventMode", 1) ; Change to OnEvent mode Opt("WinWaitDelay", 0) ; Alters how long a script should briefly pause after a successful window-related operation. Time in milliseconds to pause (default=250). Opt("WinTextMatchMode", 1) ; Alters the method that is used to match window text during search operations. 2 = Quick mode Opt("SendKeyDelay", 0) ; Alters the length of the brief pause in between sent keystrokes. A value of 0 removes the delay completely. Time in milliseconds to pause (default=5). if ($fusionWindowTitle="NONE" or $fusionCaseNumWinTitle="NONE" or $appWindowTitle="NONE" or $winActivateTimeout="NONE" or $winCloseTimeout="NONE" or $winWaitTimeout="NONE" or $pdfViewerWidth="NONE" or $pdfViewerHeight="NONE" or $pdfViewerLeft="NONE" or $pdfViewerWindowName="NONE" or $pdfViewerExeName="NONE" or $pdfUrl="NONE" or $pdfDownloadCommand="NONE") Then Msgbox(0,"ERROR", "gross.ini is missing or does not contain all settings. Please contact Help Desk with this information") Exit -1 EndIf ;--------------------------------------------------------------- ; application settings/constants ;--------------------------------------------------------------- Global Const $[VARIABLE] = IniRead("gross.ini", "default", "[TitleOfVariable]", "NONE") Global Const $[VARIABLE] = IniRead("gross.ini", "default", "[TitleOfVariable]", "NONE") Global Const $[VARIABLE] = IniRead("gross.ini", "default", "[TitleOfVariable]", "NONE") Global Const $[VARIABLE] = IniRead("gross.ini", "default", "[TitleOfVariable]", "NONE") ;--------------------------------------------------------------- ; create the main window ;--------------------------------------------------------------- Local $mainWindow = GUICreate($appWindowTitle, 380, 190) ; create the main GUI window GUISetOnEvent($GUI_EVENT_CLOSE, "handleCloseClick") ; when the click the windows close button call handleCloseClick() WinSetOnTop($appWindowTitle, '', 1) ; Sets main GUI always on top ;--------------------------------------------------------------- ; create the controls on the main window ;--------------------------------------------------------------- Local $okButton = GUICtrlCreateButton("OK", 160, 160, 54,24) ; create OK button GUICtrlSetOnEvent($okButton, "validateInput") ; when they click ok, call handleInputProcessRequest() GUICtrlCreateLabel("Scan Input", 10, 10) ; create a label Global $inputScan = GUICtrlCreateInput("", 10,134,358) ; create the input scan box GUICtrlSetOnEvent($inputScan, "validateInput") ; when they press enter in the scan input box, call handleInputProcessRequest() GUICtrlSetState($inputScan,$GUI_FOCUS) ; automatically sets focus on the input field GUISetState(@SW_SHOW) ; main GUI loop that runs at all times ;--------------------------------------------------------------- While 1 ;---------------------------------------------------------- ; If sumatraPDF active, resets focus back to GUI ;---------------------------------------------------------- If WinActive($pdfViewerWindowName) Then consoleWrite('While Loop sumatraPDF was active' & @CRLF) setMainWindow() ;---------------------------------------------------------- ; After data sent to ProTracker, check for mismatch ; save button to trigger the event handler when clicked ;---------------------------------------------------------- ElseIf WinActive($proTrackerWindowTitle) Then $ie = _IEAttach("ProTracker") $mismatchButton = _IEGetObjByName($ie, $proTrackerMisMatchButtonId) $oEvent = ObjEvent($mismatchButton, "mismatchButton_") If @error Then setMainWindow() ;--------------------------------------------------------------------- ; If Fusion is prompting for the case #, focus back to main GUI input ; If second GUI 'Unknown' detect do nothing ;--------------------------------------------------------------------- ElseIf WinExists($fusionWindowTitle) and WinExists($fusionCaseNumWinTitle) and Not WinActive($mainWindow) and Not WinExists('Unknown Input') Then setMainWindow() EndIF ;--------------------------------------------------------------------- ; Checks if $processFlag = Done, if so, shows PDF viewer and clears ; processFlag for next iteration ;--------------------------------------------------------------------- IF WinExists($pdfViewerWindowName) and $processFlag == 'Done' Then WinSetState ($pdfViewerWindowName, '', @SW_SHOW) $processFlag = '' setMainWindow() EndIF Sleep(100) ; Sleep to reduce CPU usage WEnd Func handleInputProcessRequest($input) $processFlag = True Local $hTimer = TimerInit() consoleWrite('> handleInputProcessRequest: ' & @CRLF) Local $idInput = identifyInput($input) ; Select a proccess to run based on id input Select Case $idInput = "container" ; regex that captures only the case number $caseTxt = StringUpper(StringRegExpReplace($strippedInputData, '\??(\w*\d*-\d*|\d*).*$','$1')) If WinExists($fusionWindowTitle) and WinExists($fusionCaseNumWinTitle) Then sendProTracker(StringUpper($strippedInputData)) sendFusion($caseTxt) ; gets pdf for sumatraPDF in seperate script, since that function is the slowest Run("viewPDF.exe " & $caseTxt) ;getSumatraPDF($caseTxt) $lastCaseNum = $caseTxt Else ; Checks to make sure the previous "Container" case num is the same ; to the current Container case num, before sending to ProTracker If($lastCaseNum <> $caseTxt) Then ; If not the same case number send alert sound SoundPlay("error.wav") Else sendProTracker($strippedInputData) EndIf EndIf Case $idInput = "user" sendProTracker($strippedInputData) Case $idInput = "cassette" sendProTracker(StringUpper($strippedInputData)) Case $idInput = "unknown" selectUnknown() EndSelect Local $fDiff = TimerDiff($hTimer) $processFlag = 'Done' consoleWrite('> handleInputProcessRequest Completed Total time: ' & $fDiff & ' ' &@CRLF&@CRLF&@CRLF) EndFunc Func sendFusion($caseTxt)     Local $hTimer = TimerInit()     consoleWrite('+ sendFusion initiated: ' & $caseTxt & @CRLF)     If $caseTxt = "" Then         MsgBox(0, "Error", "Not a valid case number")     Else         ;$fusionCaseNumWinTitle = "Case #"         $retVal1 = WinActivate($fusionCaseNumWinTitle, "")         consoleWrite("ReturnValue WinActivate " & $retVal1 & @CRLF)         $retVal2 = WinWaitActive($fusionCaseNumWinTitle,"",$winActivateTimeout)         consoleWrite("ReturnValue WinWaitActive: " & $retVal2 & @CRLF)         $retVal3 = ControlSetText($fusionCaseNumWinTitle, "", "", $caseTxt)         ;$retVal3 = ControlCommand($fusionCaseNumWinTitle, "", "", "EditPaste", $caseTxt)         consoleWrite("ReturnValue ControlSetText: " & $retVal3 & @CRLF)         ;Send($caseTxt & "{ENTER}")         WinWaitClose($fusionCaseNumWinTitle, "", $winCloseTimeout)         consoleWrite('+ sendFusion WinWaitClose: ' & @CRLF)     EndIf     Local $fDiff = TimerDiff($hTimer)     ConsoleWrite('+ sendFusion Completed Total time:' & $fDiff & ' ' & @CRLF) EndFunc
      Console logs from the SciTLE
      Window (x86) Info matches the correct handle for the WinActivate and WinWaitActivate

      Window Control (x86) Info, I've tried the CLASS, the ID, also I just noticed that the "handle" in "Control" and "Window" appear to be different as well.

       
      So far the only work-around is to close down the 3rd party application and the AutoIt script, re-open them and it works all completely fine. But this is a pain for the end-user since it's all touch screen and it slows down their workflow, which they can be extremely sensitive about.
       
    • By nacerbaaziz
      hello autoit group
      please i've a question
      i had make a function that put some thing into the clipBoard and paste it
      using the send function
      e.g
      ClipPut("hello")
      send("^v")
       
      when the keyboard is english all things work fine
      but when the keyboard is arabic the send command write the ltr v insted of the text in clipboard
      i was tryed to use
      send("{ctrldown}v{ctrlUp}")
      but the same
      please can any one help me
       
×
×
  • Create New...