guinness Posted January 3, 2014 Posted January 3, 2014 >PreExpand already does the job, however it needs "a little" more improvements. Jos said it, there are many pitfalls to overcome and right now I am concentrating my coding time on AutoIt and the UDFs/Help file. I will look at this in due course. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
FaridAgl Posted January 3, 2014 Posted January 3, 2014 Well, thanks. I'm looking forward to it. http://faridaghili.ir
Developers Jos Posted January 3, 2014 Author Developers Posted January 3, 2014 - Shouldn't obfuscator strip out all #forceref lines? Because it doesn't now. No, they are used by au3check so need to remain. SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
FaridAgl Posted January 3, 2014 Posted January 3, 2014 Yeap, that's true, but as far as I know we use obfuscator only when we are going to compile our script. AutoIt doesn't have any problem with unreferenced variables, AU3Check does (with proper option only). As AU3Check is not available on compiled scripts, should #forceref, which is a part of AU3Check (Correct me if I'm wrong) remain in the compiled source? http://faridaghili.ir
Developers Jos Posted January 3, 2014 Author Developers Posted January 3, 2014 Yeap, that's true, but as far as I know we use obfuscator only when we are going to compile our script. AutoIt doesn't have any problem with unreferenced variables, AU3Check does (with proper option only). As AU3Check is not available on compiled scripts, should #forceref, which is a part of AU3Check (Correct me if I'm wrong) remain in the compiled source? I run au3check after the Obfuscation process to ensure it didn't screw anything up ... hence the reason for leaving them. SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
FaridAgl Posted January 4, 2014 Posted January 4, 2014 Does your check after obfuscation has -w option for unreferenced variables? If no, then #forceref shouldn't be there. All I'm trying to say is that there should not be any pre-processor directive in the final script within the compiled exe. http://faridaghili.ir
Iczer Posted January 4, 2014 Posted January 4, 2014 i have 3.3.10.2 in beta and 3.3.8.1 in main for now, so versions of AU3Check is different. It seems if i have "#AutoIt3Wrapper_Version=Beta" in the script then i cannot manually run ToolsSyntaxCheck Prod (Ctrl+F5) - it always run SyntaxCheck Beta if no "#AutoIt3Wrapper_Version=Beta" then i can choice SyntaxCheck Prod / Beta >Running AU3Check (3.3.10.2) from:C:\Program Files (x86)\AutoIt3\Beta ! Au3check doesn't support input files encoded as UTF16 with BOM: ... ... - 1 error(s), 0 warning(s) !>15:50:05 AU3Check ended. Press F4 to jump to next error.rc:2 Also - why i get "error" if some of my #includes encoded in UTF16 ? As i can remember in 3.3.9.X betas it was "warning"...
Developers Jos Posted January 4, 2014 Author Developers Posted January 4, 2014 Works for me, so show me the full SciTE output pane info so I can see what is happening. Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Iczer Posted January 4, 2014 Posted January 4, 2014 >"C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /prod /AU3Check /in "E:\Program Files\Auto-it scripts\AM\AM.au3" +>20:41:04 Starting AutoIt3Wrapper v.2.1.4.0 SciTE v.3.3.7.0 ; Keyboard:00000409 OS:WIN_XP/Service Pack 2 CPU:X64 OS:X64 Environment(Language:0409 Keyboard:00000409 OS:WIN_XP/Service Pack 2 CPU:X64 OS:X64) >Running AU3Check (3.3.10.2) from:C:\Program Files (x86)\AutoIt3\Beta ! Au3check doesn't support input files encoded as UTF16 with BOM: E:\Program Files\Auto-it scripts\Includes - custom UDFs\StringToRomajiConversion_UDF\StringToRomajiConversion_UDF.au3 E:\Program Files\Auto-it scripts\AM\AM.au3 - 1 error(s), 0 warning(s) !>20:41:05 AU3Check ended. Press F4 to jump to next error.rc:2 >Exit code: 0 Time: 1.802 running SyntaxCheck Prod
Developers Jos Posted January 4, 2014 Author Developers Posted January 4, 2014 I knew something was missing it the previous post! AU3Check does not support UTF encoded files, but AutoIt3Wrapper will facilitate checking Main scripts that are UTF encoded by copying it to a temp file which is ascii encoded. Support for UTF encoded includefiles is not available and has never been available, but au3check use to fail silently not doing anything. Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Iczer Posted January 4, 2014 Posted January 4, 2014 (edited) yeah, its known thing, but why after : >"C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /prod i get : >Running AU3Check (3.3.10.2) from:C:Program Files (x86)AutoIt3Beta in my case only #include is UTF encoded if UTF encoded files cannot be checked, shoudnt it be "warning" instead of error? Edited January 4, 2014 by Iczer
Developers Jos Posted January 4, 2014 Author Developers Posted January 4, 2014 The Directive takes priority: #AutoIt3Wrapper_Version=Beta You mentioned you have that in your code ...right? Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
jchd Posted January 5, 2014 Posted January 5, 2014 (edited) Has this been reported already? Running this: #AutoIt3Wrapper_Version=Beta Local $f = function Local $s = 'xxx' $f($s) Func function(ByRef $title) MsgBox(0, $title, 'function invoked') EndFunc I get: >"C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /beta /ErrorStdOut /in "C:\Users\jc\Documents\AutoMAT\tmp\fct.au3" /UserParams +>02:53:28 Starting AutoIt3Wrapper v.2.1.4.0 SciTE v.3.3.7.0 ; Keyboard:0000040C OS:WIN_7/Service Pack 1 CPU:X64 OS:X64 Environment(Language:040C Keyboard:0000040C OS:WIN_7/Service Pack 1 CPU:X64 OS:X64) >Running AU3Check (3.3.11.0) from:C:\Program Files (x86)\AutoIt3\Beta "C:\Users\jc\Documents\AutoMAT\tmp\fct.au3"(7,28) : error: function() previously called with Const or expression on ByRef param(s). Func function(ByRef $title) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^ "C:\Users\jc\Documents\AutoMAT\tmp\fct.au3"(3,20) : REF: first call to function(). Local $f = function ~~~~~~~~~~~~~~~~~~~^ C:\Users\jc\Documents\AutoMAT\tmp\fct.au3 - 1 error(s), 0 warning(s) Removing ByRef works. Edited January 5, 2014 by jchd This wonderful site allows debugging and testing regular expressions (many flavors available). An absolute must have in your bookmarks.Another excellent RegExp tutorial. Don't forget downloading your copy of up-to-date pcretest.exe and pcregrep.exe hereRegExp tutorial: enough to get startedPCRE v8.33 regexp documentation latest available release and currently implemented in AutoIt beta. SQLitespeed is another feature-rich premier SQLite manager (includes import/export). Well worth a try.SQLite Expert (freeware Personal Edition or payware Pro version) is a very useful SQLite database manager.An excellent eBook covering almost every aspect of SQLite3: a must-read for anyone doing serious work.SQL tutorial (covers "generic" SQL, but most of it applies to SQLite as well)A work-in-progress SQLite3 tutorial. Don't miss other LxyzTHW pages!SQLite official website with full documentation (may be newer than the SQLite library that comes standard with AutoIt)
guinness Posted January 5, 2014 Posted January 5, 2014 Has this been reported already? Running this: #AutoIt3Wrapper_Version=Beta Local $f = function Local $s = 'xxx' $f($s) Func function(ByRef $title) MsgBox(0, $title, 'function invoked') EndFunc I get: >"C:\Program Files (x86)\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /beta /ErrorStdOut /in "C:\Users\jc\Documents\AutoMAT\tmp\fct.au3" /UserParams +>02:53:28 Starting AutoIt3Wrapper v.2.1.4.0 SciTE v.3.3.7.0 ; Keyboard:0000040C OS:WIN_7/Service Pack 1 CPU:X64 OS:X64 Environment(Language:040C Keyboard:0000040C OS:WIN_7/Service Pack 1 CPU:X64 OS:X64) >Running AU3Check (3.3.11.0) from:C:\Program Files (x86)\AutoIt3\Beta "C:\Users\jc\Documents\AutoMAT\tmp\fct.au3"(7,28) : error: function() previously called with Const or expression on ByRef param(s). Func function(ByRef $title) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^ "C:\Users\jc\Documents\AutoMAT\tmp\fct.au3"(3,20) : REF: first call to function(). Local $f = function ~~~~~~~~~~~~~~~~~~~^ C:\Users\jc\Documents\AutoMAT\tmp\fct.au3 - 1 error(s), 0 warning(s) Removing ByRef works. Shouldn't that be reported to the AutoIt v3.3.11.1 thread? UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
jchd Posted January 5, 2014 Posted January 5, 2014 The interpretor works fine when Au3Check is disabled. This wonderful site allows debugging and testing regular expressions (many flavors available). An absolute must have in your bookmarks.Another excellent RegExp tutorial. Don't forget downloading your copy of up-to-date pcretest.exe and pcregrep.exe hereRegExp tutorial: enough to get startedPCRE v8.33 regexp documentation latest available release and currently implemented in AutoIt beta. SQLitespeed is another feature-rich premier SQLite manager (includes import/export). Well worth a try.SQLite Expert (freeware Personal Edition or payware Pro version) is a very useful SQLite database manager.An excellent eBook covering almost every aspect of SQLite3: a must-read for anyone doing serious work.SQL tutorial (covers "generic" SQL, but most of it applies to SQLite as well)A work-in-progress SQLite3 tutorial. Don't miss other LxyzTHW pages!SQLite official website with full documentation (may be newer than the SQLite library that comes standard with AutoIt)
guinness Posted January 5, 2014 Posted January 5, 2014 Sorry, I missed the Au3Check line. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
Iczer Posted January 5, 2014 Posted January 5, 2014 Jos I expected to direct manual command to have priority above all... Its pain otherwise, so for time being i make some corrections to the au3.properties.
Administrators Jon Posted January 5, 2014 Administrators Posted January 5, 2014 Jos, do you reckon I should try and make au3check.exe handle an automatic utf to ansi conversion to take it away from causing wrapper moans? (i've not looked at the code though so no idea how easy it would be )
Developers Jos Posted January 5, 2014 Author Developers Posted January 5, 2014 Jos, do you reckon I should try and make au3check.exe handle an automatic utf to ansi conversion to take it away from causing wrapper moans? (i've not looked at the code though so no idea how easy it would be ) You are welcome to look at it as I still would need to read through he many pages of documentation on how to handle UTF encoded files properly. I am currently rewriting Obfuscator which will return as AU3Stripper so only keep the stripping functionality to remove all none used UDF's and Global Const Variable lines from the source. Also looking at the implementing the idea of guinness's PreExpand which put the value of Const variables in the Sourcecode. Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Developers Jos Posted January 5, 2014 Author Developers Posted January 5, 2014 (edited) Jos I expected to direct manual command to have priority above all... Its pain otherwise, so for time being i make some corrections to the au3.properties. When you specify to use Beta it will use that directory so I am lost what you are trying to tell me here . Edited January 5, 2014 by Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past.
Recommended Posts