For former users of Smart Macro, there are lots of new and exciting features available. However, there are some unexpected changes in some areas, which are listed in this topic.
This table shows all functions of SmartMacro and a way to accomplish the same with InteliMacro.NET. It does not show all you can do with IntelliMacro.NET, and not how to do that in Smart Macro either.
All words starting with g_ are ordinary global variables; you can, of course, use a different name if you want or eliminate the use of the variable completely.
| ADDTEXT2FILE v e | SaveFile(v, e, , 1) |
| ARRAY v e | v = Split (v, e) |
| ARRAYFIND v w e | v = Find(w, [e]) |
| BREAKEXIT | If KeyPressed(); Exit 2; End |
| BREAKGO l | Goto l If !KeyPressed() |
| CHDIR e | ChangeDir e |
| COMBINE v e | v = Join(v, e) |
| COMMENT x | # x |
| CONSADD e | AddConsole e |
| CONSCLS | AddConsole "",-1 |
| CONSDEL e | AddConsole "",e |
| CONSGET v | v = ReadConsole() |
| CONSOLE e | Console e |
| CONST | (not supported any longer, use a variable instead) |
| CONSWIDTH e | Console , e |
| COPY | SetClipboard |
| DATE | DateInfo(GetDate(), format) (format strings might have changed) |
| GETDATE | DateInfo(GetDate(), format) (format strings might have changed) |
| DELAY | Delay |
| DOWN | Down |
| DOWNUP | DownUp |
| ELSEBLOCK | Else |
| ELSEEXIT | If !condition; Exit 2; End |
| ELSEGO | Goto label If !condition |
| ELSEWAIT | if !g_LastCondition; WaitForKey; end |
| EMPTY | ; |
| END | EXIT 0 |
| ENDBLOCK | End |
| ENDBLOCKBREAK | If KeyPressed(); Exit 2; End; End |
| ENDENDBLOCK | (not supported any longer) |
| FILE2TEXT | text = LoadFile(filename) |
| FILECOPY | CopyFile source, dest |
| FILEDEL | DeleteFile filename |
| FILEMASK e | g_mask= e |
| FILEMOVE | MoveFile source, dest |
| FILEMULTISELECT v e | v = FileDialog(e, g_mask, 1) |
| FILESELECT v e | v = FileDialog(e, g_mask) |
| FILETO | (see: FILE(COPY|MOVE)) |
| FOR | FOR var = 1 .. max |
| FOREACH | For var : list |
| FORMAT | v = Format(mask, v) |
| GETCLIP | GetClipboard |
| GETENV | value = GetEnv(name) |
| GETMOUSE | [x, y] = GetMouse |
| GETMSECS v | v = GetDate() / 10000 |
| GETSCREEN | [x, y]=GetScreen() |
| GETSETTING | (no longer available) |
| GETWND | ttl = WindowInfo(0,"title") |
| GOSUB | Call |
| GOSUBX | (Call) |
| GOTO | Goto label |
| GOTOX | Goto (expression) |
| HWNDCHECK | v = WindowInfo(spec, "checked") |
| HWNDCLASS | c = WindowInfo(spec, ""); |
| HWNDFROMPOINT | h = WindowFromPoint(x,y) |
| HWNDGET,HWNDSUBGET,HWNDTOPGET | h = GetWindow(spec) / h = GetWindows(spec)[idx] |
| HWNDGETPOS | [x,y,w,h] = GetPosition(spec) |
| HWNDMDIGET | d = FindWindows("*&handle=" & h & "|**|*&mdi=1")[1] |
| HWNDMDISET | Window d |
| HWNDPROCESS | pid = WindowInfo(spec, "ProcessID") |
| HWNDSET | Window h |
| HWNDSETPOS | SetPosition(h,x,y,w,e) |
| HWNDSETSTATE_H | SetPosition(h,,,,,"hide") |
| HWNDSETSTATE_M | SetPosition(h,,,,,"min") |
| HWNDSETSTATE_R | SetPosition(h,,,,,"n") |
| HWNDSETSTATE_S | SetPosition(h,,,,,"n") |
| HWNDSETSTATE_X | SetPosition(h,,,,,"max") |
| HWNDSETTOP | SetPosition(h,,,,,,v) |
| HWNDTEXT | t = WindowInfo(spec, "title") |
| HWNDUP | h = WindowInfo(h, "parenthandle") |
| IF | g_LastCondition = condition |
| IFARRAY | g_LastCondition = %x == 2 |
| IFBREAK | g_LastCondition = KeyPressed() |
| IFFILE | g_LastCondition = FileInfo(filename, "type") != "" |
| IFHOTKEY | g_LastCondition = KeyPressed([hotkey (default=<BREAK>)]) |
| IFPROCESS | g_LastCondition = &FindProcesses("*&file=*" & var & "*") > 0 |
| IFWND | g_LastCondition = $FindWindows("*&title=*" & title & "*") <> 0 |
| IFYES | g_LastCondition = Confirm(message, "?Yn" [,title]) |
| INITHOTKEYS | KeyPressed(-1) |
| INITMODULES | (no longer supported) |
| INPUT | value=Input(prompt[,default]) |
| LABEL | label: |
| LCASE | var = LCase(var) |
| LISTDIRS | var = FindFiles(pattern,[basepath],1) |
| LISTFILES | var = FindFiles(pattern,[basepath],2) |
| LISTPROCESSES | var = FindProcesses("*") |
| LOAD | Run program |
| LOADMODULE | (no longer available) |
| LOADWAIT | Run program,,,1 |
| LOOP | var=var-1; Goto label If !var |
| LOOPBLOCK | while 1 |
| LTRIM | var = Trim(var,chars,1) |
| MKDIR | ChangeDir directory, 1 |
| MOUSE | Mouse |
| MOUSEREL | MouseRel |
| MSG | Msg |
| MSGBOX | Msg |
| NEXT | End |
| NOBREAKGO | Goto label If !KeyPressed() |
| NOTTHENBLOCK | If !g_LastCondition |
| PASTE | var = GetClipboard() |
| POP | [popped .. internalstack] = internalstack |
| PROCESSEXE | filename = ProcessInfo(pid, "file") |
| PUSH | internalstack = [pushed] & internalstack |
| QUIT | EXIT 0 |
| REPEAT | Repeat [count] |
| RESETBLOCK | (not supported) |
| RETURN | Sub .. End |
| RMDIR | RmDir path |
| RTRIM | var=Trim(var,[chars],2) |
| RUN | Run program |
| RUNWAIT | Run program,,,1 |
| SELECT | index = Select(list) |
| SENDCOPY | DownUp <CTRL>, <C> |
| SENDCUT | DownUp <Ctrl>, <X> |
| SENDKEYS | SendKeys keystring |
| SENDPASTE | DownUp <Ctrl>, <V> |
| SENDTEXT | SendText text |
| SENDTEXTCLIP | SetClipboard text; DownUp <Ctrl>, <V> |
| SET | var = value |
| SETCLIP | SetClipboard |
| SETENV | SetEnv var, value |
| SETL | target = source & target[$source+1..] |
| SETR | target = target[1..$target-$source] & source |
| SETSETTING | (no longer available) |
| SETWND | if $FindWindows(desc) = 1; Window desc; end |
| SETWNDX | WINDOW |
| SORTARRAY | array = Sort(array[,direction]) |
| STOP | Stop |
| TEXT2FILE | SaveFile(filename, text) |
| TEXTFIND p v e | p = Find(v, e) |
| TEXTFROM | var = var[pos..] |
| TEXTTO | var = var[..pos] |
| THENBLOCK | if g_LastCondition |
| THENEXIT | if g_LastCondition; exit 2; end |
| THENGO | goto label if g_LastCondition; |
| THENWAIT | if g_LastCondition; WaitForKey; end |
| TIPP | Msg text,,1 |
| TRIM | var = Trim(var[,chars]) |
| UCASE | var = UCase(var) |
| UP | Up |
| VARNAME | (no longer needed) |
| WAITBREAK | WaitForKey |