Function Reference
From Sputnik Wiki
				
				
				(Difference between revisions)
				
																
				
				
								
				 (→Misc Functions)  | 
		 (→Misc Functions)  | 
		||
| Line 560: | Line 560: | ||
* [[Core Function UnsetDLLStruct|UnsetDLLStruct( <dllstruct-name> )]] -- Delete a previous user defined DLLStruct from Sputnik  | * [[Core Function UnsetDLLStruct|UnsetDLLStruct( <dllstruct-name> )]] -- Delete a previous user defined DLLStruct from Sputnik  | ||
* [[Core Function FunctionList|FunctionList( <expression> )]] -- Return an array of all user defined functions (Or just ones fitting a given pattern)  | * [[Core Function FunctionList|FunctionList( <expression> )]] -- Return an array of all user defined functions (Or just ones fitting a given pattern)  | ||
| + | * [[Core Function ClassList|ClassList( <expression> )]] -- Return an array of all user defined classes (Or just ones fitting a given pattern)  | ||
| + | * [[Core Function EnumList|EnumList( <expression> )]] -- Return an array of all user defined enums (Or just ones fitting a given pattern)  | ||
| + | * [[Core Function DLLStructList|DLLStructList( <expression> )]] -- Return an array of all user defined dllstructs (Or just ones fitting a given pattern)  | ||
=== User Defined Functions ===  | === User Defined Functions ===  | ||
Revision as of 23:55, 19 April 2012
Function Reference
How to create a Function
To create your own funtions see the Function page.
Core Functions
If a link is red (unclickable) the function either doesnt exist yet and is pending creation or it has been created but does not yet have a page/example.
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
 - ThreadLock( <lockname> ) {} -- Locks a given section of code allowing only one thread to execute it at a time
 - 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
 - isVarDLLStruct( $variable ) -- Check if a variable holds a DLLStruct
 - isVarGUIObject( $variable ) -- Check if a variable holds a GUI Object
 - 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
 - Hash( <expression> ) -- Generate a unique hash code for a string value
 - Hex2Str( <expression>, <flag> ) -- Convert a hex string back to a normal string
 - 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
 - Str2Hex( <expression>, <flag> ) -- Convert a string to a hex string
 - 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 last item in an array
 - Shift( <array> ) -- Delete the first 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)
 - HSort( <array> ) -- Alphabetically sorts a Hash by Keys and returns the new hash
 
Enum Functions
- Enumerate( <enum> ) -- Cycle through all Name + Values in an enum
 
Process Functions
- DLLCall( <dll>, <function>, <returntype>, <paramtypes>, <params> ) -- Dynamically call a function in a DLL
 - 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
 - RunShell( <file>, <arguments>, <workdir>, <flag>, <show options> ) -- Runs an external program (Using ShellExecute)
 - RunShellWait( <file>, <timeout>, <arguments>, <workdir>, <flag>, <show options> ) -- Runs an external program (Using ShellExecute) and waits until the program finishes
 - RunAsSet( <user>, <domain>, <password>, <options> ) -- Initialise a set of user credentials to use during Run and RunWait operations.
 - PHandle( <pid/name> ) -- Get the process handle of this program
 - 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)
 - CurDir ( <path> ) -- Get or Set the current working directory
 
Dialogs
- FolderSelectDialog ( <text>, <dir>, <flag>, <init dir> ) -- Initiates a Browse For Folder Dialog
 
Path Functions
- ParsePath ( <path> ) -- Resolve a file name and locate its full path
 - 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
 - PTRToDLLStruct( <def string>, <ptr> ) -- Reads a DLLStruct from a memory pointer
 - 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
 
Clipboard Functions
- ClipGet( ) -- Get text from the clipboard
 - ClipSet( <expression> ) -- Set text to the clipboard
 
GUI Functions
Dialog Creation Functions
- GUICreate( "MDIWindow", <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a GUI Multi-Document-Interface window
 - GUICreate( "Window", <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a GUI window
 - DoEvents( ) -- Keep GUI windows active by dispatching all messages in the queue
 - GUILoad( <GUI Window> ) -- Load a GUI window and display it (Usually after creation or after GUIUnload)
 - GUIUnload( <GUI Window> ) -- Unload a GUI window and hide it (GUILoad will bring it back)
 - GUIMDIParent( <GUI Window>, <GUI Window> ) -- Set the parent window (An MDI window) for another window to be created inside it
 
Control Creation Functions
- GUICreate( "Button", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a Button
 - GUICreate( "DataGrid", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a DataGrid
 - GUICreate( "Timer", <gui object>, <Interval> ) -- Create a Timer
 - GUICreate( "ComboBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ComboBox
 - GUICreate( "TextBox", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a TextBox
 - GUICreate( "TextBoxEx", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a Multiline TextBox
 - GUICreate( "TabSheet", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a TabSheet
 - GUICreate( "TabPage", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a TabPage
 - GUICreate( "Label", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a Label
 - GUICreate( "CheckBox", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a CheckBox
 - GUICreate( "RadioButton", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a RadioButton
 - GUICreate( "GroupBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a GroupBox
 - GUICreate( "CheckedListBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a CheckedListBox
 - GUICreate( "DateTimePicker", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a DateTimePicker
 - GUICreate( "LinkLabel", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a LinkLabel
 - GUICreate( "ListBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ListBox
 - GUICreate( "ListView", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ListView
 - GUICreate( "MaskedTextBox", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a MaskedTextBox
 - GUICreate( "MonthCalendar", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a MonthCalendar
 - GUICreate( "NumericUpDown", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a NumericUpDown
 - GUICreate( "PictureBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a PictureBox
 - GUICreate( "RichTextBox", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a RichTextBox
 - GUICreate( "ToolTip", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a ToolTip
 - GUICreate( "TreeView", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a TreeView
 - GUICreate( "WebBrowser", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a WebBrowser
 - GUICreate( "StatusBar", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a StatusBar
 - GUICreate( "ProgressBar", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ProgressBar
 - GUICreate( "ToolStrip", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ToolStrip
 - GUICreate( "Menu", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a Menu
 
Window/Control Properties Get/Set Functions
Note - Any options not here are most likely found using GUIGetProp and GUISetProp the bulk of all props can be found/used in them 2 funtions however anything special and not generic will go in the functions below.
- GUIWindow( <window> ) -- Properties & Functions specifically for Windows
 - GUIDataGrid( <datagrid> ) -- Properties & Functions specifically for DataGrid
 - GUITimer( <timer> ) -- Properties & Functions specifically for Timer
 - GUITComboBox( <combobox> ) -- Properties & Functions specifically for ComboBox
 - GUITabSheet( <tabsheet> ) -- Properties & Functions specifically for TabSheet
 - GUIProgressBar( <progressbar> ) -- Properties & Functions specifically for ProgressBar
 - GUIPictureBox( <picturebox> ) -- Properties & Functions specifically for PictureBox
 - GUIMsgFilter( <gui>, <command> ) -- Use a function to receive all messages windows sends to the GUI window (HWND, MSG, WPARAM, LPARAM).
 - GUIWndProc( <gui>, <command> ) -- Use a function to receive all the WindProc messages windows sends to the GUI window (HWND, MSG, WPARAM, LPARAM).
 
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
 
GUI Link (Event) Functions
- GUILink( <gui object>, <linktype>, <action>, <param var> ) -- Add a link on a Click event to a GUI object
 
Other GUI Functions
- GUICreate( "Font", ......??? ) -- Create a Font
 - 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
 - ControlCommand ( <title>, <text>, <controlID>, <command>, <option> ) -- Sends a command to a control
 - ControlFocus ( <title>, <text>, <controlID> ) -- Sets input focus to a given control on a window
 - ControlGetHandle ( <title>, <text>, <controlID> ) -- Retrieves the internal handle of a control
 - ControlGetText ( <title>, <text>, <controlID> ) -- Retrieves text from a control
 - ControlMove ( <title>, <text>, <controlID>, <x>, <y>, <width>, <height> ) -- Moves a control within a window
 - ControlSetText ( <title>, <text>, <controlID>, <text>, <flag> ) -- Sets text of 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
 - PixelSearchHWND ( <hwnd>, <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
 - HWND( ) -- Get the HWND of the hidden window used by this program (It handles hotkeys etc)
 - 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
 - UnsetFunction( <function-name> ) -- Delete a previous user defined Function from Sputnik
 - UnsetClass( <class-name> ) -- Delete a previous user defined Class from Sputnik
 - UnsetEnum( <enum-name> ) -- Delete a previous user defined Enum from Sputnik
 - UnsetDLLStruct( <dllstruct-name> ) -- Delete a previous user defined DLLStruct from Sputnik
 - FunctionList( <expression> ) -- Return an array of all user defined functions (Or just ones fitting a given pattern)
 - ClassList( <expression> ) -- Return an array of all user defined classes (Or just ones fitting a given pattern)
 - EnumList( <expression> ) -- Return an array of all user defined enums (Or just ones fitting a given pattern)
 - DLLStructList( <expression> ) -- Return an array of all user defined dllstructs (Or just ones fitting a given pattern)
 
User Defined Functions
These functions are created using Sputnik and are not part of the Sputnik core language.