Sign in to follow this  
Followers 0
mLipok

#Obfuscator_Parameters=/mo - problem with script line number in AutoIt Error message

5 posts in this topic

#1 ·  Posted (edited)

in my scritp i using this directive

#AutoIt3Wrapper_Run_Obfuscator=Y
#Obfuscator_Parameters=/mo
Script Error gives a message like: "Subscript used with non-array variable" "Line Number 55931"
 
Of course I know what the problem is, ie where there is an error in my script, I find after a while searching for the error and corrects him.
 
Unfortunately, at some cases, given the line of code is not in line with what is in the file: MyProgram_Obfuscated.au3
 
I mean. as it turns out the error "MyProgram_Obfuscated.au3" is included in the line number 55939.
 
Questions:
1
Did anyone happened to specified line was wrong, but so little, that the difference is only 8 lines of code?
2
Does anyone know the reason for this?
3
Can anyone steer me however to solve this problem?
 
EDIT:
topic change
from
#Obfuscator_Parameters=/mo
to
#Obfuscator_Parameters=/mo - problem with script line number in AutoIt Error message
Edited by mlipok

Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites



Yes, it's most likely because you use the line continuation character on some lines and the error message doesn't count those as separate lines it counts them as one long line.


If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

so I understand that I have all the declarations of variables such as:
 
$sString = "some text" & @CRLF & _
        "some text" & @CRLF & _
        "some text" & @CRLF & _
        "some text" & @CRLF

changed to:

 
$sString = "some text" & @CRLF
$sString &= "some text" & @CRLF
$sString &= "some text" & @CRLF
$sString &= "some text" & @CRLF

 

and it should all be OK.
 
 
And as long I wondered what is causing this problem.
 
As you can see it is worth asking "the right questions".
 
Many thanks for the clarification.

 

Best regards

mlipok

Edited by mlipok

Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

@BrewManNH

Once again, thank you very much for clarifying this issue.

It allowed me to find an error in the operation of the Obfuscator.exe.

 

look here: #2524


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

Fixed in Beta v1.0.30.14

TRACK TICKET: #2524


Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

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  
Followers 0

  • Similar Content

    • TheDcoder
      By TheDcoder
      Where can i find it ?
      TD
    • Jos
      By Jos
      1/22/2014: re-Uploaded a new SciTE4AutoIt3.exe installer with the new SciTE v3.3.7 release.
      This version contains a version of AutoIt3Wrapper and SciTEConfig which are recompiled with AutoIt3 v 3.3.10.2 to avoid te hardcrash with Athlon CPU's.
      There are a couple of major changes:
      - Updated our version of SciTE from 3.3.6 to 3.3.7
      - AutoIt3Wrapper will now use  "c:users<userName>AppdataLocalAutoit v3Aut2Exe" as Temp directory.
      - Updated syntax files.

      Enjoy,
      Jos


      Addition/Changes/Fixes in the current installer:
      -------------------------------------------------------------------------------------------------- 01/22/2014 *** Updated AutoIt3Wrapper v2.1.4.5 (Jos)     - Fixed issue with undecleared variable error when using /Versioning_Commit     - Recompiled with version 3.3.10.2 because 3.3.10.0 could give a hardcrash. *** Updated SciTEConfig v1.6.11.1 (Jos)     - Recompiled with version 3.3.10.2 because 3.3.10.0 could give a hardcrash. -------------------------------------------------------------------------------------------------- 12/29/2013 *** Fixed missing SciTEConfig in SciTE4AutoIt3 installer. -------------------------------------------------------------------------------------------------- 12/28/2013 *** Merged the updates of SciTE v 3.3.7 by Neil Hodgson with our own version of SciTE. (Jos) *** Updated Production config files to 3.3.10.0 *** Updated AutoIt3Wrapper v2.1.4.0 (Jos)     - Use "c:\users\<userName>\Appdata\Local\Autoit v3\Aut2Exe" as Temp directory for compiling and resource updating like aut2exe.     - Fixed issue with Compile both and Pragma(x64,true)     - Fixed inputfile in case Obfuscator needs to run but is skipped due to unsupported utf format.     - Fixed UPX selection option to default to N and adding the Directive when checkbox is checked. *** Updated Obfuscator.exe v1.0.31.1 (Jos)     - Changed the code to leave #include statements that include a a3x file. -------------------------------------------------------------------------------------------------- 11/14/2013 *** Merged the updates of SciTE v 3.3.6 by Neil Hodgson with our own version of SciTE. (Jos)     - Added check to avoid double shelling of the script via shortcuts of the tools menu items.     - Added Properties option to set the default encoding of new files:         NewFileEncoding=CodePage/UTF8/UTF8BOM/UTF16BE/UTF16LE     - Fixed issue in AU3 lexer to show the last correctly when the previous line is a commentline, commentblock, Special and Directives. *** Updated AutoIt3Wrapper v2.1.3.0 (Jos)     - Fixed issue where a tempfile was left behind when files was checked by au3check and UTF encoded.     - Added support for the #PRAGMA statement to avoid any conflicts. Warnings are now displayed in the Console output.     - Added SciTE version to the displayed info in the Console Output.     - Added #AutoIt3Wrapper_Res_Remove (wraithdu)     - Added File compression for Resource Files (wraithdu)         #AutoIt3Wrapper_Res_File_Add=%in%, 10, UNCOMPRESSED         #AutoIt3Wrapper_Res_File_Add=%in%, -10, COMPRESSED     - Updated option to change the TempDir in the INI file. Default changed to @UserProfileDir. (wraithdu)     - Fixed adding /Beta to the Obfuscator line when using the /Beta on the commandline of Autoit3wrapper.     - Fixed to ensure UPX is ran when needed.     - Fixed: Allow | in run_before and Run_After directives. *** Updated Tidy v2.4.0.0 (Jos)     - Added support for 3.3.9.x changes.     - Changed default EOF setting to add the CRLF. (End_With_NewLine=1)     - Fixed removal of spaces for new Var/Func notation     - Fixed crash caused by Function table load. *** Updated SciTEConfig v1.6.11.0     - Updates for Abbrev manager and User Calltip Manager (Melba23) *** Updated Obfuscator.exe v1.0.31.0 (Jos)     - Fixed ensure #pragma statements are not stripped.     - Fixed Regression internal code cleanup done before. The Obfuscation was broken     - Fixed #include logic for #Include not first checking the Directory where the file containing the include is located.     - Added check for max 4100 character record len without causing a crash. *** Added support for personal LUA functions. Look at "PersonalTools.lua" in your @UserProfileDir subdir for details. *** Updated SciTEJump to the latest version v2.13.103.227 (guinness) -------------------------------------------------------------------------------------------------- ==> ScitillaHistory page containing all SciTE/Scintilla updates.
      ==> Visit the SciTE4AutoIt3 Download page for the latest versions
      ==> Check the online documentation for an overview of all extra's you get with this installer.
       
    • mLipok
      By mLipok
      Can I use directives to AutoIt3Wrapper and Obfuscator in a include file ?
        For me it is important to me because I lead a lot of different projects and I would like everywhere standardize the use of these directives.  
    • mLipok
      By mLipok
      In some scripts, I use as follows Obfuscator parameters:
      #AutoIt3Wrapper_Run_Obfuscator=Y #Obfuscator_Parameters=/sf /sv /om /cs=0 /cn=0 /mo In some other scripts, I use as follows Obfuscator parameters:
      #AutoIt3Wrapper_Run_Obfuscator=Y #Obfuscator_Parameters=/sf #Obfuscator_Parameters=/sv #Obfuscator_Parameters=/om #Obfuscator_Parameters=/cs=0 #Obfuscator_Parameters=/cn=0 #Obfuscator_Parameters=/mo I do not know why I have such a distinction, perhaps I used some example.

      QUESTION:
      Are both indicated examples correct?

    • mLipok
      By mLipok
      Referring to:

      and
      /?do=embed#entry1102929'' frameborder='0' data-embedContent>>
      I would like to present AU3 Tools - Quick Updater :
      Global $URL_Scite = 'http://www.autoitscript.com/autoit3/scite/download/beta_SciTE4AutoIt3/' _INET_DownloadIfNotEqual("AutoIt3Wrapper.exe") _INET_DownloadIfNotEqual("Obfuscator.exe") _INET_DownloadIfNotEqual("SciTE.exe") _INET_DownloadIfNotEqual("SciteConfig.exe") _INET_DownloadIfNotEqual("Tidy.exe") _INET_DownloadIfNotEqual("SciLexer.dll") Func _INET_DownloadIfNotEqual($fFileToDownlad) Local $fLocalDestination If _INET_CompareSize_IsEqual($fFileToDownlad) = False Then $fLocalDestination = _INET_GetUpdate($fFileToDownlad) FileMove($fLocalDestination, @ScriptDir & '\' & $fFileToDownlad, 1) EndIf EndFunc ;==>_INET_DownloadIfNotEqual Func _INET_CompareSize_IsEqual($fFileToDownlad) Local $nWebSize = InetGetSize($URL_Scite & $fFileToDownlad) Local $nLocalSize = FileGetSize(@ScriptDir & '\' & $fFileToDownlad) If $nWebSize = $nLocalSize Then Return True Else Return False EndIf EndFunc ;==>_INET_CompareSize_IsEqual Func _INET_GetUpdate($fFileToDownlad) Local $fLocalDestination = @TempDir & "\" & $fFileToDownlad Local $hDownload = InetGet($URL_Scite & $fFileToDownlad, $fLocalDestination, 1, 1) Do Sleep(250) Until InetGetInfo($hDownload, 2) ; Check if the download is complete. Local $nBytes = InetGetInfo($hDownload, 0) InetClose($hDownload) ; Close the handle to release resources. Return $fLocalDestination EndFunc ;==>_INET_GetUpdate HOW TO USE:
      Simply compile and run waiting to download current updates tools
      If You want to replace file in SciTE4AutoIt dir then run it script from directory where SciTE4AutoIt is instaled
       
      ps.
      This is a really fast set up, update tool contains no error checking requires no configuration requires that the target downloaded files were not used by other Windows processes     EDIT: CAUTION:   EDIT: WORD JOKE : as they say on the commercial "before use, read the label or contact your doctor or pharmacist"