Function Reference
From Sputnik Wiki
Function Reference
How to create a Function
To create your own funtions see the Function page.
Core Functions
Language Features
- <Expression> =~ m/pattern/flags -- Match a string to a regular expression pattern and check if it matches and optionally return captured groups
- <Expression> =~ s/pattern/replacement/flags -- Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups
- Goto Label; & Label: -- Jump to another section of the script
Console Functions
- Print( <expression> ) -- Prints an expressions string value to the console window
- Println( <expression> ) -- Prints an expressions string value to the console window and inserts a newline charactor at the end.
- Printf( <expression>, <expressions>... ) -- Print a formatted string to the console window
- Input( <expression> ) -- Capture a string typed to console window
- InputC( <expression> ) -- Capture a char typed to console window
- Cls( ) -- Clear all text from the console window
- ConsoleHide( ) -- Hide the console window
- ConsoleShow( ) -- Show the console window
- ConsoleBeep( <freq>, <duration> ) -- Plays the sound of a beep of a specified frequency and duration through the console speaker
- ConsoleSeek( <x>, <y> ) -- Set the position of the console cursor
- ConsoleBackColour( <colour> ) -- Set the background (behind text) colour of the console
- ConsoleForeColour( <colour> ) -- Set the foreground (text) colour of the console
- ConsoleBufferWidth( <newval> ) -- Get or Set the buffer width of the console window
- ConsoleBufferHeight( <newval> ) -- Get or Set the buffer height of the console window
- ConsoleWidth( <newval> ) -- Get or Set the width of the console window
- ConsoleHeight( <newval> ) -- Get or Set the height of the console window
- ConsoleTitle( <newtitle> ) -- Get or Set the title of the console window
- ConsoleCursorLeft( <newval> ) -- Gets or sets the column position of the cursor within the buffer area
- ConsoleCursorTop( <newval> ) -- Gets or sets the row position of the cursor within the buffer area
- ConsoleCursorSize( <newval> ) -- Gets or sets the height of the cursor within a character cell
- ConsoleCursorVisible( <newval> ) -- Gets or sets a value indicating whether the cursor is visible
Multi-Threading Functions
- ThreadCreate( <name>, <function> ) -- Create a new thread and start it off executing a function or some code
- ThreadSleep( <name> ) -- Freeze a thread and make it sleep
- ThreadResume( <name> ) -- Unfreeze a thread and allow it to continue execution
- ThreadState( <name> ) -- Returns state of a thread
- ThreadKill( <name> ) -- Terminate a thread and remove it from the script
- ThreadExists( <name> ) -- Check if a thread exists by this name
- ThreadName( ) -- Returns the name of the current thread that is executing this code
- Threads( ) -- Return an array of all threads
Variable Type Conversions
- Char( <expression> ) -- Returns the single letter representation of an expression
- Byte( <expression> ) -- Returns the unsigned 8-bit integer (whole number) representation of an expression
- SByte( <expression> ) -- Returns the signed 8-bit integer (whole number) representation of an expression
- Short( <expression> ) -- Returns the signed 16-bit integer (whole number) representation of an expression
- Int16( <expression> ) -- Returns the signed 16-bit integer (whole number) representation of an expression
- Int32( <expression> ) -- Returns the signed 32-bit integer (whole number) representation of an expression
- Int( <expression> ) -- Returns the signed 32-bit integer (whole number) representation of an expression
- Int64( <expression> ) -- Returns the signed 64-bit integer (whole number) representation of an expression
- Long( <expression> ) -- Returns the signed 64-bit integer (whole number) representation of an expression
- UShort( <expression> ) -- Returns the unsigned 16-bit integer (whole number) representation of an expression
- UInt16( <expression> ) -- Returns the unsigned 16-bit integer (whole number) representation of an expression
- UInt32( <expression> ) -- Returns the unsigned 32-bit integer (whole number) representation of an expression
- UInt( <expression> ) -- Returns the unsigned 32-bit integer (whole number) representation of an expression
- UInt64( <expression> ) -- Returns the unsigned 64-bit integer (whole number) representation of an expression
- ULong( <expression> ) -- Returns the unsigned 64-bit integer (whole number) representation of an expression
- Float( <expression> ) -- Returns the 32-bit floating point representation of an expression
- Double( <expression> ) -- Returns the 64-bit floating point representation of an expression
- String( <expression> ) -- Returns the String representation of an expression
Common Variable Functions
Misc
- Unset( $variable ) -- Delete a variable
- IsDeclared( <variable name> ) -- Check if a variable has been declared
Hash/Array
- Reset( $variable ) -- Reset the current array pointer to the first element
- Next( $variable ) -- Set the array pointer to the next element
- Prev( $variable ) -- Set the array pointer to the previous element
Type Checking
- isVarChar( $variable ) -- Checks if a variable is a char type
- isVarByte( $variable ) -- Checks if a variable is an unsigned 8-bit integer type
- isVarSByte( $variable ) -- Checks if a variable is a signed 8-bit integer type
- isVarShort( $variable ) -- Checks if a variable is a signed 16-bit integer type
- isVarInt16( $variable ) -- Checks if a variable is a signed 16-bit integer type
- isVarInt( $variable ) -- Checks if a variable is a signed 32-bit integer type
- isVarInt32( $variable ) -- Checks if a variable is a signed 32-bit integer type
- isVarInt64( $variable ) -- Checks if a variable is a signed 64-bit integer type
- isVarLong( $variable ) -- Checks if a variable is a signed 64-bit integer type
- isVarUShort( $variable ) -- Checks if a variable is an unsigned 16-bit integer type
- isVarUInt16( $variable ) -- Checks if a variable is an unsigned 16-bit integer type
- isVarUInt( $variable ) -- Checks if a variable is an unsigned 32-bit integer type
- isVarUInt32( $variable ) -- Checks if a variable is an unsigned 32-bit integer type
- isVarUInt64( $variable ) -- Checks if a variable is an unsigned 64-bit integer type
- isVarULong( $variable ) -- Checks if a variable is an unsigned 64-bit integer type
- isVarFloat( $variable ) -- Checks if a variable is a single precision floating point type
- isVarDouble( $variable ) -- Checks if a variable is a double precision floating point type
- isVarString( $variable ) -- Checks if a variable is a string type
- isVarNumber( $variable ) -- Checks if a variable is any integer or float/double type
- isVarBinary( $variable ) -- Checks if a variable is a binary type
- isVarRef( $variable ) -- Check if a variable is an reference to another variable
- isVarArray( $variable ) -- Check if a variable is an array
- isVarObj( $variable, <type> ) -- Check if a variable is an object type (This includes classes, file handles etc)
- isVarClass( $variable, <type> ) -- Check if a variable's object type is a class
- isVarGUI( $variable ) -- Check if a variable's object type is a GUI
- isVarGUIObject( $variable, <type> ) -- Check if a variable's object type is a GUI Object (Buttons etc)
- isVarDLLStruct( $variable ) -- Check if a variable holds a DLLStruct
- isVarServer( $variable ) -- Check if a variable holds a Server object from Listen()
- isVarClient( $variable ) -- Check if a variable holds a Client object from Connect()
- isVarClientSocket( $variable ) -- Check if a variable holds a Client socket object
Get Type Directly
- GetVarType( $variable ) -- Get the common type of a variable
- GetVarObjType( $variable ) -- Get the common object type of a variable (If it is an object)
- GetVarGUIObjType( $variable ) -- Get the common object type of a variable (If it is a GUI object)
Binary Data Management Functions
- Pack( <expression>, <expressions> ) -- Pack data into a binary array
- Unpack( <expression>, <binary-array> ) -- Unpack data from a binary array
- BinaryCreate( <size>, <fill> ) -- Create a new binary variable and its array size and fill data type
- BinaryClone( <binary-array> ) -- Clone a binary variable 100% and return a new binary variable with exactly same data as the old one
- BinaryWipe( <binary-array> ) -- Wipes a binary variables data 100% and sets the variable to a blank int containing just 0
- BinaryStr( <binary-array>, <separator> ) -- Create a Hex string from a binary array
- BinaryHex( <expression> ) -- Create a binary array from a hex string
- BinaryLen( <binary-array> ) -- Returns the number of bytes in a binary variable
- BinaryGet( <binary-array>, <index> ) -- Get the byte at an index of a binary variable
- BinarySet( <binary-array>, <index>, <value> ) -- Set the byte at an index of a binary variable
- BinaryReverse( <binary-array>, <start>, <length> ) -- Reverse the order bytes a binary variable
- BinaryMid( <binary-array>, <start>, <length> ) -- Create a binary variable by extracting a number of bytes from another binary variable
- BinaryAppend( <binary-array>, <binary-array2>, <flag> ) -- Append a binary variables data onto the end or beginning of another binary variables data
- BinaryInsert( <binary-array>, <binary-array2>, <index> ) -- Insert a binary variables data into another binary variable at a specific location
- BinaryUnshift( <binary-array>, <byte> ) -- Add a byte to the beginning of a binary variable
- BinaryPush( <binary-array>, <byte> ) -- Add a byte to the end of a binary variable
- BinaryShift( <binary-array> ) -- Delete the first byte from a binary variable
- BinaryPop( <binary-array> ) -- Delete the last byte from a binary variable
- BinaryResize( <binary-array>, <size>, <data> ) -- Resize a binary variables data array
- BinaryCompress( <binary-array> ) -- Compress a binary variables data
- BinaryUncompress( <binary-array> ) -- Uncompress a binary variable data
- BinarySave( <binary-array>, <file>, <flag> ) -- Save a binary variable data to file
- BinaryLoad( <file>, <flag> ) -- Create a new binary variable by loading binary data from a file
Math Functions
- Abs( <expression> ) -- Calculates the absolute value of a number
- ACos( <expression> ) -- Calculates the arcCosine of a number
- ASin( <expression> ) -- Calculates the arcsine of a number
- ATan( <expression> ) -- Calculates the arctangent of a number
- ATan2( <expression>, <expression2> ) -- Compute arc tangent with two parameters
- BitAND( <expression>, <expression2>, <n> ) -- Performs a bitwise AND operation
- BitNOT( <expression> ) -- Performs a bitwise NOT operation
- BitOR( <expression>, <expression2>, <n> ) -- Performs a bitwise OR operation
- BitSHIFT( <value>, <shift> ) -- Performs a bit shifting operation
- BitXOR( <expression>, <expression2>, <n> ) -- Performs a bitwise exclusive OR (XOR) operation
- Ceiling( <expression> ) -- Returns a number rounded up to the next integer
- Cos( <expression> ) -- Calculates the cosine of a number
- Cosh( <expression> ) -- Returns the hyperbolic cosine of the specified angle
- Exp( <expression> ) -- Returns e raised to the specified power
- Floor( <expression> ) -- Returns the largest integer less than or equal to the specified number
- Log( <expression> ) -- Returns the logarithm of a specified number
- Log10( <expression> ) -- Returns the common (base-10) logarithm of a specified number
- Math( <expression> ) -- Parse a string containing mathematical equations
- Max( <expression>, <expression2> ) -- Find the greater number and return it
- Min( <expression>, <expression2> ) -- Find the lesser number and return it
- Mod( <expression>, <expression2> ) -- Performs the modulus operation
- Pow( <expression>, <expression2> ) -- Returns a specified number raised to the specified power
- Random( <expression>, <expression2> ) -- Get a random number from the defined area.
- Round( <expression>, <decimalplaces> ) -- Returns a number rounded to a specified number of decimal places
- Sin( <expression> ) -- Returns the sine of the specified angle
- Sinh( <expression> ) -- Returns the hyperbolic sine of the specified angle
- Sqrt( <expression> ) -- Returns the square root of a specified number
- Tan( <expression> ) -- Returns the tangent of the specified angle
- Tanh( <expression> ) -- Returns the hyperbolic tangent of the specified angle
- Truncate( <expression> ) -- Calculates the integral part of a specified decimal number
String Functions
- Asc( <char> ) -- Returns the ASCII code of a character.
- AscW( <char> ) -- Returns the UNICODE code of a character.
- Chr( <expression> ) -- Returns a character corresponding to an ASCII code.
- ChrW( <expression> ) -- Returns a character corresponding to a UNICODE code.
- Contains( <srting>, <string>, <casesense>) -- Check if string contains a sub string
- CSV( <string>, <delim>, <quote>, <comment> ) -- Split strings and parse a CSV text into an array
- Dec( <expression> ) -- Returns a integer representation of a hexadecimal string
- FDec( <expression> ) -- Returns a float representation of a hexadecimal string
- DDec( <expression> ) -- Returns a double representation of a hexadecimal string
- DecPad( <expression>, <count> ) -- Pads numeric string to a given number of chars (Filling in the gap with zeros)
- DecryptString( <expression>, <password> ) -- Decrypt a string with a given password
- EncryptString( <expression>, <password> ) -- Encrypt a string with a given password
- EndsWith( <expression>, <expression2>, <flag> ) -- Check if a string ends with a substring
- Hex( <expression>, <length> ) -- Returns a string representation of an integer type converted to hexadecimal
- FHex( <expression> ) -- Returns a string representation of an float type converted to hexadecimal
- DHex( <expression> ) -- Returns a string representation of an double type converted to hexadecimal
- InStr( <string>, <substirng>, <casesense>, <occurrence>, <start>, <count> ) -- Checks if a string contains a given substring.
- isAlpha( <expression> ) -- Checks if string contains only Alphabetic characters
- isAlphaNumeric( <expression> ) -- Checks if string contains only AlphaNumeric(A-Z, 0-9), Characters
- isASCII( <expression> ) -- Check if string contains only ASCII chars
- isEmpty( <expression> ) -- Checks if a string is completely empty.
- isFloat( <expression> ) -- Check if string contains a floating point and could be converted
- isLower( <expression> ) -- Checks if string contains only lowercase letters
- isNumeric( <expression> ) -- Checks if string only contains numbers
- isSpace( <expression> ) -- Check if string contains only whitespace
- isSymbol( <expression> ) -- Check if string contains only symbol chars
- isUpper( <expression> ) -- Check if string contains only uppercase chars
- isXDigit( <expression> ) -- Check if string contains only hex chars
- LC( <expression> ) -- Returns string in all lower case
- LCFirst( <expression> ) -- Lower Cases first letter of string
- LCLast( <expression> ) -- Lower Cases last letter of string
- LCWords( <expression> ) -- Lower Cases first letter of each word in string
- Left( <expression>, <count> ) -- Returns a number of characters from the left-hand side of a string
- Match( <expression>, <charset> ) -- Check if a string contains only characters from a substring
- MD5( <expression> ) -- Creates MD5 Hash of specified string
- PadLeft( <expression>, <pad>, <count> ) -- Pad the left of a string a given number of times with another string
- PadRight( <expression>, <pad>, <count> ) -- Pad the right of a string a given number of times with another string
- RandStr( <count> ) -- Generate a random sequence of characters at a given length
- Repeat( <expression>, <count>, <flag> ) -- Create a new string or new array containing repeats of a string provided
- Replace( <expression>, <find>, <replace>, <case-sensitive-flag> ) -- Replace substrings within a string with other strings
- Reverse( <expression> ) -- Reverse all characters in a string
- Right( <expression>, <count> ) -- Returns a number of characters from the right-hand side of a string
- SHA1( <expression> ) -- Returns SHA1 hash of string
- Split( <expression>, <delim/pattern>, <flag> ) -- Splits up a string into substrings depending on the given delimiters.
- SPrintf( <expression>, <expressions>... ) -- Create a formatted string
- StartsWith( <expression>, <expression2>, <flag> ) -- Check if a string starts with a substring
- StrInsert( <expression>, <index>, <expression2> ) -- Insert a string at a given index of another string and return the new string
- StrIndex( <expression>, <index> ) -- Get or set a char from/to a string at a specific index
- StrLen( <expression> ) -- Returns length of specified string
- SubStr( <expression>, <start>, <end> ) -- Return part of a string
- Trim( <expression>, <chars> ) -- Removes whitespace from the beginning and end of a string
- TrimLeft( <expression>, <chars> ) -- Strip whitespace from the start of a string
- TrimRight( <expression>, <chars> ) -- Strip whitespace from the end of a string
- UC( <expression> ) -- Returns string in all Upper Case
- UCFirst( <expression> ) -- Upper Cases first letter of string
- UCLast( <expression> ) -- Upper Cases last letter of string
- UCWords( <expression> ) -- Upper Cases first letter of each word in string
Array Functions
- Join( <array>, <separator> ) -- Join an array into a string with an optional separator
- UBound( <array/binary-array> ) -- Returns the size of array (How many elements it currently has stored)
- Push( <array>, <expressions> ) -- Add items to the end of an array
- Insert( <array>, <id>, <expressions> ) -- Add items to an array at a given location
- Unshift( <array>, <expressions> ) -- Add items to the beginning of an array
- Pop( <array> ) -- Delete the first item in an array
- Shift( <array> ) -- Delete the last item in an array
- Remove( <array>, <start-id>, <end-id> ) -- Delete items from an array starting at a given location and stopping at a given location
- IsIndexSet( <array>, <index> ) -- Check if an element exist at a given index ID within an array
Hash (Dictionary) Functions
- Each( <array> ) -- Get hash key/value pair and return them as a 2 element array and each time the function is called get the next key/value pair
- IsKeySet( <array>, <key> ) -- Check if given key exists within an array (hash/dictionary)
Process Functions
- DLLCall( <dll>, <function>, <returntype>, <paramtypes>, <params> ) -- Dynamically call a function in a DLL
- DLLStructCreateDef( <name>, <def string> ) -- Creates a named C/C++ style structure definition that can be used with DLLStructCreate and can also be placed inside other DLLStructs
- DLLStructCreate( <def string> ) -- Creates a C/C++ style structure to be used with DLLCall
- DLLStructGetData( <dllstruct>, <element>, <index> ) -- Returns the data of an element of the struct
- DLLStructSetData( <dllstruct>, <element>, <index> ) -- Set the data of an element of the struct
- DLLStructGetSize( <dllstruct> ) -- Returns the size of the struct in bytes
- DLLStructGetPtr( <dllstruct>, <element>, <index> ) -- Returns the pointer to the struct or an element in the struct or even a specific index of an array object within an elment
- DLLStructGetVars( <dllstruct> ) -- Create an array of all items and their array size with total byte size
- LoadAssembly( <file> ) -- Load a .NET DLL into a variable
- UnloadAssembly( <assembly> ) -- Unload a .NET DLL from a variable
- GetMethod( <assembly>, <namespace>, <class>, <method>, <paramdefs>, <params> ) -- Load an instance of a method and its container class into a variable to be able to call it
- Invoke( <method>, <params> ) -- Call the function obtained from GetMethod()
- Run( <file>, <arguments>, <workdir>, <flag>, <show options> ) -- Runs an external program
- RunWait( <file>, <timeout>, <arguments>, <workdir>, <flag>, <show options> ) -- Runs an external program and waits until the program finishes
- RunAsSet( <user>, <domain>, <password>, <options> ) -- Initialise a set of user credentials to use during Run and RunWait operations.
- ProcessClose( <pid/name> ) -- Terminates a named process
- ProcessExists( <pid/name> ) -- Checks to see if a specified process exists
- ProcessList( <name> ) -- Returns an array listing the currently running processes (names and PIDs)
- ProcessSetPriority( <pid/name>, <priority> ) -- Changes the priority of a process
- ProcessWait( <pid/name>, <timeout> ) -- Pauses the current thread until a given process exists or optional the timeout expires
- ProcessWaitClose( <pid/name>, <timeout> ) -- Pauses the current thread until a given process no longer exists or optional the timeout expires
- Shutdown( <shutdown code> ) -- Shuts down the system
- Debug( <flag> ) -- Enter or leave debug mode in debug state the program can interact with operating system processes that run in a special mode by enabling the native property SeDebugPrivilege on the current thread
Environment Management
- EnvExpand( <expression> ) -- Convert a string containing %name% env tags and return complete string with names resolved
- EnvGet( <tag> ) -- Get the value of an environment variable
- EnvSet( <tag>, <expression> ) -- Set the value of an environment variable
- EnvUpdate( ) -- Refreshes the OS environment
File Functions
File Create/Read/Write Functions
- FileOpen( <FileName>, <flag> ) -- Opens a file for reading or writing
- FileClose( <file> ) -- Closes a previously opened file
- FileWrite( <file>, <expression> ) -- Write text to previously opened file at the current File Steam pointer location
- FileWriteBinary( <file>, <binary-array> ) -- Write the data from a binary variable to previously opened file at the current File Steam pointer location
- FileAppend( <file>, <expression> ) -- Append a line of text to the end of a previously opened text file
- FileAppendBinary( <file>, <binary-array> ) -- Append the data from a binary variable to the end of a previously opened file
- FileSeek( <file>, <offset>, <flag> ) -- Change the POSITION of the File Stream pointer
- FilePos( <file> ) -- Get the current POSITION of the File Stream pointer
- FileRead( <file>, <expression> ) -- Read a number of characters from a previously opened text file starting from current File Steam pointer location
- FileReadBinary( <file>, <expression> ) -- Read a number of bytes from a previously opened file starting from current File Steam pointer location
- FileReadLine( <file>, <expression> ) -- Read a line of text from a previously opened text file (Or specify a name of a file)
- FileReadLines( <file> ) -- Read all lines of text from a previously opened text file (Or specify a name of a file)
- FileSave( <file>, <expression> ) -- Save all text to a file
- FileLoad( <file> ) -- Load all text from a file
Misc
- FileCopy( <file1>, <file2>, <flag> ) -- Copy a file
- FileDelete( <file> ) -- Delete a file
- FileExists( <file> ) -- Check if a given file exists
- FileCreationTime( <file>, <flag> ) -- Get the creation time of a file
- FileWriteTime( <file>, <flag> ) -- Get the last write time of a file
- FileAccessTime( <file>, <flag> ) -- Get the last access time of a file
- FileEncrypt( <file> ) -- Encrypt a file so only the windows account used to encrypt it can decrypt it
- FileDecrypt( <file> ) -- Decrypt a file previously encrypted by this windows user account
- FileMD5( <file> ) -- Calculate the MD5 checksum of a file
- FileSHA1( <file> ) -- Calculate the SHA1 checksum of a file
Dialogs
- FileSaveDialog ( <title>, <dir>, <filter>, <options>, <default name> ) -- Initiates a Save File Dialog
- FileOpenDialog ( <title>, <dir>, <filter>, <options>, <default name> ) -- Initiates a Load File Dialog
Directory Functions
- GetFiles ( <path>, <pattern> ) -- Get an array of all files in a directory
- GetFolders ( <path>, <pattern> ) -- Get an array of all folders in a directory
- MKDir ( <path> ) -- Creates all directories and subdirectories as specified by path
- RMDir ( <path>, <flag> ) -- Deletes the specified directory and, if indicated, any subdirectories in the directory
- DirExists ( <path> ) -- Determines whether the given path refers to an existing directory on disk
- DirCopy ( <sourcepath>, <destpath> ) -- Copies a directory and all sub-directories and files (Similar to xcopy)
Dialogs
- FolderSelectDialog ( <text>, <dir>, <flag>, <init dir> ) -- Initiates a Browse For Folder Dialog
Path Functions
- HasExtension ( <path> ) -- Determines whether a path includes a file name extension
- GetFullPath ( <path> ) -- Returns the absolute path for the specified path string
- GetDirectoryName ( <path> ) -- Returns the directory information for the specified path string
- GetExtension ( <path> ) -- Returns the extension of the specified path string
- GetFileName ( <path> ) -- Returns the file name and extension of the specified path string
- GetFileNameWithoutExtension ( <path> ) -- Returns the file name of the specified path string without the extension
- GetPathRoot ( <path> ) -- Gets the root directory information of the specified path
- IsPathRooted ( <path> ) -- Gets a value indicating whether the specified path string contains absolute or relative path information
Network Functions
HTTP Functions
- HTTPFileExists( <not available> ) -- Check if a file exists at a given URL
- HTTPGetString( <not available> ) -- Copy all text from a URL and return it as a string
MySQL Functions
- MySQLConnect( <ip/ip:port>, <login>, <password> ) -- Connect to a MySQL database
- MySQLSelectDB( <mysql>, <db name> ) -- Select a database
- MySQLQuery( <mysql>, <query> ) -- Execute a query
- MySQLFill( <mysql>, <query> ) -- Grab a table or parts of it from the Database
- MySQLFetch( <mysql data> ) -- Fetch the next row from a table
- MySQLFetchReset( <mysql data> ) -- Reset the current position in the table rows to 0
- MySQLFields( <mysql data> ) -- Return how many Fields are in the table
- MySQLRows( <mysql data> ) -- Return how many Rows are in the table
- MySQLClose( <mysql> ) -- Close a MySQL connection
Sputnik Client/Server Functions (This is just for connecting Sputnik Clients to Sputnik Servers nothing else)
- SSListen( <port>, <max connections>, <name> ) -- Create a server and begin listening for clients to connect
- SSConnect( <ip>, <port>, <connection string>, <name> ) -- Connect to a server
- SSApprove( <server>, <client socket> ) -- Approve a client to connect to the server
- SSDisapprove( <server>, <client socket> ) -- Disapprove a client to connect to the server
- SSClientStatus( /* depends... /* ) -- Get the status of a client or of our client
- SSClientIP( <server>, <client socket> ) -- Get the IP of a client socket
- SSRecv( <server/client> ) -- Check for a message recieved from client/server
- SSRead( <message buffer>, <data type> ) -- Read data from a message
- SSDrop( <server>, <client socket> ) -- Kick a client off the server
- SSSendBufferCreate( <server/client> ) -- Create a new buffer to store data to send to the client/server
- SSSendBufferAppend( <message buffer>, <type>, <data> ) -- Add data to the buffer to send such as Strings etc
- SSSend( /* depends... /* ) -- Send data to client or server
Misc Network Functions
- HostResolve( <host name> ) -- Resolves a host name such as google.com into an IP address
- Ping( <ip address/host name> ) -- Pings a host and returns the roundtrip-time
Memory Functions
- WriteMem( < Caption / PID >, <Class>, <Address>, <value> ) -- Write a value to an address in an application's memory (Supports multiple values and even binary variables for writing multiple bytes)
- ReadMem( < Caption / PID >, <Class>, <Address>, <defs>, <size> ) -- Read bytes from an application's memory at an address and create variables using same defs and return values as Unpack()
- Alloc( <size>, <flag> ) -- Allocate memory and return the pointer to it
- Free( <ptr> ) -- Deallocate memory from a pointer
- StringToPTR( <type>, <string> ) -- Allocates memory for the string and writes the string to that memory and returns the pointer for that memory
- PTRToString( <type>, <ptr> ) -- Reads a string from a memory pointer
- PTRRead( <ptr>, <type>, <offset> ) -- Read data from a memory pointer optionally starting from a given index
- PTRWrite( <ptr>, <type>, <offset>, <value> ) -- Write data to a memory pointer optionally starting from a given index
GUI Functions
Dialog Creation Functions
- GUICreate( <Title>, <Width>, <Height>, <Left>, <Top> ) -- Create new GUI window
- DoEvents( ) -- Keep GUI window active by dispatching all messages in the queue
Dialog Properties Get/Set Functions
- GUIState( <expression> ) -- Gets current GUI state
- GUISetState( <expression> ) -- Sets GUI state
Control Creation Functions
- GUICreateButton( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a button
- GUICreateTextBox( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a Textbox
- GUICreateTextBoxEx( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a multiline Textbox
- GUICreatePassword( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a Passweord Box
- GUICreateLabel( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a Label
- GUICreateCheckBox( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a CheckBox
- GUICreateTimer( <gui/container>, <name>, <interval> ) -- Create a timer
- GUICreateDataGrid( <gui/container>, <name>, <left>, <top>, <width>, <height> ) -- Create a Data Grid
- GUICreateGroupBox( <gui/container>, <name>, <text>, <left>, <top>, <width>, <height> ) -- Create a GroupBox
- GUICreateTabSheet( <gui/container>, <name>, <left>, <top>, <width>, <height> ) -- Create a TabSheet
- GUICreateMenu( <gui>, <menuitems> ) -- Create a menu to place on a window
- GUICreateMenuItem( <gui>, <name> ) -- Create a menu item for use in a menu
Event Linking Functions
- GUILink( <gui/guiobject>, <linktype> ) -- Links an event to a GUI or GUI Object
Common Dialog/Control Properties Get/Set Functions
- GUIGetProp( <gui object>, <prop> ) -- Get the value of a GUI objects property
- GUISetProp( <gui object>, <prop>, <value> ) -- Set the value of a GUI objects property
Common Dialog/Control Method Functions
- GUIPropInvoke( <gui/gui object>, <method> ) -- Invoke a method of the GUI/GUIObject such as Focus()
GUIGetProp & GUISetProp Examples
Here are some GUIGetProp & GUISetProp Examples that you might not figure out by yourself.
- Change colour of controls -- Shows how to change the background and foreground colour on Buttons, Windows etc.
Control Properties Get/Set Functions
- GUITimerStart( <timer> ) -- Starts specified timer
- GUITimerStop( <timer> ) -- Stops specified timer
- GUIDataGrid( <datagrid> ) -- Properties & Functions specifically for Data Grid
- GUITabSheet( <tabsheet> ) -- Properties & Functions specifically for Tab Sheet
- GUIMenuItem( <menuitem> ) -- Properties & Functions specifically for Menu Items
Other GUI Functions
- GUIMsgFilter( <gui>, <command> ) -- Use a function to recieve all messages windows sends to the GUI window (HWND, MSG, WPARAM, LPARAM)
- GUICreateFont( <name>, <size>, <style> ) -- Create a new font for use on buttons etc
- GUIFont( < font >, <setting>, <value> ) -- Change the style, size etc on a font object
- MsgBox( <message>, <title>, <flag>, <timeout> ) -- Show a message dialog
- InputBox( <title>, <message>, <default text> ) -- Shows a box to input text.
- ToolTip( <text>, <x>, <y> ) -- Creates a tooltip anywhere on the screen.
- ToolTipKill( <ToolTip> ) -- Delete a tooltip that was made using ToolTip().
Keyboard Control Functions
- HotKeySet( <keydef>, <expression> ) -- Create a custom hotkey to run custom code or execute a function.
- SendKeys( <keydef>, <flag> ) -- Sends simulated keystrokes to the active window
Mouse Control Functions
- MouseClick ( <button>, <x>, <y>, <clicks>, <speed> ) -- Perform a mouse click operation
- MouseClickDrag ( <button>, <x1>, <y1>, <x2>, <y2>, <speed> ) -- Perform a mouse click and drag operation
- MouseDown ( <button> ) -- Perform a mouse down event at the current mouse position
- MouseUp ( <button> ) -- Perform a mouse up event at the current mouse position
- MouseMove ( <x>, <y>, <speed> ) -- Moves the mouse pointer
- MouseGetPos ( ) -- Retrieves the current position of the mouse cursor
- MouseWheel ( <direction>, <clicks> ) -- Moves the mouse wheel up or down
Window Management Functions
(For info on using <title>, <text> See Window Titles and Text (Advanced) )
- WinActivate ( <title>, <text> ) -- Activates (gives focus to) a window
- WinActive ( <title>, <text> ) -- Checks to see if a specified window exists and is currently active
- WinExists ( <title>, <text> ) -- Checks to see if a specified window exists
- WinGetClassList ( <title>, <text> ) -- Retrieves the classes from a window
- WinGetHandle ( <title>, <text> ) -- Retrieves the internal handle of a window
- WinGetPos ( <title>, <text> ) -- Retrieves the position and size of a given window
- WinGetCaretPos ( ) -- Returns the coordinates of the caret in the foreground window
- WinGetTitle ( <title>, <text> ) -- Retrieves the full title from a window
- WinGetText ( <title>, <text> ) -- Retrieves the text from a window
- WinGetState ( <title>, <text> ) -- Retrieves the state of a given window
- WinGetProcess ( <title>, <text> ) -- Retrieves the Process ID (PID) associated with a window
- WinGetClientSize ( <title>, <text> ) -- Retrieves the size of a given window's client area
- WinClose ( <title>, <text> ) -- Closes a window
- WinKill ( <title>, <text> ) -- Forces a window to close
- WinMove ( <title>, <text>, <x>, <y>, <width>, <height> ) -- Moves and/or resizes a window
- WinWait ( <title>, <text>, <timeout> ) -- Waits until the requested window exists
- WinWaitActive ( <title>, <text>, <timeout> ) -- Waits until the requested window is active
- WinWaitNotActive ( <title>, <text>, <timeout> ) -- Waits until the requested window is not active
- WinWaitClose ( <title>, <text>, <timeout> ) -- Waits until the requested window does not exist
- WinSetTitle ( <title>, <text>, <newtitle> ) -- Changes the title of a window
- WinSetState ( <title>, <text>, <flag> ) -- Shows, hides, minimizes, maximizes, or restores a window
- WinSetTrans ( <title>, <text>, <transparency> ) -- Sets the transparency of a window
- WinMinimizeAll ( ) -- Minimizes all windows
- WinMinimizeAllUndo ( ) -- Undoes a previous WinMinimizeAll function
- WinFlash ( <title>, <text>, <flashes>, <delay> ) -- Flashes a window in the taskbar
- WinList ( <title>, <text> ) -- Retrieves a list of windows
Controls
(For info on using <title>, <text> See Window Titles and Text (Advanced) )
- ControlClick ( <title>, <text>, <controlID> ) -- Sends a mouse click command to a given control
- ControlSend ( <title>, <text>, <controlID>, <string> <flag> ) -- Sends a string of characters to a control
- ControlGetFocus ( <title>, <text> ) -- Returns the ControlRef# of the control that has keyboard focus within a specified window
- ControlGetPos ( <title>, <text>, <controlID> ) -- Retrieves the position and size of a control relative to it's window
- ControlDisable ( <title>, <text>, <controlID> ) -- Disables a control
- ControlEnable ( <title>, <text>, <controlID> ) -- Enables a control
- ControlShow ( <title>, <text>, <controlID> ) -- Shows a control that was hidden
- ControlHide ( <title>, <text>, <controlID> ) -- Hides a control
Graphics/Pixel Functions
- PixelGetColour ( <x>, <y> ) -- Returns a pixel colour according to x, y pixel coordinates
- PixelGetMouse ( ) -- Returns a pixel colour according to x, y position of the mouse pointer
- PixelSearch ( <left>, <top>, <right>, <bottom>, <colour>, <shade>, <padding>, <step> ) -- Searches a rectangle of pixels for the pixel colour provided
- PixelChecksum ( <left>, <top>, <right>, <bottom>, <step>, <hwnd> ) -- Generates a checksum for a region of pixels
- Colour( <name> ) -- Get the colour INT value of a given colours name
- RGB( <red>, <green>, <blue> ) -- Get the colour INT value of given red, green and blue bytes
- GetRValue( <colour> ) -- Get the red byte from a colour INT value
- GetGValue( <colour> ) -- Get the green byte from a colour INT value
- GetBValue( <colour> ) -- Get the blue byte from a colour INT value
- ColourDialog( ) -- Allows the user to select a colour and allows you to get the RED, GREEN, BLUE etc values
- FontDialog( ) -- Allows the user to select a font and allows you to get the Name, size, bold etc values
Misc Functions
- Call <function>, <expressions> -- Calls a function contained in a string parameter
- Return <expressions> -- Returns a result from a Function
- Throw( <expression> ) -- Throw an exception
- Die( <expression> ) -- Gives an error and terminates the program
- Eval( <expression>, <flag> ) -- Evaluate a string as Sputnik code
- GC( <flag> ) -- Use the garbage collector
- Require( <file>, <flag> ) -- Add all functions etc from a file for use
- Include( <file>, <flag> ) -- Add all functions etc from a file for use and execute all expressions
- Opt( <option>, <value> ) -- Changes the operation of various Sputnik functions/parameters
User Defined Functions
These functions are created using Sputnik and are not part of the Sputnik core language.