Reference Syntax, Programming, Top 20

QM scripting language

Flow: goto, if else, iif, sel case, rep, for break continue, foreach, err, ret, end, call

Operators: = + - * / %    Bitwise: & | ~ ^ >> <<    Logical: and or    Compare: = ! < <= > >=    Unary: ! ~ - * & + @   priority, precision

Variables, constants: def, declaration, scope/storage, predefined, OLE types, arrays, pointers, memory

Functions, types, libraries: function, dll, type, unions, class, category, interface, typelib, COM, COM functions, ref, declarations

Directives: #if #else #endif, #ifdef #ifndef, #compile, #set, #opt, #err, #out #warning #error, #exe, #ret, #sub, #region #endregion

Other: comments, sizeof, uuidof


Mouse: lef rig mid dou, mou, xm ym

Keys, text: key, paste, out, ifk

Dialogs: mes, inp, inpp

Files: run, cop ren, del, mkdir, zip

Window: act, clo, min max res, mov siz, hid, ifa, win wintest

Controls: but, id, child childtest, acc acctest, htm, men, scan

Time: wait, wait for, spe, perf, tim, DATE

Internet: web, run, htm

QM: mac, dis, qmitem, newitem, net, atend, opt, getopt, lock, deb

Other: bee, shutdown, pixel, scan, rset rget, string map, XML, CSV, QM dll functions and controls, dialogs

String functions

Global: len, empty, val, numlines, find, findw, findt, findl, tok, findc findcr findcs findcn, findb, findrx, matchw


Convert: lcase ucase, unicode ansi, escape, encrypt decrypt

Modify: trim ltrim rtrim, set, insert, remove, replace, findreplace, replacerx, addline

Get: left right get geta, gett, getl, getpath getfilename

Format: from, fromn, format formata

Compare: = ~ !, beg begi end endi mid midi

Other: all, fix, getwintext setwintext getwinclass getwinexe, getclip setclip getsel setsel, getfile setfile, searchpath expandpath, dospath, getmacro, setmacro, dllerror, timeformat, getstruct setstruct, swap

QM extensions, dll functions, command-line tools

This Help file includes only functions implemented in qm.exe and its dlls.


Many other functions and classes are implemented using QM scripting language. Their code is in QM System folder and forum. Their Help is displayed in QM window when you click a function name or class name in the code editor and press F1. To search all, use the "Find help, functions, tools" field in QM window. Also use code toolbar dialogs, function lists, status bar info, F1, categories.


Also you can use external functions - Windows API, COM components, other dlls, other languages. See MSDN Library, API references, COM type libraries, math functions, the script category.


Also you can execute command-line programs (Windows and other) with run or RunConsole2.

Terms, tables

statement, expression, window expression, child, top-level, pop-up, client area, thread, flags, trigger coding, QM key codes, virtual-key codes, character codes, Windows keyboard shortcuts, special folders, format fields, regular expression, errors, declarations