meatsack
Active Members-
Posts
72 -
Joined
-
Last visited
Recent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
meatsack's Achievements
Wayfarer (2/7)
0
Reputation
-
Countermeasures employed by Webmasters vs AutoIt
meatsack replied to meatsack's topic in AutoIt General Help and Support
I would prefer to keep that confidential. -
Countermeasures employed by Webmasters vs AutoIt
meatsack replied to meatsack's topic in AutoIt General Help and Support
1. Firefox browser. IE became a nightmare diff IE different IE behaviours on different hardware, arrggh 2. I use the FF.au3 placed inside the system folder "Include" _FFOpenURL('MysteryWebsite') sleep(1000) _FFLoadWait() $profileLink = getProfileLink() setStatus("MysteryWebsitePage") MysteryWebsitePage() if $profileLink <> '' Then _FFOpenURL($profileLink) sleep(1000) _FFLoadWait() EndIf setStatus("Setting text message.") setTextMessage($sMessage) setStatus("Submitting message.") submitMessage() setStatus("Message has been sent.") For $i=5 to 1 step -1 setStatus("Pause for " & $i & " second(s).") sleep(1000) Next WEnd MsgBox(64,"Success","Process Done!") I use the following: #include <IE.au3> #include <FF.au3> #include<File.au3> #include <FTPEx.au3> #include <ButtonConstants.au3> #include <ComboConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <StaticConstants.au3> #include <WindowsConstants.au3> Thanks. -
Countermeasures employed by Webmasters vs AutoIt
meatsack replied to meatsack's topic in AutoIt General Help and Support
Thank you for your suggestions. As there is more than 1 way to write a AutoIt Script, can sendkeys be more reliable or away around attempts to subvert the use of AutoIt on a public website? A. 4&5 I suspect they might be using this tactic or may have the ability to do so. However, its just pure speculation on my part as I don't have the knowledge to know if its even possible to do. B. The website does not have a EULA that restricts automation. Any suggestions will be appreciated. -
I am running a non-malicious automation script on a public website that I have a username and password for. I am curious if anyone is aware of webmaster measures to defeat the use of AutoIt? I am interested in Countermeasures employed by Webmasters vs AutoIt. In what ways can a webmaster be aware or discover you are using AutoIt? So far I may be paranoid but I suspect they have done the following to me. 1. Moved the layout of the page so that my script once accurately hit their yes button, button is moved so I can no longer automatically select yes. 2. Temporary ban on my IP address 3. Slowing down or logging me out of my user account interface 4. ?Deleting the text data I attempted to paste from #include<File.au3> 5. ?Deleting or otherwise defeating my script when it steps through the following script: setStatus("Setting text message.") setTextMessage($sMessage) setStatus("Submitting message.") submitMessage() setStatus("Message has been sent.") What are the common methods webmasters use to defeat AutoIt, or limit its use? Any suggestions on counter-counter measures(sendkeys?) Thank you in advance.
-
Ok, great Mr. MrMitchell, I have it. Since it was Excel 2003 Basic Edition it was a little different. I had to click on my "data formula or whatever" Righ click, that brings up a pull down menu. I select "Data Range Properties. . ." Then I select "Saved Password" under the Section titled "Query definition" That has now made my query have a persistent password, whereas before it only had my logon id persistent in the pop up window. Now I now longer have a pop up window to deal with. I am greatly indebted to you. I will try and pay it forward Like old Ben.
-
Thanks much. I will try it both ways. This security thing gets so complicated. I logon with xp with a different user and password from the Excel SQL data connection. The user name is persistent in the popup box, but the password is not. There is a box on that popup to check "trusted connection" but it resets each time that file is reopened. I will post my results soon.
-
When I refresh my excel data I am blocked and a pop up window titled "SQL Server Login" comes up, will not close down till I have typed password and selected the "ok" button. Fortunately the "Login ID:" box stay persistent and I don't have to reenter that each time. So what is the method for auto entering the password on this SQL pop up when your code is opening and manipulating the Excel application? I have tried to identify how this works but was not successful. This is what I tried so far: 1. Search the name of the process in the C: drive : $oExcel.ActiveWorkbook.RefreshAll = no results When I try a known process such as _ExcelBookOpen I can then easily access its location in the AutoIt Help section under UDF User Defined Functions Reference 2. If no results under 1 then I go to step 2 Search online wiki at http://www.autoitscript.com/wiki/Main_Page 3 If no results under 1 or 2 then I go to step 3 Search online google I can find "activeWorkbook" properties in the Microsoft Visual Basic Help section and also in the Object Browser when in Microsoft Visual Basic "editor" but I don't find any globals or classes that are titled .RefreshAll 4. 3 leads me to 4, search MSDN. They say that "Workbook.RefreshAll" is a "method" and give the coding example : 'Declaration Public Overridable Sub RefreshAll 5. Suggestion of what to do next? Bottom line question, I still don't know where this method came from nor do I have a example presented for its standard use. Since I don't know I just speculate that stating $oExcel.ActiveWorkbook. enables you to incorporate almost any process procedure you want to use from Visual Basic and/or Visual Basic for Applications. Since I don't know how to use it I was hoping to find something like the following that defines and gives an example for the method, In this example the method is _ExcelBookOpen: Function Reference _ExcelBookOpen -------------------------------------------------------------------------------- Opens an existing workbook and returns its object identifier. #Include <Excel.au3> _ExcelBookOpen($sFilePath [, $fVisible = 1 [, $fReadOnly = False [, $sPassword = "" [, $sWritePassword = ""]]]]) Parameters $sFilePath Path and filename of the file to be opened $fVisible [optional] Flag, whether to show or hide the workbook (0=not visible, 1=visible) (default=1) $fReadOnly [optional] Flag, whether to open the workbook as read-only (True or False) (default=False) $sPassword [optional] The password that was used to read-protect the workbook, if any (default is none) $sWritePassword [optional] The password that was used to write-protect the workbook, if any (default is none) Return Value Success: Returns new object identifier Failure: 0 and set @error @error: 1 - Unable to create the object 2 - File does not exist Remarks None Related _ExcelBookAttach Example ; *************************************************************** ; Example 1 - Open an existing workbook and returns its object identifier. ; *****************************************************************#include <Excel.au3> $sFilePath1 = @ScriptDir & "\Test1.xls" ;This file should already exist $oExcel = _ExcelBookOpen($sFilePath1)If @error = 1 Then MsgBox(0, "Error!", "Unable to Create the Excel Object") Exit ElseIf @error = 2 Then MsgBox(0, "Error!", "File does not exist - Shame on you!") Exit EndIf I can find no Function Reference for $oExcel.ActiveWorkbook.RefreshAll: Function Reference 1. $oExcel.ActiveWorkbook.RefreshAll -------------------------------------------------------------------------------- 2. Refreshes an existing workbook? 3. #Include <Excel.au3> 4. Parameters UNKNOWN 5. Return Value UNKNOWN 6. Success:UNKNOWN 7. Failure: 0 and set @error? UNKNOWN 8. Remarks UNKNOWN 9. Related UNKNOWN 10. Example UNKNOWN Thanks in advance for any help or suggestions.
-
Thank you BrewManNH and Melba23, I am in business now. That enabled me to see my array. BTW what happens to the data in the variable $output after the execution of the return function? I think I can do much better at fishing now. No more of this: Given the number of views on this threat of over 47 It may be helpful if someone were to put a tutorial or maybe something in the wiki that hey if you want to view variables to help you trouble shoot then try 1. the watch function window of AutoIt Debugging program 2. Cut and paste: MsgBox(0, "Value", "$output = " & $output) wherever you want the program to identify your variable(replace $output with your variable) and it has the added benefit of pausing your program until you shut down the window that has popped up. 3. You could also try _________.
-
Thank you for that scripting technique. Ok, I was able to play around with that. And I did get it to show me other variables in my code, however I was not able to identify the value of the variable "$output." Is there something I am doing wrong? #Include <File.au3> #include <Excel.au3> #include <Array.au3> #include <String.au3> #include <IE.au3> HotKeySet("^.", "quit") #include <GUIConstantsEx.au3> Local $s_FromName = 'my' ; From Name Local $s_FromAddress = 'my' ; From @mail Local $s_ToAddress = 'a' ; To @mail Local $s_Username = 'my' ; Gmail Username Local $s_Password = 'm' ; Gmail Password Local $oFile = @ScriptDir & "\test1.xls" ; Excel File ; First time to start! gmailSMTP(excelUpdate()) Func excelUpdate() Local $Excel = ObjCreate("Excel.Application") $Excel.Visible = True $Excel.WorkBooks.Open($oFile, 2, False) $Excel.ActiveCell.QueryTable.Refresh $Excel.ActiveWorkBook.Saved = 1 $Excel.Quit $oExcel = _ExcelBookOpen($oFile) $oRead = _ExcelReadSheetToArray($oExcel, 2, 1, 40) _ExcelBookClose($oExcel) $output = "" For $r = 0 to UBound($oRead,1) - 1 $output = $output & @CRLF For $c = 0 to UBound($oRead,2) - 1 $output = $output & $oRead[$r][$c] & " " Next Next Return $output EndFunc MsgBox(0, "Value", "$output = " & $output) Thanks.
-
Thanks this looks like your sending me in the right direction to enable me to check variable values. Ok what that did for me was: 1 Opened a window labeled "Test" with a button entitled "Add." 2. When I hit the button it just identifies the value for the variable $iCount in a new pop up window named value. That last window also has a button labeled "ok" and kills the window when pressed. So Do I change the variable $iCount to the name of the variable in my code that I am interested in? How do I determine where in the script it is when it has given me this value? Also, I just discovered the "Watch" window in "AutoIt Debugger" is that how you check the value of your variable line to line, just using that window plus the run to cursor part of "AutoIt Debugger?"
-
By first giving him the fish, the fish that is used as the bait: Message Box. Can someone write down the code for me that I can cut and paste into my code so that I can see the value of all(or at least one) of the variables in my script. If I had that, then I could use SciTE, run to cursor and see what my script is doing or not doing so I can futz around with the code on my own. For example: On my monitor I want to see my script in one window and then in a second window I want to see the value of my variable or all my variables. Then I can "run to cursor" the next line or two and see if the value of my variable or variables has changed. Is that possible? The "output" window in SciTE doesn't do that and neither does "AutoIt Debugger." I see that "AutoIt Debugger" has a "variables" window but it displays the number of that particular variable in that window it doesn't tell you what the PC thinks the value is at any given step in your script. I will be eternally grateful. Thank you.
-
Yes, thanks I had it working with port 465 but I will do any modifications suggested on the forum. 1 Question do peek at the value of my variable after a particular line of code has executed do I have to put the code below at the beginning or between each line of code. Do I have to name each variable of which I want to check the value? Func dbg($msg) DllCall("kernel32.dll", "none", "OutputDebugString", "str", $msg) EndFunc dbg("The value of Variable 1 at this time is " & $var1) Or is there a way to look at the value at a specific moment in time with SciTE or "AutoIt Debugging" program? I worry that forum readers will be stupider after having read my questions and comments. I am beginning to think something is not working right such as "AutoIt Debugging" crashing and the icons locking up. I had this working right about 2 months ago, now I can't figure out what changed.
-
Do you mean my code should look like this: $objEmail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 $objEmail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "http://smtp.gmail.com" $objEmail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 That's not working either. Does AutoIt only work with certain versions of IE and Excel? I have IE 8.0.6 and Excel 2003 SP3 Basic Edition. With my original version it was sending blank emails now it won't even send emails.
-
Its saying "missing separator character after keyword.: $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = http://smtp.gmail.com I also tried it like this: $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "http://smtp.gmail.com"