Function Reference
From Sputnik Wiki
(Difference between revisions)
(→Binary Memory Stream Management Functions) |
(→Binary Memory Stream Management Functions) |
||
Line 161: | Line 161: | ||
* [[Core Function StreamPos|StreamPos( <binary-stream> )]] -- Get the current seek position of a binary stream | * [[Core Function StreamPos|StreamPos( <binary-stream> )]] -- Get the current seek position of a binary stream | ||
* [[Core Function StreamSeek|StreamSeek( <binary-stream>, <pos> )]] -- Set the seek position of a binary stream | * [[Core Function StreamSeek|StreamSeek( <binary-stream>, <pos> )]] -- Set the seek position of a binary stream | ||
+ | * [[Core Function StreamCompare|StreamCompare( <binary-stream>, <binary-stream2> )]] -- Compare two binary streams to see if they are identical in data content | ||
* [[Core Function StreamRead|StreamRead( <binary-stream>, <count> )]] -- Read a number of bytes from a binary stream | * [[Core Function StreamRead|StreamRead( <binary-stream>, <count> )]] -- Read a number of bytes from a binary stream | ||
* [[Core Function StreamReadByte|StreamReadByte( <binary-stream> )]] -- Read a single byte from a binary stream | * [[Core Function StreamReadByte|StreamReadByte( <binary-stream> )]] -- Read a single byte from a binary stream |
Revision as of 05:28, 27 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
- Echo( ) -- Alias for Print( )
- 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( ) -- Alias for ConsoleClear( )
- ConsoleClear( ) -- Clear all text from the console window
- ConsoleHide( ) -- Hide the console window
- ConsoleShow( ) -- Show the console window
- ConsoleState( ) -- Get the console state (Visible, Hidden)
- 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>, <flag> ) -- 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
- Cur( $variable, <value> ) -- Get/Set the array pointer
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
- isVarSocket( $variable ) -- Check if a variable holds a 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>, <overwrite> ) -- 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
- BinarySHA1( <binary-array> ) -- Returns the SHA1 hash of a binary variable
- BinaryMD5( <binary-array> ) -- Returns the MD5 hash of a binary variable
- BinaryCompare( <binary-array>, <binary-array2> ) -- Compare two binary variables
- 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
Binary Memory Stream Management Functions
- StreamCreate( ) -- Create a new binary stream
- StreamCreateB( <binary-stream>, <binary-array> ) -- Create a new binary stream from a binary variable
- StreamLen( <binary-stream> ) -- Get the length of a binary stream
- StreamSetLen( <binary-stream>, <length> ) -- Set the length of a binary stream
- StreamPos( <binary-stream> ) -- Get the current seek position of a binary stream
- StreamSeek( <binary-stream>, <pos> ) -- Set the seek position of a binary stream
- StreamCompare( <binary-stream>, <binary-stream2> ) -- Compare two binary streams to see if they are identical in data content
- StreamRead( <binary-stream>, <count> ) -- Read a number of bytes from a binary stream
- StreamReadByte( <binary-stream> ) -- Read a single byte from a binary stream
- StreamReadUnpack( <binary-stream>, <count>, <def> ) -- Read from a binary stream the same way Unpack() is used
- StreamToBinary( <binary-stream> ) -- Return a new binary variable from the data within the binary stream
- StreamWrite( <binary-stream>, <binary-array> ) -- Write the bytes from a binary variable to the binary stream
- StreamWriteByte( <binary-stream>, <binary-array> ) -- Write a single byte to the binary stream
- StreamWritePack( <binary-stream>, <def>, <params> ) -- Write a data to the binary stream the same way Pack() is used
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
- BitROTATE( <expression>, <shift>, <size> ) -- Performs a bit shifting operation, with rotation
- 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
- isDigit( <expression> ) -- Checks if string only contains numbers
- 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 (Allows for float/double)
- isSpace( <expression> ) -- Check if string contains only whitespace
- isSymbol( <expression> ) -- Check if string contains only symbol chars
- isString( <expression> ) -- Check if variable contains only string 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>, <value> ) -- 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
- SubStrCount( <expression>, <expression2>, <offset>, <length>, <flag> ) -- Count the number of substring occurrences
- 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>, <flag> ) -- 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
- Grep( <pattern>, <array>, <flag> ) -- Returns a new array consisting of the elements of the input array that match the given regex pattern
- Combine( <array-keys>, <array-values> ) -- Creates a hash (Dictionary) by using the values from the keys array as keys and the values from the values array as the corresponding values
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
- Keys( <array> ) -- Create an array containing all KEYS from a Hash (Dictionary)
- Values( <array> ) -- Create an array containing all VALUES from a Hash (Dictionary)
Enum Functions
- Enumerate( <enum> ) -- Cycle through all Name + Values in an enum
- EnumKey( <enum>, <value> ) -- Return the string KEY for a given integer value
- EnumValue( <enum>, <value> ) -- Return the integer value for a given string KEY
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( ) -- 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
Raw Sockets (TCP/UDP etc)
- SocketAccept( <socket> ) -- Creates a new <socket> for a newly created connection
- SocketAvailable( <socket> ) -- Gets the amount of data that has been received from the network and is available to be read
- SocketBind( <socket>, <ip>, <port> ) -- Associates a <socket> with a local endpoint
- SocketClose( <socket>, <wait> ) -- Closes the <socket> connection and releases all associated resources
- SocketConnect( <socket>, <ip>, <port> ) -- Establishes a connection to a remote host
- SocketConnected( <socket> ) -- Checks if a socket is connected and ready for use or not
- SocketCreate( <sockettype>, <protocoltype>, <addressfamily> ) -- Create a new <socket>
- SocketListen( <socket>, <backlog> ) -- Places a <socket> in a listening state
- SocketReceive( <socket>, <buffersize> ) -- Receives data from a bound <socket> into a receive buffer
- SocketSend( <socket>, <binary-variable>, <length>, <flag> ) -- Sends data to a connected <socket>
- SocketSendTo( <socket>, <ip>, <port>, <binary-variable>, <length>, <flag> ) -- Sends data to the specified ip + port
- SocketSendFile( <socket>, <file-name> ) -- Sends a file as data to a connected <socket>
- SocketShutdown( <socket>, <shutdown-type> ) -- Disables sends and receives on a <socket>
- SocketPoll( <socket>, <milliseconds>, <type> ) -- Sends a kind of ping to determine the status of the <socket>
- SocketHandle( <socket> ) -- Gets the operating system handle for the <socket>
- SocketIsBound( <socket> ) -- Gets a value that indicates whether the <socket> is bound to a specific local port
- SocketOpt( <socket>, <option>, <value> ) -- Get or Set a setting on a <socket>
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
- DLLStructGetDef( <name>/<dllstruct> ) -- Return the <def string> of a given DLLStruct
- 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( <type> ) -- Get data from the clipboard
- ClipSet( <type>, <expression> ) -- Set data to the clipboard
GUI Functions
Dialog Creation Functions
- GUICreate( "MDIWindow", <Text>, <Left>, <Top>, <Width>, <Height>, <Style> ) -- Create a GUI Multi-Document-Interface window
- GUICreate( "Window", <Text>, <Left>, <Top>, <Width>, <Height>, <Style> ) -- 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( "Label", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a Label
- GUICreate( "GroupBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a GroupBox
- GUICreate( "PictureBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a PictureBox
- GUICreate( "ProgressBar", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ProgressBar
- GUICreate( "ListBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ListBox
- GUICreate( "Menu", <gui object> ) -- Create a Menu
- GUICreate( "MenuItem", <gui object>, <Text> ) -- Create a MenuItem
NOT AVAILABLE YET
- GUICreate( "TabSheet", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a TabSheet
- GUICreate( "TabPage", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a TabPage
- 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( "DateTimePicker", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a DateTimePicker
- GUICreate( "LinkLabel", <gui object>, <Text>, <Left>, <Top>, <Width>, <Height> ) -- Create a LinkLabel
- GUICreate( "CheckedListBox", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a CheckedListBox
- 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( "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( "ToolStrip", <gui object>, <Left>, <Top>, <Width>, <Height> ) -- Create a ToolStrip
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
- GUITListBox( <listbox> ) -- Properties & Functions specifically for ListBox
- 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
- InputBoxEx( <title>, <message>, <default text> ) -- Shows a box to input multiple lines of 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
- RealGetKeyState( <vk_keycode> ) -- Checks if a key is pressed down
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>, <button>, <clicks>, <x>, <y> ) -- 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
NOT AVAILABLE YET
- 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)
- IsAdmin( ) -- Check if the script is running in admin mode or not (Run as administrator)
User Defined Functions
These functions are created using Sputnik and are not part of the Sputnik core language.