Sign in to follow this  
Followers 0
MagicSpark

Maybe an issue on AU3Check with AutoIt v3.3.12.0

22 posts in this topic

I encountered an issue with objects (method or properties) after update to AutoIt 3.3.12.0 today

It throws an error when I try to compile a script due to a supposed syntax error: 

ERROR: missing separator character after keyword.

 

As an example, here an extraction of Jos' Smtp Mailer that supports Html and attachments (Topic here: '?do=embed' frameborder='0' data-embedContent>>) on which you can test it:

Local $objEmail = ObjCreate("CDO.Message")
...
$objEmail.To = $s_ToAddress ; This line throws the error !
...

Please check it and also refer on topic:

'?do=embed' frameborder='0' data-embedContent>>

 
 
Thank you.

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

I have seen this reported now for the second time and asked JPM to have a look at the latest changes he made to au3check which now recognises the ".To" part of the Object variable as a Keyword causing this issue with the "_INetSmtpMailCom" function and any other script using a similar notation.

Jos

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

I am experiencing the same problem with a program that used to work fine. "Step" apparently is a keyword:

"C:AutoIt3MyProgsRSIPackageVerify.au3"(1059,15) : error: missing separator character before keyword.
        $oRSI.Step
~~~~~~~~~~~~~~^
"C:AutoIt3MyProgsRSIPackageVerify.au3"(1148,35) : error: missing separator character before keyword.
        $s &= "  Step = " & $oRSI.Step
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:AutoIt3MyProgsRSIPackageVerify.au3 - 2 error(s), 0 warning(s)
 

Share this post


Link to post
Share on other sites

That fixed it. Thanks!

-Doug

Share this post


Link to post
Share on other sites

Same problem - error: missing separator character before keyword

if in the definition of function is the parameter ByRef, e.g.

Func Calculate ($inp_Number,ByRef $out_result)      - error

Func Calculate ($inp_Number, ByRef $out_result)  - correct

 

 

Share this post


Link to post
Share on other sites

Will this be fixed in the next major version? When will it be released?

Share this post


Link to post
Share on other sites

Thomymaster,

Do not get confused between AutoIt and SciTE4AutoIt3 - the former is the language and the latter is an independent add-on editor which comes with some other tools to help you code n AutoIt.

The SciTE4AutoIt author, Jos, will no doubt issue a new full release of the utility with updated tools (such as Au3Check) when he feels the time is right. Until then I suggest you use the Beta Au3Check to which he linked above. ;)

As to AutoIt itself - same answer. Jon will release a new version when he is ready. :)

M23


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

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

Share this post


Link to post
Share on other sites

#9 ·  Posted (edited)

Just for clarity, au3check is part of the AutoIt3 installer and the current Beta has the fixed au3check in it.

Jos

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

Hi

I have just updated my 3.3.8.1 to the 3.3.12.0 which includes the broken Au3Check.exe. I replaced it with the one Jos linked to but the "ByRef" problem is not fixed there.

@Jos

Can you maybe provide a new beta Au3Check.exe which includes this fix as well? I don't want to install the AutoIt3 beta just to get the working Au3Check.exe :)

Cheers

Thomy

Share this post


Link to post
Share on other sites

You aren't using the beta version of Au3Check, and the problem has nothing to do with ByRef. The problem is because there's no space before the ByRef and after the comma so the program thinks something is missing. 9 times out of 10 you can fix an issue like that by running Tidy on the script prior to running Au3Check.


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

I appear to be having the same issue:

Local $oMessage = ObjCreate("CDO.Message")
With $oMessage
    .Subject = """" & $EmailSubject & """"
    .From = "dagbyte@gmail.com"
    .To = "dagbyte@gmail.com"

Yields me "error: missing separator character before keyword."

I have installed the latest from the downloads (just today).

Any ideas how to fix that?

 

mahalo,

-DaG

 

Share this post


Link to post
Share on other sites

Just took the plunge to update to Autoit 3.3.12 & am get the OP's error,

 error: missing separator character before keyword.
    $objEmail.To

do we still need use the Beta version?

Share this post


Link to post
Share on other sites

Ok another thread that Jo's anwered got me back on track, ALL IS GOOD :thumbsup:

 

Use the beta au3check in stead of the production version.

Jos

 

Just took the plunge to update to Autoit 3.3.12 & am get the OP's error,

 error: missing separator character before keyword.
    $objEmail.To

do we still need use the Beta version?

Share this post


Link to post
Share on other sites

#16 ·  Posted (edited)

Hi,

I installed a new OS and the latest stable version of Autoit (v3.3.14.2) and Scite. Meanwhile the same with Beta  v3.3.15.0. With "ArrayMore.au3" from Bugfix I get (C:\Program Files\AutoIt3\SciTE\SciTE.exe - Version 3.6.0) in line 116:

ERROR: missing separator character before keyword.

If I use C:\Program Files\AutoIt3\SciTE-AutoIt3Installer\SciTE.exe (Version 3.5.4 lite) everything works... What's the right way to go? :-)

Regards

Thomas

Edited by TJF

Share this post


Link to post
Share on other sites

#18 ·  Posted (edited)

I would not use a UDF from 2007, that is built on other UDFs, unless you also go back and get the 2007 versions of the includes.   Things like his use of _ArraySort are bound to be boned in the latest revision of array.au3

Edited by boththose

,-. .--. ________ .-. .-. ,---. ,-. .-. .-. .-.
|(| / /\ \ |\ /| |__ __||| | | || .-' | |/ / \ \_/ )/
(_) / /__\ \ |(\ / | )| | | `-' | | `-. | | / __ \ (_)
| | | __ | (_)\/ | (_) | | .-. | | .-' | | \ |__| ) (
| | | | |)| | \ / | | | | | |)| | `--. | |) \ | |
`-' |_| (_) | |\/| | `-' /( (_)/( __.' |((_)-' /(_|
'-' '-' (__) (__) (_) (__)

Share this post


Link to post
Share on other sites

#20 ·  Posted (edited)

Is there no space between ) and Then?  add those three spaces to the UDF and drive on if thats the only issue

Edited by boththose

,-. .--. ________ .-. .-. ,---. ,-. .-. .-. .-.
|(| / /\ \ |\ /| |__ __||| | | || .-' | |/ / \ \_/ )/
(_) / /__\ \ |(\ / | )| | | `-' | | `-. | | / __ \ (_)
| | | __ | (_)\/ | (_) | | .-. | | .-' | | \ |__| ) (
| | | | |)| | \ / | | | | | |)| | `--. | |) \ | |
`-' |_| (_) | |\/| | `-' /( (_)/( __.' |((_)-' /(_|
'-' '-' (__) (__) (_) (__)

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