Leaderboard
Popular Content
Showing content with the highest reputation on 10/03/2020 in all areas
-
Nope.. (I mean ...seriously ... this question only says it all) Weight? Would think it takes the hassle away unless you like messy coding. Correct, that is for your convenience as the assumption has to be you want to solve those warnings and the best place to start is with the first one encountered by au3check. ... but simply use these settings in your sciteuser.properties and you won't be bothered anymore by AutoIt3Wrapper (as it is called): # Directory containing AutoIt program files autoit3dir=$(SciteDefaultHome)\.. # Commands for F1 Help command.help.$(file.patterns.au3)=$(CurrentWord)!$(autoit3dir)\AutoIt.chm command.help.subsystem.$(file.patterns.au3)=4 # Commands to Compile, Build and Go command.compile.$(file.patterns.au3)="$(autoit3dir)\Aut2Exe\Aut2exe.exe" /in "$(FilePath)" command.build.$(file.patterns.au3)="$(autoit3dir)\Aut2Exe\Aut2exe.exe" /in "$(FilePath)" /x64 command.go.$(file.patterns.au3)="$(autoit3dir)\AutoIt3.exe" /ErrorStdOut "$(FilePath)" $(1) $(2) $(3) $(4) # Au3Check command.0.$(file.patterns.au3)="$(autoit3dir)\Au3Check.exe" -q "$(FilePath)" command.name.0.$(file.patterns.au3)=Syntax Check command.shortcut.0.$(file.patterns.au3)=Ctrl+F5 command.save.before.0.$(file.patterns.au3)=1 So, now I can go back under my rock, Jos3 points
-
Au3Check - AutoIt3 syntax checking Download: HERE History 1.52 : change: -U outputs an improved linebased list. -u removed. #uses directive changed to #forceref. 1.51 : added: File name and pos ref to -u and -U. -u - and -U - sends to stdout. Other improvements. 1.50 : fixed: ReDim require prev decl and no init. "Not used vars" warning default off. Added -w 6 -w 7. 1.49 : added: option -u file. Added warning on local vars and params declared, but not used. 1.48 : added: allow empty expressions as COM method args. Allow multiple tabs/spaces before cont. char _. 1.47 : - update: Require space/tab before, and allow comment after cont. char _. - fixed: Disallow loops/branches after single line IFs. 1.46 : added: Support for Switch block and ContinueCase. Allow '' in include. Upd .dat and TextPad .syn file. 1.45 : added: Support for Default keyword. Updated .dat and .syn files 1.44 : fixed: Const ByRef parameters. 1.43 : fixed: Broken multidim array decl. Fixed include of full-path files. 1.42 : fixed: Broken check for multiple parameters with same name. 1.41 : fixed: Prevent redecl. of parameters bug. and Const array initialization. 1.40 : added: Const parameters. Array initialization. Prevent redecl. of parameters. 1.39 : fixed: bug in CLI options. Enum fixes. Made 'Local in global scope' be opt. warning. 1.38 : fixed: issues with Enums. Closing string char missed in error output. 1.37 : added: support True, False as default values in Func def. Internal new string class. 1.36 : fixed: COM issues. 1.35 : fixed: improved checking on assignment with new operators and COM objects. $var() call allowed. 1.34 : internal 1.33 : added: support for += -= *= /= &= operators. Support for True False keywords. 1.32 : fixed: white space after _ at end of line within strings was not accepted. 1.31 : fixed: made a generic way in the .dat file to check UDF refs in SetOnEvent type functions. 1.30 : added: check functions given in GUICtrlSetOnEvent, AdlibEnable, OnExitFunc. 1.29 : fixed: a single variable on a line was accepted. 1.28 : fixed: COM methods/attribs couldn't have keyword names. Enums wasn't set const. 1.27 : added: support for COM syntax, With .. EndWith, For .. In .. Next, Enum 1.26 : added: optional warning for multiple declared vars (except arrays - normally intended re-dim). 1.25 : obeys that For-loop declares counter (Local in funcs, Global outside). Changed warning nums. 1.24 : fixed: #include-once for relative paths. Added -w[-] to turn on/off individual warnings. (can be summed) 1.23 : fixed: didn't check declaration of counter var in For-Next. (1.22 did this, but wrongly). 1.22 : added: enable/disable var decl. check on Opt/AutoItSetOption("MustDeclareVars", 1/0) - file scope. 1.21 : added: command line option -d, which checks as Opt("MustDeclareVars", 1). 1.20 : fixed: a bug introduced in 1.17. Added check to not accept Consts to Byref params. 1.19 : internal 1.18 : added: check for already defined non-const var when declaring consts. 1.17 : added: Const keyword. Fixed variable scope bug. Changed .def to .dat 1.16 : fixed: didn't accept negative default values for opt. params. 1.15 : added: accept macro as default value for optional parameters 1.14 : added: also looks in old registry path for includes if new not exists. 1.13 : added: support for optional parameters. Changed registry lookup for includes. 1.12 : fixed: check string values for up to 4 parameters now. Added -q (quiet) option. 1.11 : - added check for first string parameter Opt/ControlSendCommand/Mouse* - improved error message for block structures missing closing keyword (if/select/while...) - prints all output to stdout - not to stderr anymore - prints number of errors/warning as summery. - updated .def file. 1.10 : missing #ce outputs only a warning now. use -v 0 to supress it. -v 1 is now default. 1.09 : added support for optional [level] "argument" for ExitLoop. 1.08 : obeys #include-once. internal: added a simple string class. 1.07 : #include ".." seaches the std include dirs after current. added error on #ce without matching #cs 1.06 : readded -I <dir>, for additional include search paths. 1.05 : internal improvements, VC6 project files, and a minor bug fix. 1.04 : fixed: didn't accept chars after #ce directive, e.g. '#ce -- end comment' 1.03 : fixed error when block comment not close, fixed $1xx now allowed, ++ 1.02 : fixed bug with #-lines. Cleaned up in error reporting. 1.01 : added std include paths, unknown lines with # ignored, changed return codes, and minor fixes. 1.00 : symbol tables: checks macros, variables, and function calls 0.62 : improved error reporting. (I'll start work on symbol tables now) 0.60 : exit code: number of errors (negative nums on usage/file open errors) 0.59 : fixed: error when file ends without newline. 0.58 : improved error reporting, fixed "" and '' within strings, fixed bug with Exit N. 0.56 : added multiple errors reporting, plus showing offended line and position arrow 0.55 : fixed variable declaration lists, added ReDim keyword. 0.54 : fixed a few issues with include paths 0.53 : added -I "path" for #include <xx> support. Also fixed #include "xx" to search from input file dir. 0.52 : fixed bug with ElseIf 0.51 : fixed bug with #include-once 0.50 : first alpha release Status Syntax checks the latest beta of Autoit3. Checks all symbols used: Macros (defined in Au3Check.dat). Usage of non-defined macros are reported as errors. Variables: (built-in variables ($CmdLine) are defined in Au3Check.dat) Au3Check issues warning if variables are used before they are seen. It is possible that the program is still correct, like the following: For $i=1 To 2 If $i=2 Then msgbox(0, "ok", $hello); Local $hello = "Goodbye" Next However, this is bad programming style, and Au3Check will issue a warning that $hello is possible used before it is declared. Likewise, global variables declared in functions should best not be used in other functions. If one is used higher up in the code, a warning is issued. Finally, Au3Check issues an error if a variable is used, but never declared, explicitly or implicitly. Functions: (built-in functions are defined in Au3Check.dat). Functions may be defined later than where they are called. Au3Check checks that all functions are called with the correct number of parameters. It also checks that ByRef parameters are called with variables (not l-values, expressions). Finally, non-defined functions are reported. UsageSimply add as a tool in TextPad. Usage: Au3Check [-q] [-d] [-u file] [-w[-] n].. [-v[-] n].. [-I dir].. file.au3 -q : quiet (only error/warn output) -d : as Opt("MustDeclareVars", 1) -I dir : additional directories for searching include files -U -|file : output unreferenced UDFs and global variables -w 1 : already included file (on) -w 2 : missing #comments-end (on) -w 3 : already declared var (off) -w 4 : local var used in global scope (off) -w 5 : local var declared but not used (off) -w 6 : warn when using Dim (off) -v 1 : show include paths/files (off) -v 2 : show lexer tokens (off) Exit codes: 0 : success - no errors or warnings 1 : warning(s) only 2 : syntax error(s) 3 : usage or input errorYou should set up regular expression (POSIX) like the following: ^([^(]+)\(([0-9]+),([0-9]+)\) Argument 3 is column. If you do not use POSIX RegEx, you must use \ in a different way on ()'s. Files Au3Check.exe - Au3 script syntax checker Au3Check.dat - text file containing all built in symbols. Can be updated by user. Au3Check.txt - this document What is not checked? Basically runtime information: No checking is made for array dimensions, or indices. This can only be done runtime. Logical errors, illegal parameters to functions, and division by zero.Bug ReportPlease, report if you find scripts that creates 'syntax error' which shouldn't, and vise versa.1 point
-
Just a small hint : I would avoid Global declarations within functions . Func _StringEarlyLateCount () [...] Global $StringStart = StringInStr ( _GUICtrlRichEdit_GetText ( $g_hRichEdit ) , $StringATester[$A] , 0 , 1 ) ; -> 21 point
-
Does autoit have a reflection mechanism to return variable names as strings?
JockoDundee reacted to TheXman for a topic
FYI: The user "Xman" is probably wondering why you keep tagging him. I am @TheXman1 point -
I think renaming the UDF to something more related to encryption is a good idea. We already moved it to the encryption section in the wiki. People won't download an UDF that is named GDPR when they are just looking for an encryption function. And we all know: People do not read descriptions1 point
-
Does autoit have a reflection mechanism to return variable names as strings?
JockoDundee reacted to TheXman for a topic
In an almost perfect world, you could just say: $vFilePathToNowhere="C:\ABC\DEF" CustomWrite("vFilePathToNowhere") . . . Func CustomWrite($sVarName) ConsoleWrite($sVarName & " = " & Eval($sVarName) & @CRLF) EndFunc *Untested LOL....You beat me to it We must have hit enter within a few seconds of each other.1 point -
Does autoit have a reflection mechanism to return variable names as strings?
TheXman reacted to JockoDundee for a topic
I suppose I could just use Eval: like $vFilePathToNowhere="C:\ABC\DEF" CustomWrite("vFilePathToNowhere") and Func CustomWrite($var1) ConsoleWrite($var1 &"="& Eval($var1)) EndFunc1 point -
Sorry haven't used them in years, there are few examples on the forum for example:1 point
-
Does autoit have a reflection mechanism to return variable names as strings?
JockoDundee reacted to Subz for a topic
@Water, @JockoDundee, sorry missed the required output, I blame my seeing eye dog. Maybe something like this? $n1Var = 5 $s1Var = _GetName("n1Var") ConsoleWrite($s1Var & (@error = 0 ? " defined variable" : " undefined variable") & @CRLF) $s2Var = _GetName("n2Var") ConsoleWrite($s2Var & (@error = 0 ? " defined variable" : " undefined variable") & @CRLF) Func _GetName($_vVar) Local $vVar = Eval($_vVar) Local $iError = @error Return SetError($iError, 0, $_vVar) EndFunc1 point -
That's pseudonymization and can be a valid measure too. But it is weaker than anonymization. It depends on the kind of data you process (personal data as described in article 9 or article 10 GDPR) and the legal basis for your processing.1 point
-
A legal basis is required for any processing of personal data. This can be a law, a contract, the consent of the person concerned or a legitimate interest of the person responsible. Personal data in log files are necessary for safe operation. The legal basis for this is legitimate interest. However, you must ensure that only authorized persons have access to this data and that a process is defined for the evaluation of this data.1 point
-
Does autoit have a reflection mechanism to return variable names as strings?
JockoDundee reacted to water for a topic
@Subz Even with your code I get 5 as a result. I suggest you have a look at cDebug that does what you are looking for.1 point -
The solution is for me to fix that mod I made a couple of weeks ago.... which is done now and uploaded. ... and don't try to reason with @FrancoDM as somehow he is pissed off at me for pushing him to provide a replicator script. When he did the issue was clear and we could fix it. Anyway ... it is what it is, and "just let him stew in his own juice".1 point
-
- I don't think there has been any GRAMMAR changes in the language since 3.0.101 (?), so you can use it on 102. If not, tell me. - Printing the line and ^ for position for errors is planned. - Showing all errors (or as many as possible) is planned.1 point
-
"C:\Github\Main.au3"(26456,18) : error: Invalid Integer found larger than 9223372036854775807). Used value:9223372036854775807 While _IsPressed(01) $iCount += 1 Sleep($DELAY) WEnd0 points
-
There are no warnings as au3check was never able to do any real work (or only partial), hence I believe it should be totally discarded. ... but that is just my opinion so do we need a vote on this one as I really could care less what it is set to as I will never have this issue anyways?0 points