Macros

From Sputnik Wiki
(Difference between revisions)
Jump to: navigation, search
(Language Sets)
 
(46 intermediate revisions by one user not shown)
Line 1: Line 1:
= Macros =
 
 
 
=== For Functions ===
 
=== For Functions ===
  
 
<pre>
 
<pre>
@ARGS // Stores all arguments passed to a function allowing for unlimited arguments.
+
@Args // Stores all arguments passed to a function allowing for unlimited arguments.
 +
      // This only works happens if you have [Args("true")] adove the function
 +
</pre>
 +
 
 +
=== For Variables===
 +
 
 +
Base type
 +
 
 +
<pre>
 +
[TYPE] [@MACRO]
 +
NULL @typeNULL
 +
BOOL @typeBOOL
 +
CHAR @typeCHAR
 +
BYTE @typeBYTE
 +
SBYTE @typeSBYTE
 +
INT16 @typeINT16
 +
INT32 @typeINT32
 +
INT64 @typeINT64
 +
UINT16 @typeUINT16
 +
UINT32 @typeUINT32
 +
UINT64 @typeUINT64
 +
FLOAT @typeFLOAT
 +
DOUBLE @typeDOUBLE
 +
STRING @typeSTRING
 +
BINARY @typeBINARY
 +
INTPTR @typeINTPTR
 +
UINTPTR @typeUINTPTR
 +
REFERENCE @typeREFERENCE
 +
ARRAY @typeARRAY
 +
OBJECT @typeOBJECT
 +
ERROR @typeERROR
 +
</pre>
 +
 
 +
Object Type
 +
 
 +
<pre>
 +
[TYPE] [@MACRO]
 +
CLASS @typeCLASS
 +
FILE @typeFILE
 +
MYSQL @typeMYSQL
 +
MYSQLDATA @typeMYSQLDATA
 +
DLLSTRUCT @typeDLLSTRUCT
 +
OBJECT @typeOBJ
 +
SERVER @typeSERVER
 +
CLIENT @typeCLIENT
 +
GUIObject @typeGUIObject
 +
SOCKET @typeSOCKET
 +
FUNCTION @typeFUNC
 +
LINQ @typeLINQ
 +
ERROR @typeERR
 +
</pre>
 +
 
 +
Variable Scope
 +
 
 +
<pre>
 +
[TYPE] [@MACRO]
 +
ANY @scopeANY
 +
GLOBAL @scopeGLOBAL
 +
LOCAL @scopeLOCAL
 +
</pre>
 +
 
 +
Scope
 +
 
 +
<pre>
 +
[TYPE] [@MACRO]
 +
NONE @scopeNONE
 +
INTERP_INIT @scopeINTERPINIT
 +
STACK_INIT @scopeSTACKINIT
 +
BLOCK @scopeBLOCK
 +
FUNCTION @scopeFUNCTION
 +
MAX @scopeMAX
 +
</pre>
 +
 
 +
=== Language Detection ===
 +
 
 +
<pre>
 +
@Lang // Return an array containing language information on the current OS
 +
// Example:
 +
// my List ($Name, $DisplayName, $EnglishName, $TwoLetterISO, $ThreeLetterISO, $LCID) = @Lang;
 
</pre>
 
</pre>
  
Line 10: Line 86:
  
 
<pre>
 
<pre>
@COMMONFILESDIR // Common Files folder
+
@CommonFilesDir // Common Files folder
@WINDIR // The directory of windows
+
@WinDir // The directory of windows
@SYSDIR // The directory of windows system directory
+
@SysDir // The directory of windows system directory
@CURDIR // The current working directory
+
@CurDir // The current working directory
@TEMPDIR // The current system's temporary folder
+
@TempDir // The current system's temporary folder
 +
@ExeDir // The directory of the Sputnik exe
 +
@ScriptDir // The directory where the current script is at runtime
 +
@FileCase // Returns TRUE if the file system is case insensitive
 +
@InvalidPathChars // String of characters that are not allowed in path names.
 +
@InvalidFilenameChars // String of characters that are not allowed in file names.
 +
@VolumeSeparatorChar // Provides a platform-specific volume separator character.
 +
@PathSeparator // A platform-specific separator character used to separate path strings in environment variables.
 +
@DirectorySeparatorChar // Provides a platform-specific character used to separate directory levels in a path string that reflects a hierarchical file system organization.
 +
@AltDirectorySeparatorChar // Provides a platform-specific alternate character used to separate directory levels in a path string that reflects a hierarchical file system organization.
 
</pre>
 
</pre>
  
Line 24: Line 109:
 
@CR // Carriage return, Chr(13); sometimes used for line breaks.
 
@CR // Carriage return, Chr(13); sometimes used for line breaks.
 
@LF // Line feed, Chr(10); typically used for line breaks.
 
@LF // Line feed, Chr(10); typically used for line breaks.
@TAB // Tab character, Chr(9).
 
 
@NL // The newline that the current windows likes best.
 
@NL // The newline that the current windows likes best.
 +
@N // The newline or <BR> depending if Sputnik is #cgi or not
 
@VT // Vertical Tab, Chr(11); This character is rarely used.
 
@VT // Vertical Tab, Chr(11); This character is rarely used.
 
@FF // Form Feed, Chr(12); This character is also known as "New Page".
 
@FF // Form Feed, Chr(12); This character is also known as "New Page".
@SPACE // Normal Space, Chr(32)
 
 
@NBSP // No-Break Space, Chr(160)
 
@NBSP // No-Break Space, Chr(160)
 
       // The No-Break Space character is used to represent a space where
 
       // The No-Break Space character is used to represent a space where
 
       // a line break is not allowed. It is often used in source code for
 
       // a line break is not allowed. It is often used in source code for
 
       // indentation.  
 
       // indentation.  
 +
@Space // Normal Space, Chr(32)
 +
@Tab // Tab character, Chr(9).
 
</pre>
 
</pre>
  
Line 40: Line 126:
  
 
<pre>
 
<pre>
@NUMBER // 0123456789
+
@Euro // The Euro Currency Sign; ChrW(8364)
@DIGIT // 0123456789
+
@Number // 0123456789
@LETTER // abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
+
@Digit // 0123456789
@LETTEREXT // This set includes all the letters which are part of the extended
+
@Letter // abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
 +
@LetterExt // This set includes all the letters which are part of the extended
 
           // characters in the first 256 characters (ANSI)
 
           // characters in the first 256 characters (ANSI)
@ALPHANUMERIC // This set includes all the characters in @Letter and @Number
+
@AlphaNumeric // This set includes all the characters in @Letter and @Number
@PRINTABLE // This set includes all standard characters that can be printed
+
@Printable // This set includes all standard characters that can be printed
 
           // onscreen. This includes the characters from  Chr(32) to Chr(127)
 
           // onscreen. This includes the characters from  Chr(32) to Chr(127)
 
           // and  Chr(160) (No-Break Space). The No-Break Space character was
 
           // and  Chr(160) (No-Break Space). The No-Break Space character was
 
           // included since it is often used in source code.
 
           // included since it is often used in source code.
@PRINTABLEEXT // This set includes all the printable characters above Chr(127).
+
@PrintableExt // This set includes all the printable characters above Chr(127).
 
               // Although rarely used in programming languages, they could be
 
               // Although rarely used in programming languages, they could be
 
               // used, for instance, as valid characters in a string literal.
 
               // used, for instance, as valid characters in a string literal.
@WHITESPACE // This set includes all characters that are normally considered
+
@Whitespace // This set includes all characters that are normally considered
 
             // whitespace and ignored by the parser. The set consists of the
 
             // whitespace and ignored by the parser. The set consists of the
 
             // Space, Horizontal  Tab, Line Feed, Vertical Tab, Form Feed,
 
             // Space, Horizontal  Tab, Line Feed, Vertical Tab, Form Feed,
 
             // Carriage Return and No-Break Space.  
 
             // Carriage Return and No-Break Space.  
@CONTROLS // This set includes the characters from Chr(1) to Chr(31)
+
@Controls // This set includes the characters from Chr(1) to Chr(31)
 
           // and from Chr(127) to Chr(159).
 
           // and from Chr(127) to Chr(159).
@ANSIMAPPED // This set contains the characters between Chr(128) and Chr(159)
+
@AnsiMapped // This set contains the characters between Chr(128) and Chr(159)
 
             // that have different values in Unicode.
 
             // that have different values in Unicode.
@ANSIPRINTABLE // This set contains all printable characters available in ANSI.
+
@AnsiPrintable // This set contains all printable characters available in ANSI.
 
               // Essentially, this is a union of @Printable@, @PrintableExt
 
               // Essentially, this is a union of @Printable@, @PrintableExt
 
               // and @ANSIMapped.
 
               // and @ANSIMapped.
 +
@AllValid // The {All Valid} character set contains every valid character
 +
          // in the Basic Multilingual Plane of the Unicode Character Set.
 +
          // This includes the characters from ChrW(1) to ChrW(55295) and
 +
          // ChrW(56320) to ChrW(65519).
 
</pre>
 
</pre>
  
Line 109: Line 200:
 
@Bopomofo // ChrW(12544) to ChrW(12591)
 
@Bopomofo // ChrW(12544) to ChrW(12591)
 
@BopomofoExt // Bopomofo Extended; ChrW(12704) to ChrW(12735)
 
@BopomofoExt // Bopomofo Extended; ChrW(12704) to ChrW(12735)
@Japunct // Japanese-style punctuation; ChrW(12288) to ChrW(12351)
+
@JapPunct // Japanese-style punctuation; ChrW(12288) to ChrW(12351)
 
@JapRomKat // Full-width Roman characters and half-width Katakana; ChrW(65280) to ChrW(65519)
 
@JapRomKat // Full-width Roman characters and half-width Katakana; ChrW(65280) to ChrW(65519)
 
@Hiragana // ChrW(12352) to ChrW(12447)
 
@Hiragana // ChrW(12352) to ChrW(12447)
Line 120: Line 211:
 
<pre>
 
<pre>
 
@PI // Mathematical constant that is the ratio of any circle's circumference to its diameter
 
@PI // Mathematical constant that is the ratio of any circle's circumference to its diameter
 +
@TwoPI // A value specifying the approximation of 2π which is 360 degrees
 
@E // Represents the natural logarithmic base, specified by the constant, e.
 
@E // Represents the natural logarithmic base, specified by the constant, e.
 +
@LOG2E // Log(@E, 2) = 1.4426950408889634074
 +
@LOG10E // Log10(@E) = 0.43429448190325182765
 +
@LN2 // Log(2) = 0.69314718055994530942
 +
@LN10 // Log(10) = 2.30258509299404568402
 +
@PI2 // @PI/2 = 1.57079632679489661923
 +
@PI4 // @PI/4 = 0.78539816339744830962
 +
@1PI // 1/@PI = 0.31830988618379067154
 +
@2PI // 2/@PI = 0.63661977236758134308
 +
@SQRTPI // Sqrt(@PI) = 1.77245385090551602729
 +
@2SQRTPI // 2/Sqrt(@PI) = 1.12837916709551257390
 +
@SQRT2 // Sqrt(2) = 1.4142135623731
 +
@SQRT3 // Sqrt(3) = 1.73205080756887729352
 +
@1SQRT2 // 1/Sqrt(2) = 0.70710678118654752440
 +
@LNPI // Log(@PI) = 1.14472988584940017414
 +
@Euler // Euler constant = 0.57721566490153286061
 +
@ZeroTolerance // The value for which all absolute numbers smaller than are considered equal to zero
 
</pre>
 
</pre>
  
Line 126: Line 234:
  
 
<pre>
 
<pre>
@CHAR_MIN // Represents the smallest possible value of a unicode character
+
@CharMin // Represents the smallest possible value of a unicode character
@CHAR_MAX // Represents the largest possible value of a unicode character
+
@CharMax // Represents the largest possible value of a unicode character
@BYTE_MIN // Represents the smallest possible value of a unsigned 8-bit integer
+
@ByteMin // Represents the smallest possible value of a unsigned 8-bit integer
@BYTE_MAX // Represents the largest possible value of a unsigned 8-bit integer
+
@ByteMax // Represents the largest possible value of a unsigned 8-bit integer
@SBYTE_MIN // Represents the smallest possible value of a signed 8-bit integer
+
@SByteMin // Represents the smallest possible value of a signed 8-bit integer
@SBYTE_MAX // Represents the largest possible value of a signed 8-bit integer
+
@SByteMax // Represents the largest possible value of a signed 8-bit integer
@USHORT_MIN // Represents the smallest possible value of a unsigned 16-bit integer
+
@UshortMin // Represents the smallest possible value of a unsigned 16-bit integer
@USHORT_MAX // Represents the largest possible value of a unsigned 16-bit integer
+
@UshortMax // Represents the largest possible value of a unsigned 16-bit integer
@UINT16_MIN // Represents the smallest possible value of a unsigned 16-bit integer
+
@Uint16Min // Represents the smallest possible value of a unsigned 16-bit integer
@UINT16_MAX // Represents the largest possible value of a unsigned 16-bit integer
+
@Uint16Max // Represents the largest possible value of a unsigned 16-bit integer
@UINT_MIN // Represents the smallest possible value of a unsigned 32-bit integer
+
@UintMin // Represents the smallest possible value of a unsigned 32-bit integer
@UINT_MAX // Represents the largest possible value of a unsigned 32-bit integer
+
@UintMax // Represents the largest possible value of a unsigned 32-bit integer
@UINT32_MIN // Represents the smallest possible value of a unsigned 32-bit integer
+
@Uint32Min // Represents the smallest possible value of a unsigned 32-bit integer
@UINT32_MAX // Represents the largest possible value of a unsigned 32-bit integer
+
@Uint32Max // Represents the largest possible value of a unsigned 32-bit integer
@ULONG_MIN // Represents the smallest possible value of a unsigned 64-bit integer
+
@UlongMin // Represents the smallest possible value of a unsigned 64-bit integer
@ULONG_MAX // Represents the largest possible value of a unsigned 64-bit integer
+
@UlongMax // Represents the largest possible value of a unsigned 64-bit integer
@UINT64_MIN // Represents the smallest possible value of a unsigned 64-bit integer
+
@Uint64Min // Represents the smallest possible value of a unsigned 64-bit integer
@UINT64_MAX // Represents the largest possible value of a unsigned 64-bit integer
+
@Uint64Max // Represents the largest possible value of a unsigned 64-bit integer
@SHORT_MIN // Represents the smallest possible value of a signed 16-bit integer
+
@ShortMin // Represents the smallest possible value of a signed 16-bit integer
@SHORT_MAX // Represents the largest possible value of a signed 16-bit integer
+
@ShortMax // Represents the largest possible value of a signed 16-bit integer
@INT16_MIN // Represents the smallest possible value of a signed 16-bit integer
+
@Int16Min // Represents the smallest possible value of a signed 16-bit integer
@INT16_MAX // Represents the largest possible value of a signed 16-bit integer
+
@Int16Max // Represents the largest possible value of a signed 16-bit integer
@INT_MIN // Represents the smallest possible value of a signed 32-bit integer
+
@IntMin // Represents the smallest possible value of a signed 32-bit integer
@INT_MAX // Represents the largest possible value of a signed 32-bit integer
+
@IntMax // Represents the largest possible value of a signed 32-bit integer
@INT32_MIN // Represents the smallest possible value of a signed 32-bit integer
+
@Int32Min // Represents the smallest possible value of a signed 32-bit integer
@INT32_MAX // Represents the largest possible value of a signed 32-bit integer
+
@Int32Max // Represents the largest possible value of a signed 32-bit integer
@LONG_MIN // Represents the smallest possible value of a signed 64-bit integer
+
@LongMin // Represents the smallest possible value of a signed 64-bit integer
@LONG_MAX // Represents the largest possible value of a signed 64-bit integer
+
@LongMax // Represents the largest possible value of a signed 64-bit integer
@INT64_MIN // Represents the smallest possible value of a signed 64-bit integer
+
@Int64Min // Represents the smallest possible value of a signed 64-bit integer
@INT64_MAX // Represents the largest possible value of a signed 64-bit integer
+
@Int64Max // Represents the largest possible value of a signed 64-bit integer
@DOUBLE_POSINF // Represents positive infinity
+
@DoublePosinf // Represents positive infinity
@DOUBLE_NEGINF // Represents negative infinity
+
@DoubleNeginf // Represents negative infinity
@DOUBLE_NAN // Represents (Not a number) NaN
+
@DoubleNan // Represents (Not a number) NaN
@DOUBLE_MIN // Represents the smallest possible value of a float
+
@DoubleMin // Represents the smallest possible value of a float
@DOUBLE_MAX // Represents the largest possible value of a float
+
@DoubleMax // Represents the largest possible value of a float
@DOUBLE_EPSILON // Represents the smallest positive double value greater than zero
+
@Double_epsilon // Represents the smallest positive double value greater than zero
@FLOAT_POSINF // Represents positive infinity
+
@FloatPosinf // Represents positive infinity
@FLOAT_NEGINF // Represents negative infinity
+
@FloatNeginf // Represents negative infinity
@FLOAT_NAN // Represents (Not a number) NaN
+
@FloatNan // Represents (Not a number) NaN
@FLOAT_MIN // Represents the smallest possible value of a float
+
@FloatMin // Represents the smallest possible value of a float
@FLOAT_MAX // Represents the largest possible value of a float
+
@FloatMax // Represents the largest possible value of a float
@FLOAT_EPSILON // Represents the smallest positive float value greater than zero
+
@FloatEpsilon // Represents the smallest positive float value greater than zero
 +
</pre>
 +
 
 +
=== Variable size etc ===
 +
 
 +
Useful for use with memory functions
 +
 
 +
<pre>
 +
// Pointers (Pointers will either be 32-bit or 64-bit
 +
// depending on which Sputnik is using however as long as
 +
// these macros are used your functions will continue to work
 +
// regardless if using 32 or 64 bit Sputnik.
 +
@PTRSize // Represents the size in bytes of pointers
 +
@PTRZero // Represents a pointer or handle that has been initialized to zero
 +
@UPTRSize // Represents the size in bytes of unsigned pointers
 +
@UPTRZero // Represents an unsigned pointer or handle that has been initialized to zero
 +
// Others
 +
@CharSize // Represents the size in bytes of a char
 +
@BoolSize // Represents the size in bytes of a boolean
 +
@ByteSize // Represents the size in bytes of a byte
 +
@SByteSize // Represents the size in bytes of a sbyte (signed byte)
 +
@Int16Size // Represents the size in bytes of an int16
 +
@Int32Size // Represents the size in bytes of an int32
 +
@Int64Size // Represents the size in bytes of an int64
 +
@UInt16Size // Represents the size in bytes of an uint16
 +
@UInt32Size // Represents the size in bytes of an uint32
 +
@UInt64Size // Represents the size in bytes of an uint64
 +
@FloatSize // Represents the size in bytes of an float
 +
@DoubleSize // Represents the size in bytes of an double
 +
// Characters
 +
@ACSize // Represents the size in bytes an ASCII string character
 +
@UCSize // Represents the size in bytes a Sputnik string character (UTF8)
 
</pre>
 
</pre>
  
Line 173: Line 312:
  
 
<pre>
 
<pre>
@DATETIMENOW // Stores the current date and time as a string
+
@Epoch // Returns the current time measured in the number of seconds since the Unix Epoch
@MSEC // Milliseconds value of clock.  Range is 00 to 999
+
      // (January 1 1970 00:00:00 GMT).
@SEC // Seconds value of clock.  Range is 00 to 59
+
@MSec // Milliseconds value of clock.  Range is 00 to 999
@MIN // Minutes value of clock.  Range is 00 to 59
+
@Sec // Seconds value of clock.  Range is 00 to 59
@HOUR // Hours value of clock in 24-hour format.  Range is 00 to 23
+
@Min // Minutes value of clock.  Range is 00 to 59
@WDAY // Numeric day of week.  Range is 1 to 7 which corresponds to Sunday through Saturday
+
@Hour // Hours value of clock in 24-hour format.  Range is 00 to 23
@MDAY // Current day of month.  Range is 01 to 31
+
@WDay // Numeric day of week.  Range is 1 to 7 which corresponds to Sunday through Saturday
@MON // Current month.  Range is 01 to 12
+
@MDay // Current day of month.  Range is 01 to 31
@YDAY // Current day of year.  Range is 1 to 366 (or 365 if not a leap year)
+
@Mon // Current month.  Range is 01 to 12
@YEAR // Current four-digit year.
+
@YDay // Current day of year.  Range is 1 to 366 (or 365 if not a leap year)
@TICKS // The number of ticks that represent the current date and time (A single tick represents one hundred nanoseconds or one ten-millionth of a second. There are 10,000 ticks in a millisecond.)
+
@Year // Current four-digit year.
@TIME // Get a 10 element array containing in this order; @MSEC, @SEC, @MIN, @HOUR, @WDAY, @MDAY, @MON, @YDAY, @YEAR, @TICKS
+
@Ticks // The number of ticks that represent the current date and time (A single tick represents one hundred nanoseconds or one ten-millionth of a second. There are 10,000 ticks in a millisecond.)
 +
@Time // Get a 10 element array containing in this order; $MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks
 
// Heres an example of how to use @Time to create a useable list :
 
// Heres an example of how to use @Time to create a useable list :
List ($MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks) = @TIME;
+
List ($MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks) = @Time;
 
println("MSec: " . $MSec);  
 
println("MSec: " . $MSec);  
 
println("Sec: " . $Sec);  
 
println("Sec: " . $Sec);  
Line 197: Line 337:
 
println("Year: " . $Year);  
 
println("Year: " . $Year);  
 
println("Ticks: " . $Ticks);
 
println("Ticks: " . $Ticks);
 +
// A simple easy to use formatted date/time
 +
my List ($MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks) = @Time;
 +
if ($Sec < 10)  { $Sec = "0$sec";  }
 +
if ($Min < 10)  { $Min = "0$min";  }
 +
if ($Hour < 10) { $Hour = "0$hour"; }
 +
if ($MDay < 10) { $MDay = "0$mday"; }
 +
if ($Mon < 10)  { $Mon = "0$Mon";  }
 +
my $Date = "$MDay-$Mon-$Year $Hour:$Min";
 +
echo $Date; // Prints 13-09-2013 20:44
 
</pre>
 
</pre>
  
=== Misc ===
+
=== Screen ===
  
 
<pre>
 
<pre>
@GUI // True or False if SputnikW is being run instead of Sputnik
+
@DesktopWidth // Current width of the desktop the program is running on.
@CONSOLEVISIBLE // True or False if Console window is visible
+
@DesktopHeight // Current height of the desktop the program is running on.
@COMPILED // True or False if the script is being run from a compiled exe instead of as a source file
+
@ERROR // Stores the state of the last error which can be useful to find out exactly what happened.
+
@CURRENCY // Stores the local currency symbol that the computer is using such as $ or £ etc.
+
@GROUP // Stores the amount of groups captured in the last regex match operation.
+
@DESKTOPWIDTH // Current width of the desktop the program is running on.
+
@DESKTOPHEIGHT // Current height of the desktop the program is running on.
+
@DOMAIN // The computers currently network domain name associated with current user.
+
@USER // The name of the user currently logged in to windows.
+
@MACHINENAME // Get NetBIOS name of this computer.
+
@TICKCOUNT // The number of miliseconds elapsed since the system started.
+
@INVALIDPATHCHARS // String of characters that are not allowed in path names.
+
@INVALIDFILENAMECHARS // String of characters that are not allowed in file names.
+
@VOLUMESEPARATORCHAR // Provides a platform-specific volume separator character.
+
@PATHSEPARATOR // A platform-specific separator character used to separate path strings in environment variables.
+
@DIRECTORYSEPARATORCHAR // Provides a platform-specific character used to separate directory levels in a path string that reflects a hierarchical file system organization.
+
@ALTDIRECTORYSEPARATORCHAR // Provides a platform-specific alternate character used to separate directory levels in a path string that reflects a hierarchical file system organization.
+
 
</pre>
 
</pre>
  
=== Links for use with GUILink() ===
+
=== System ===
  
 
<pre>
 
<pre>
@lLOAD
+
@IsLittleEndian // Indicates the byte order ("endianness") in which data is stored in this computer architecture
@lACTIVATED
+
@IsBigEndian // Indicates the byte order ("endianness") in which data is stored in this computer architecture
@lCLICK
+
@X86 // True Sputnik process is 32Bit
@lTEXTCHANGED
+
@X64 // True Sputnik process is 64Bit
@lMOUSECLICK
+
@Domain // The computers currently network domain name associated with current user.
@lMOUSEDOUBLECLICK
+
@User // The name of the user currently logged in to windows.
@lMOUSEDOWN
+
@MachineName // Get NetBIOS name of this computer.
@lMOUSEMOVE
+
</pre>
@lMOUSEUP
+
 
@lMOUSEWHEEL
+
=== Misc ===
@lMOUSEENTER
+
 
@lMOUSEHOVER
+
<pre>
@lMOUSELEAVE
+
@ARGV // Stores commandline arguments
@lLOSTFOCUS
+
@GUI // True or False if SputnikW is being run instead of Sputnik (No console available)
@lLEAVE
+
@ConsoleVisible // True or False if Console window is visible
@lKEYUP
+
@Compiled // True or False if the script is being run from a compiled exe instead of as a source file
@lKEYDOWN
+
@GUID // Generate a new globally unique identifier (GUID) (as a string)
@lKEYPRESS
+
@GUIDZero // A GUID with all its values zeroed to compare a new or existing @GUID with) (as a string)
@lGOTFOCUS
+
@GUIDBin // Generate a new globally unique identifier (GUID) (as binary)
@lDISPOSED
+
@GUIDZeroBin // A GUID with all its values zeroed to compare a new or existing @GUID with) (as binary)
@lTICKS
+
@Error // Stores the state of the last error which can be useful to find out exactly what happened.
@lDELETEDROW
+
@Currency // Stores the local currency symbol that the computer is using such as $ or £ etc.
@lDELETINGROW
+
@Groups // Stores the amount of groups captured in the last regex match operation.
@lCELLENDEDIT
+
@TickCount // The number of miliseconds elapsed since the current Sputnik started.
@lCELLBEGINEDIT
+
@lCHECKED
+
 
</pre>
 
</pre>
  
Line 269: Line 400:
  
 
<pre>
 
<pre>
@KeyNone
+
@KeyNone -----> Hex code of the key: 0x00000000
@KeyLButton
+
@KeyLButton -----> Hex code of the key: 0x00000001
@KeyRButton
+
@KeyRButton -----> Hex code of the key: 0x00000002
@KeyCancel
+
@KeyCancel -----> Hex code of the key: 0x00000003
@KeyMButton
+
@KeyMButton -----> Hex code of the key: 0x00000004
@KeyXButton1
+
@KeyXButton1 -----> Hex code of the key: 0x00000005
@KeyXButton2
+
@KeyXButton2 -----> Hex code of the key: 0x00000006
@KeyLButton
+
@KeyBack -----> Hex code of the key: 0x00000008
@KeyXButton2
+
@KeyTab -----> Hex code of the key: 0x00000009
@KeyBack
+
@KeyLineFeed -----> Hex code of the key: 0x0000000A
@KeyTab
+
@KeyClear -----> Hex code of the key: 0x0000000C
@KeyLineFeed
+
@KeyReturn -----> Hex code of the key: 0x0000000D
@KeyLButton
+
@KeyEnter -----> Hex code of the key: 0x0000000D
@KeyLineFeed
+
@KeyShiftKey -----> Hex code of the key: 0x00000010
@KeyClear
+
@KeyControlKey -----> Hex code of the key: 0x00000011
@KeyReturn
+
@KeyMenu -----> Hex code of the key: 0x00000012
@KeyRButton
+
@KeyPause -----> Hex code of the key: 0x00000013
@KeyClear
+
@KeyCapsLock -----> Hex code of the key: 0x00000014
@KeyRButton
+
@KeyCapital -----> Hex code of the key: 0x00000014
@KeyReturn
+
@KeyKanaMode -----> Hex code of the key: 0x00000015
@KeyShiftKey
+
@KeyHanguelMode -----> Hex code of the key: 0x00000015
@KeyControlKey
+
@KeyHangulMode -----> Hex code of the key: 0x00000015
@KeyMenu
+
@KeyJunjaMode -----> Hex code of the key: 0x00000017
@KeyPause
+
@KeyFinalMode -----> Hex code of the key: 0x00000018
@KeyCapital
+
@KeyKanjiMode -----> Hex code of the key: 0x00000019
@KeyKanaMode
+
@KeyHanjaMode -----> Hex code of the key: 0x00000019
@KeyRButton
+
@KeyEscape -----> Hex code of the key: 0x0000001B
@KeyCapital
+
@KeyIMEConvert -----> Hex code of the key: 0x0000001C
@KeyJunjaMode
+
@KeyIMENonconvert -----> Hex code of the key: 0x0000001D
@KeyFinalMode
+
@KeyIMEAceept -----> Hex code of the key: 0x0000001E
@KeyHanjaMode
+
@KeyIMEModeChange -----> Hex code of the key: 0x0000001F
@KeyRButton
+
@KeySpace -----> Hex code of the key: 0x00000020
@KeyFinalMode
+
@KeyPageUp -----> Hex code of the key: 0x00000021
@KeyEscape
+
@KeyPrior -----> Hex code of the key: 0x00000021
@KeyIMEConvert
+
@KeyPageDown -----> Hex code of the key: 0x00000022
@KeyIMENonconvert
+
@KeyNext -----> Hex code of the key: 0x00000022
@KeyIMEAceept
+
@KeyEnd -----> Hex code of the key: 0x00000023
@KeyIMEModeChange
+
@KeyHome -----> Hex code of the key: 0x00000024
@KeySpace
+
@KeyLeft -----> Hex code of the key: 0x00000025
@KeyPageUp
+
@KeyUp -----> Hex code of the key: 0x00000026
@KeyNext
+
@KeyRight -----> Hex code of the key: 0x00000027
@KeyEnd
+
@KeyDown -----> Hex code of the key: 0x00000028
@KeyHome
+
@KeySelect -----> Hex code of the key: 0x00000029
@KeyLeft
+
@KeyPrint -----> Hex code of the key: 0x0000002A
@KeyUp
+
@KeyExecute -----> Hex code of the key: 0x0000002B
@KeyRight
+
@KeyPrintScreen -----> Hex code of the key: 0x0000002C
@KeyDown
+
@KeySnapshot -----> Hex code of the key: 0x0000002C
@KeySelect
+
@KeyInsert -----> Hex code of the key: 0x0000002D
@KeyPrint
+
@KeyDelete -----> Hex code of the key: 0x0000002E
@KeyExecute
+
@KeyHelp -----> Hex code of the key: 0x0000002F
@KeyPrintScreen
+
@KeyD0 -----> Hex code of the key: 0x00000030
@KeyInsert
+
@KeyD1 -----> Hex code of the key: 0x00000031
@KeyDelete
+
@KeyD2 -----> Hex code of the key: 0x00000032
@KeyHelp
+
@KeyD3 -----> Hex code of the key: 0x00000033
@KeyD0
+
@KeyD4 -----> Hex code of the key: 0x00000034
@KeyD1
+
@KeyD5 -----> Hex code of the key: 0x00000035
@KeyD2
+
@KeyD6 -----> Hex code of the key: 0x00000036
@KeyD3
+
@KeyD7 -----> Hex code of the key: 0x00000037
@KeyD4
+
@KeyD8 -----> Hex code of the key: 0x00000038
@KeyD5
+
@KeyD9 -----> Hex code of the key: 0x00000039
@KeyD6
+
@KeyA -----> Hex code of the key: 0x00000041
@KeyD7
+
@KeyB -----> Hex code of the key: 0x00000042
@KeyD8
+
@KeyC -----> Hex code of the key: 0x00000043
@KeyD9
+
@KeyD -----> Hex code of the key: 0x00000044
@KeyRButton
+
@KeyE -----> Hex code of the key: 0x00000045
@KeyD8
+
@KeyF -----> Hex code of the key: 0x00000046
@KeyRButton
+
@KeyG -----> Hex code of the key: 0x00000047
@KeyD9
+
@KeyH -----> Hex code of the key: 0x00000048
@KeyMButton
+
@KeyI -----> Hex code of the key: 0x00000049
@KeyD8
+
@KeyJ -----> Hex code of the key: 0x0000004A
@KeyMButton
+
@KeyK -----> Hex code of the key: 0x0000004B
@KeyD9
+
@KeyL -----> Hex code of the key: 0x0000004C
@KeyXButton2
+
@KeyM -----> Hex code of the key: 0x0000004D
@KeyD8
+
@KeyN -----> Hex code of the key: 0x0000004E
@KeyXButton2
+
@KeyO -----> Hex code of the key: 0x0000004F
@KeyD9
+
@KeyP -----> Hex code of the key: 0x00000050
@Key64
+
@KeyQ -----> Hex code of the key: 0x00000051
@KeyA
+
@KeyR -----> Hex code of the key: 0x00000052
@KeyB
+
@KeyS -----> Hex code of the key: 0x00000053
@KeyC
+
@KeyT -----> Hex code of the key: 0x00000054
@KeyD
+
@KeyU -----> Hex code of the key: 0x00000055
@KeyE
+
@KeyV -----> Hex code of the key: 0x00000056
@KeyF
+
@KeyW -----> Hex code of the key: 0x00000057
@KeyG
+
@KeyX -----> Hex code of the key: 0x00000058
@KeyH
+
@KeyY -----> Hex code of the key: 0x00000059
@KeyI
+
@KeyZ -----> Hex code of the key: 0x0000005A
@KeyJ
+
@KeyLWin -----> Hex code of the key: 0x0000005B
@KeyK
+
@KeyRWin -----> Hex code of the key: 0x0000005C
@KeyL
+
@KeyApps -----> Hex code of the key: 0x0000005D
@KeyM
+
@KeyNumPad0 -----> Hex code of the key: 0x00000060
@KeyN
+
@KeyNumPad1 -----> Hex code of the key: 0x00000061
@KeyO
+
@KeyNumPad2 -----> Hex code of the key: 0x00000062
@KeyP
+
@KeyNumPad3 -----> Hex code of the key: 0x00000063
@KeyQ
+
@KeyNumPad4 -----> Hex code of the key: 0x00000064
@KeyR
+
@KeyNumPad5 -----> Hex code of the key: 0x00000065
@KeyS
+
@KeyNumPad6 -----> Hex code of the key: 0x00000066
@KeyT
+
@KeyNumPad7 -----> Hex code of the key: 0x00000067
@KeyU
+
@KeyNumPad8 -----> Hex code of the key: 0x00000068
@KeyV
+
@KeyNumPad9 -----> Hex code of the key: 0x00000069
@KeyW
+
@KeyMultiply -----> Hex code of the key: 0x0000006A
@KeyX
+
@KeyAdd -----> Hex code of the key: 0x0000006B
@KeyY
+
@KeySeparator -----> Hex code of the key: 0x0000006C
@KeyZ
+
@KeySubtract -----> Hex code of the key: 0x0000006D
@KeyLWin
+
@KeyDecimal -----> Hex code of the key: 0x0000006E
@KeyRWin
+
@KeyDivide -----> Hex code of the key: 0x0000006F
@KeyApps
+
@KeyF1 -----> Hex code of the key: 0x00000070
@KeyRButton
+
@KeyF2 -----> Hex code of the key: 0x00000071
@KeyRWin
+
@KeyF3 -----> Hex code of the key: 0x00000072
@KeySleep
+
@KeyF4 -----> Hex code of the key: 0x00000073
@KeyNumPad0
+
@KeyF5 -----> Hex code of the key: 0x00000074
@KeyNumPad1
+
@KeyF6 -----> Hex code of the key: 0x00000075
@KeyNumPad2
+
@KeyF7 -----> Hex code of the key: 0x00000076
@KeyNumPad3
+
@KeyF8 -----> Hex code of the key: 0x00000077
@KeyNumPad4
+
@KeyF9 -----> Hex code of the key: 0x00000078
@KeyNumPad5
+
@KeyF10 -----> Hex code of the key: 0x00000079
@KeyNumPad6
+
@KeyF11 -----> Hex code of the key: 0x0000007A
@KeyNumPad7
+
@KeyF12 -----> Hex code of the key: 0x0000007B
@KeyNumPad8
+
@KeyF13 -----> Hex code of the key: 0x0000007C
@KeyNumPad9
+
@KeyF14 -----> Hex code of the key: 0x0000007D
@KeyMultiply
+
@KeyF15 -----> Hex code of the key: 0x0000007E
@KeyAdd
+
@KeyF16 -----> Hex code of the key: 0x0000007F
@KeySeparator
+
@KeyF17 -----> Hex code of the key: 0x00000080
@KeySubtract
+
@KeyF18 -----> Hex code of the key: 0x00000081
@KeyDecimal
+
@KeyF19 -----> Hex code of the key: 0x00000082
@KeyDivide
+
@KeyF20 -----> Hex code of the key: 0x00000083
@KeyF1
+
@KeyF21 -----> Hex code of the key: 0x00000084
@KeyF2
+
@KeyF22 -----> Hex code of the key: 0x00000085
@KeyF3
+
@KeyF23 -----> Hex code of the key: 0x00000086
@KeyF4
+
@KeyF24 -----> Hex code of the key: 0x00000087
@KeyF5
+
@KeyNumLock -----> Hex code of the key: 0x00000090
@KeyF6
+
@KeyScroll -----> Hex code of the key: 0x00000091
@KeyF7
+
@KeyLShiftKey -----> Hex code of the key: 0x000000A0
@KeyF8
+
@KeyRShiftKey -----> Hex code of the key: 0x000000A1
@KeyF9
+
@KeyLControlKey -----> Hex code of the key: 0x000000A2
@KeyF10
+
@KeyRControlKey -----> Hex code of the key: 0x000000A3
@KeyF11
+
@KeyLMenu -----> Hex code of the key: 0x000000A4
@KeyF12
+
@KeyRMenu -----> Hex code of the key: 0x000000A5
@KeyF13
+
@KeyBrowserBack -----> Hex code of the key: 0x000000A6
@KeyF14
+
@KeyBrowserForward -----> Hex code of the key: 0x000000A7
@KeyF15
+
@KeyBrowserRefresh -----> Hex code of the key: 0x000000A8
@KeyF16
+
@KeyBrowserStop -----> Hex code of the key: 0x000000A9
@KeyF17
+
@KeyBrowserSearch -----> Hex code of the key: 0x000000AA
@KeyF18
+
@KeyBrowserFavorites -----> Hex code of the key: 0x000000AB
@KeyF19
+
@KeyBrowserHome -----> Hex code of the key: 0x000000AC
@KeyF20
+
@KeyVolumeMute -----> Hex code of the key: 0x000000AD
@KeyF21
+
@KeyVolumeDown -----> Hex code of the key: 0x000000AE
@KeyF22
+
@KeyVolumeUp -----> Hex code of the key: 0x000000AF
@KeyF23
+
@KeyMediaNextTrack -----> Hex code of the key: 0x000000B0
@KeyF24
+
@KeyMediaPreviousTrack -----> Hex code of the key: 0x000000B1
@KeyBack
+
@KeyMediaStop -----> Hex code of the key: 0x000000B2
@KeyF17
+
@KeyMediaPlayPause -----> Hex code of the key: 0x000000B3
@KeyBack
+
@KeyLaunchMail -----> Hex code of the key: 0x000000B4
@KeyF18
+
@KeySelectMedia -----> Hex code of the key: 0x000000B5
@KeyBack
+
@KeyLaunchApplication1 -----> Hex code of the key: 0x000000B6
@KeyF19
+
@KeyLaunchApplication2 -----> Hex code of the key: 0x000000B7
@KeyBack
+
@KeyOemSemicolon -----> Hex code of the key: 0x000000BA
@KeyF20
+
@KeyOemplus -----> Hex code of the key: 0x000000BB
@KeyBack
+
@KeyOemcomma -----> Hex code of the key: 0x000000BC
@KeyF21
+
@KeyOemMinus -----> Hex code of the key: 0x000000BD
@KeyBack
+
@KeyOemPeriod -----> Hex code of the key: 0x000000BE
@KeyF22
+
@KeyOemQuestion -----> Hex code of the key: 0x000000BF
@KeyBack
+
@KeyOemtilde -----> Hex code of the key: 0x000000C0
@KeyF23
+
@KeyOemOpenBrackets -----> Hex code of the key: 0x000000DB
@KeyBack
+
@KeyOemPipe -----> Hex code of the key: 0x000000DC
@KeyF24
+
@KeyOemCloseBrackets -----> Hex code of the key: 0x000000DD
@KeyNumLock
+
@KeyOemQuotes -----> Hex code of the key: 0x000000DE
@KeyScroll
+
@KeyOem8 -----> Hex code of the key: 0x000000DF
@KeyRButton
+
@KeyOemBackslash -----> Hex code of the key: 0x000000E2
@KeyNumLock
+
@KeyProcessKey -----> Hex code of the key: 0x000000E5
@KeyRButton
+
@KeyAttn -----> Hex code of the key: 0x000000F6
@KeyScroll
+
@KeyCrsel -----> Hex code of the key: 0x000000F7
@KeyMButton
+
@KeyExsel -----> Hex code of the key: 0x000000F8
@KeyNumLock
+
@KeyEraseEof -----> Hex code of the key: 0x000000F9
@KeyMButton
+
@KeyPlay -----> Hex code of the key: 0x000000FA
@KeyScroll
+
@KeyZoom -----> Hex code of the key: 0x000000FB
@KeyXButton2
+
@KeyNoName -----> Hex code of the key: 0x000000FC
@KeyNumLock
+
@KeyPa1 -----> Hex code of the key: 0x000000FD
@KeyXButton2
+
@KeyOemClear -----> Hex code of the key: 0x000000FE
@KeyScroll
+
@KeyKeyCode -----> Hex code of the key: 0x0000FFFF
@KeyBack
+
@KeyShift -----> Hex code of the key: 0x00010000
@KeyNumLock
+
@KeyControl -----> Hex code of the key: 0x00020000
@KeyBack
+
@KeyAlt -----> Hex code of the key: 0x00040000
@KeyScroll
+
@KeyModifiers -----> Hex code of the key: 0xFFFF0000
@KeyLineFeed
+
@KeyIMEAccept -----> Hex code of the key: 0x0000001E
@KeyNumLock
+
@KeyOem1 -----> Hex code of the key: 0x000000BA
@KeyLineFeed
+
@KeyOem102 -----> Hex code of the key: 0x000000E2
@KeyScroll
+
@KeyOem2 -----> Hex code of the key: 0x000000BF
@KeyClear
+
@KeyOem3 -----> Hex code of the key: 0x000000C0
@KeyNumLock
+
@KeyOem4 -----> Hex code of the key: 0x000000DB
@KeyClear
+
@KeyOem5 -----> Hex code of the key: 0x000000DC
@KeyScroll
+
@KeyOem6 -----> Hex code of the key: 0x000000DD
@KeyRButton
+
@KeyOem7 -----> Hex code of the key: 0x000000DE
@KeyClear
+
@KeyPacket -----> Hex code of the key: 0x000000E7
@KeyNumLock
+
@KeySleep -----> Hex code of the key: 0x0000005F
@KeyRButton
+
@KeyClear
+
@KeyScroll
+
@KeyLShiftKey
+
@KeyRShiftKey
+
@KeyLControlKey
+
@KeyRControlKey
+
@KeyLMenu
+
@KeyRMenu
+
@KeyBrowserBack
+
@KeyBrowserForward
+
@KeyBrowserRefresh
+
@KeyBrowserStop
+
@KeyBrowserSearch
+
@KeyBrowserFavorites
+
@KeyBrowserHome
+
@KeyVolumeMute
+
@KeyVolumeDown
+
@KeyVolumeUp
+
@KeyMediaNextTrack
+
@KeyMediaPreviousTrack
+
@KeyMediaStop
+
@KeyMediaPlayPause
+
@KeyLaunchMail
+
@KeySelectMedia
+
@KeyLaunchApplication1
+
@KeyLaunchApplication2
+
@KeyBack
+
@KeyMediaNextTrack
+
@KeyBack
+
@KeyMediaPreviousTrack
+
@KeyOem1
+
@KeyOemplus
+
@KeyOemcomma
+
@KeyOemMinus
+
@KeyOemPeriod
+
@KeyOemQuestion
+
@KeyOemtilde
+
@KeyLButton
+
@KeyOemtilde
+
@KeyRButton
+
@KeyOemtilde
+
@KeyCancel
+
@KeyOemtilde
+
@KeyMButton
+
@KeyOemtilde
+
@KeyXButton1
+
@KeyOemtilde
+
@KeyXButton2
+
@KeyOemtilde
+
@KeyLButton
+
@KeyXButton2
+
@KeyOemtilde
+
@KeyBack
+
@KeyOemtilde
+
@KeyTab
+
@KeyOemtilde
+
@KeyLineFeed
+
@KeyOemtilde
+
@KeyLButton
+
@KeyLineFeed
+
@KeyOemtilde
+
@KeyClear
+
@KeyOemtilde
+
@KeyReturn
+
@KeyOemtilde
+
@KeyRButton
+
@KeyClear
+
@KeyOemtilde
+
@KeyRButton
+
@KeyReturn
+
@KeyOemtilde
+
@KeyShiftKey
+
@KeyOemtilde
+
@KeyControlKey
+
@KeyOemtilde
+
@KeyMenu
+
@KeyOemtilde
+
@KeyPause
+
@KeyOemtilde
+
@KeyCapital
+
@KeyOemtilde
+
@KeyKanaMode
+
@KeyOemtilde
+
@KeyRButton
+
@KeyCapital
+
@KeyOemtilde
+
@KeyJunjaMode
+
@KeyOemtilde
+
@KeyFinalMode
+
@KeyOemtilde
+
@KeyHanjaMode
+
@KeyOemtilde
+
@KeyRButton
+
@KeyFinalMode
+
@KeyOemtilde
+
@KeyOemOpenBrackets
+
@KeyOem5
+
@KeyOem6
+
@KeyOem7
+
@KeyOem8
+
@KeySpace
+
@KeyOemtilde
+
@KeyPageUp
+
@KeyOemtilde
+
@KeyOemBackslash
+
@KeyLButton
+
@KeyOemBackslash
+
@KeyHome
+
@KeyOemtilde
+
@KeyProcessKey
+
@KeyMButton
+
@KeyOemBackslash
+
@KeyPacket
+
@KeyDown
+
@KeyOemtilde
+
@KeySelect
+
@KeyOemtilde
+
@KeyBack
+
@KeyOemBackslash
+
@KeyTab
+
@KeyOemBackslash
+
@KeyPrintScreen
+
@KeyOemtilde
+
@KeyBack
+
@KeyProcessKey
+
@KeyClear
+
@KeyOemBackslash
+
@KeyBack
+
@KeyPacket
+
@KeyD0
+
@KeyOemtilde
+
@KeyD1
+
@KeyOemtilde
+
@KeyShiftKey
+
@KeyOemBackslash
+
@KeyControlKey
+
@KeyOemBackslash
+
@KeyD4
+
@KeyOemtilde
+
@KeyShiftKey
+
@KeyProcessKey
+
@KeyAttn
+
@KeyCrsel
+
@KeyExsel
+
@KeyEraseEof
+
@KeyPlay
+
@KeyZoom
+
@KeyNoName
+
@KeyPa1
+
 
</pre>
 
</pre>
 
[[Category:Core Function]]
 

Latest revision as of 19:17, 18 September 2015

Contents

For Functions

@Args // Stores all arguments passed to a function allowing for unlimited arguments.
      // This only works happens if you have [Args("true")] adove the function

For Variables

Base type

[TYPE]		[@MACRO]
NULL		@typeNULL
BOOL		@typeBOOL
CHAR		@typeCHAR
BYTE		@typeBYTE
SBYTE		@typeSBYTE
INT16		@typeINT16
INT32		@typeINT32
INT64		@typeINT64
UINT16		@typeUINT16
UINT32		@typeUINT32
UINT64		@typeUINT64
FLOAT		@typeFLOAT
DOUBLE		@typeDOUBLE
STRING		@typeSTRING
BINARY		@typeBINARY
INTPTR		@typeINTPTR
UINTPTR		@typeUINTPTR
REFERENCE	@typeREFERENCE
ARRAY		@typeARRAY
OBJECT		@typeOBJECT
ERROR		@typeERROR

Object Type

[TYPE]		[@MACRO]
CLASS		@typeCLASS
FILE		@typeFILE
MYSQL		@typeMYSQL
MYSQLDATA	@typeMYSQLDATA
DLLSTRUCT	@typeDLLSTRUCT
OBJECT		@typeOBJ
SERVER		@typeSERVER
CLIENT		@typeCLIENT
GUIObject	@typeGUIObject
SOCKET		@typeSOCKET
FUNCTION	@typeFUNC
LINQ		@typeLINQ
ERROR		@typeERR

Variable Scope

[TYPE]		[@MACRO]
ANY		@scopeANY
GLOBAL		@scopeGLOBAL
LOCAL		@scopeLOCAL

Scope

[TYPE]		[@MACRO]
NONE		@scopeNONE
INTERP_INIT	@scopeINTERPINIT
STACK_INIT	@scopeSTACKINIT
BLOCK		@scopeBLOCK
FUNCTION	@scopeFUNCTION
MAX		@scopeMAX

Language Detection

@Lang // Return an array containing language information on the current OS
// Example:
// my List ($Name, $DisplayName, $EnglishName, $TwoLetterISO, $ThreeLetterISO, $LCID) = @Lang;

Directory/Path

@CommonFilesDir // Common Files folder
@WinDir // The directory of windows
@SysDir // The directory of windows system directory
@CurDir // The current working directory
@TempDir // The current system's temporary folder
@ExeDir // The directory of the Sputnik exe
@ScriptDir // The directory where the current script is at runtime
@FileCase // Returns TRUE if the file system is case insensitive
@InvalidPathChars // String of characters that are not allowed in path names.
@InvalidFilenameChars // String of characters that are not allowed in file names.
@VolumeSeparatorChar // Provides a platform-specific volume separator character.
@PathSeparator // A platform-specific separator character used to separate path strings in environment variables.
@DirectorySeparatorChar // Provides a platform-specific character used to separate directory levels in a path string that reflects a hierarchical file system organization.
@AltDirectorySeparatorChar // Provides a platform-specific alternate character used to separate directory levels in a path string that reflects a hierarchical file system organization.

Strings

@CRLF // @CR . @LF   ;Occasionally used for line breaks.
@LFCR // @LF . @CR   ;Stupidly used for line breaks.
@CR // Carriage return, Chr(13); sometimes used for line breaks.
@LF // Line feed, Chr(10); typically used for line breaks.
@NL // The newline that the current windows likes best.
@N // The newline or <BR> depending if Sputnik is #cgi or not
@VT // Vertical Tab, Chr(11); This character is rarely used.
@FF // Form Feed, Chr(12); This character is also known as "New Page".
@NBSP // No-Break Space, Chr(160)
      // The No-Break Space character is used to represent a space where
      // a line break is not allowed. It is often used in source code for
      // indentation. 
@Space // Normal Space, Chr(32)
@Tab // Tab character, Chr(9).

Character Sets

These are returned as a string if you wish to get an array you will need to split the string into an array of each character.

@Euro // The Euro Currency Sign; ChrW(8364)
@Number // 0123456789
@Digit // 0123456789
@Letter // abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
@LetterExt // This set includes all the letters which are part of the extended
           // characters in the first 256 characters (ANSI)
@AlphaNumeric // This set includes all the characters in @Letter and @Number
@Printable // This set includes all standard characters that can be printed
           // onscreen. This includes the characters from  Chr(32) to Chr(127)
           // and  Chr(160) (No-Break Space). The No-Break Space character was
           // included since it is often used in source code.
@PrintableExt // This set includes all the printable characters above Chr(127).
              // Although rarely used in programming languages, they could be
              // used, for instance, as valid characters in a string literal.
@Whitespace // This set includes all characters that are normally considered
            // whitespace and ignored by the parser. The set consists of the
            // Space, Horizontal  Tab, Line Feed, Vertical Tab, Form Feed,
            // Carriage Return and No-Break Space. 
@Controls // This set includes the characters from Chr(1) to Chr(31)
          // and from Chr(127) to Chr(159).
@AnsiMapped // This set contains the characters between Chr(128) and Chr(159)
            // that have different values in Unicode.
@AnsiPrintable // This set contains all printable characters available in ANSI.
               // Essentially, this is a union of @Printable@, @PrintableExt
               // and @ANSIMapped.
@AllValid // The {All Valid} character set contains every valid character
          // in the Basic Multilingual Plane of the Unicode Character Set.
          // This includes the characters from ChrW(1) to ChrW(55295) and
          // ChrW(56320) to ChrW(65519). 

Language Sets

@LatinExt // Latin Extended; ChrW(256) to ChrW(687)
@LatinExtAdd // Latin Extended Additional; ChrW(7680) to ChrW(7935)
@Greek // ChrW(880) to ChrW(1023)
@GreekExt // Greek Extended; ChrW(7936) to ChrW(8191)
@Cyrillic // ChrW(1024) to ChrW(1279)
@CyrillicSup // Cyrillic Supplementary; ChrW(1280) to ChrW(1327)
@Armenian // ChrW(1328) to ChrW(1423)
@Hebrew // ChrW(1424) to ChrW(1535)
@Arabic // ChrW(1536) to ChrW(1791)
@Syriac // ChrW(1792) to ChrW(1871)
@Thaana // ChrW(1920) to ChrW(1983)
@Devanagari // ChrW(2304) to ChrW(2431)
@Bengali // ChrW(2432) to ChrW(2559)
@Gurmukhi // ChrW(2560) to ChrW(2687)
@Gujarati // ChrW(2688) to ChrW(2815)
@Oriya // ChrW(2816) to ChrW(2943)
@Tamil // ChrW(2944) to ChrW(3071)
@Telugu // ChrW(3072) to ChrW(3199)
@Kannada // ChrW(3200) to ChrW(3327)
@Malayalam // ChrW(3328) to ChrW(3455)
@Sinhala // ChrW(3456) to ChrW(3583)
@Thai // ChrW(3584) to ChrW(3711)
@Lao // ChrW(3712) to ChrW(3839)
@Tibetan // ChrW(3840) to ChrW(4095)
@Myanmar // ChrW(4096) to ChrW(4255)
@Georgian // ChrW(4256) to ChrW(4351)
@Hangul Jamo // ChrW(4352) to ChrW(4607)
@Ethiopic // ChrW(4608) to ChrW(4991)
@Cherokee // ChrW(5024) to ChrW(5119)
@Ogham // ChrW(5760) to ChrW(5791)
@Runic // ChrW(5792) to ChrW(5887)
@Tagalog // ChrW(5888) to ChrW(5919)
@Hanunoo // ChrW(5920) to ChrW(5951)
@Buhid // ChrW(5952) to ChrW(5983)
@Tagbanwa // ChrW(5984) to ChrW(6015)
@Khmer // ChrW(6016) to ChrW(6143)
@Mongolian // ChrW(6144) to ChrW(6319)
@Kanbun // ChrW(12688) to ChrW(12703)
@Bopomofo // ChrW(12544) to ChrW(12591)
@BopomofoExt // Bopomofo Extended; ChrW(12704) to ChrW(12735)
@JapPunct // Japanese-style punctuation; ChrW(12288) to ChrW(12351)
@JapRomKat // Full-width Roman characters and half-width Katakana; ChrW(65280) to ChrW(65519)
@Hiragana // ChrW(12352) to ChrW(12447)
@Katakana // ChrW(12448) to ChrW(12543)
@Kanji // CJK unifed ideographs - Common and uncommon Kanji; ChrW(19968) to ChrW(40879)

Math

@PI // Mathematical constant that is the ratio of any circle's circumference to its diameter
@TwoPI // A value specifying the approximation of 2π which is 360 degrees
@E // Represents the natural logarithmic base, specified by the constant, e.
@LOG2E // Log(@E, 2) = 1.4426950408889634074
@LOG10E // Log10(@E) = 0.43429448190325182765
@LN2 // Log(2) = 0.69314718055994530942
@LN10 // Log(10) = 2.30258509299404568402
@PI2 // @PI/2 = 1.57079632679489661923
@PI4 // @PI/4 = 0.78539816339744830962
@1PI // 1/@PI = 0.31830988618379067154
@2PI // 2/@PI = 0.63661977236758134308
@SQRTPI // Sqrt(@PI) = 1.77245385090551602729
@2SQRTPI // 2/Sqrt(@PI) = 1.12837916709551257390
@SQRT2 // Sqrt(2) = 1.4142135623731
@SQRT3 // Sqrt(3) = 1.73205080756887729352
@1SQRT2 // 1/Sqrt(2) = 0.70710678118654752440
@LNPI // Log(@PI) = 1.14472988584940017414
@Euler // Euler constant = 0.57721566490153286061
@ZeroTolerance // The value for which all absolute numbers smaller than are considered equal to zero

Variable Limits etc

@CharMin // Represents the smallest possible value of a unicode character
@CharMax // Represents the largest possible value of a unicode character
@ByteMin // Represents the smallest possible value of a unsigned 8-bit integer
@ByteMax // Represents the largest possible value of a unsigned 8-bit integer
@SByteMin // Represents the smallest possible value of a signed 8-bit integer
@SByteMax // Represents the largest possible value of a signed 8-bit integer
@UshortMin // Represents the smallest possible value of a unsigned 16-bit integer
@UshortMax // Represents the largest possible value of a unsigned 16-bit integer
@Uint16Min // Represents the smallest possible value of a unsigned 16-bit integer
@Uint16Max // Represents the largest possible value of a unsigned 16-bit integer
@UintMin // Represents the smallest possible value of a unsigned 32-bit integer
@UintMax // Represents the largest possible value of a unsigned 32-bit integer
@Uint32Min // Represents the smallest possible value of a unsigned 32-bit integer
@Uint32Max // Represents the largest possible value of a unsigned 32-bit integer
@UlongMin // Represents the smallest possible value of a unsigned 64-bit integer
@UlongMax // Represents the largest possible value of a unsigned 64-bit integer
@Uint64Min // Represents the smallest possible value of a unsigned 64-bit integer
@Uint64Max // Represents the largest possible value of a unsigned 64-bit integer
@ShortMin // Represents the smallest possible value of a signed 16-bit integer
@ShortMax // Represents the largest possible value of a signed 16-bit integer
@Int16Min // Represents the smallest possible value of a signed 16-bit integer
@Int16Max // Represents the largest possible value of a signed 16-bit integer
@IntMin // Represents the smallest possible value of a signed 32-bit integer
@IntMax // Represents the largest possible value of a signed 32-bit integer
@Int32Min // Represents the smallest possible value of a signed 32-bit integer
@Int32Max // Represents the largest possible value of a signed 32-bit integer
@LongMin // Represents the smallest possible value of a signed 64-bit integer
@LongMax // Represents the largest possible value of a signed 64-bit integer
@Int64Min // Represents the smallest possible value of a signed 64-bit integer
@Int64Max // Represents the largest possible value of a signed 64-bit integer
@DoublePosinf // Represents positive infinity
@DoubleNeginf // Represents negative infinity
@DoubleNan // Represents (Not a number) NaN
@DoubleMin // Represents the smallest possible value of a float
@DoubleMax // Represents the largest possible value of a float
@Double_epsilon // Represents the smallest positive double value greater than zero
@FloatPosinf // Represents positive infinity
@FloatNeginf // Represents negative infinity
@FloatNan // Represents (Not a number) NaN
@FloatMin // Represents the smallest possible value of a float
@FloatMax // Represents the largest possible value of a float
@FloatEpsilon // Represents the smallest positive float value greater than zero

Variable size etc

Useful for use with memory functions

// Pointers (Pointers will either be 32-bit or 64-bit
// depending on which Sputnik is using however as long as
// these macros are used your functions will continue to work
// regardless if using 32 or 64 bit Sputnik.
@PTRSize // Represents the size in bytes of pointers
@PTRZero // Represents a pointer or handle that has been initialized to zero
@UPTRSize // Represents the size in bytes of unsigned pointers
@UPTRZero // Represents an unsigned pointer or handle that has been initialized to zero
// Others
@CharSize // Represents the size in bytes of a char
@BoolSize // Represents the size in bytes of a boolean
@ByteSize // Represents the size in bytes of a byte
@SByteSize // Represents the size in bytes of a sbyte (signed byte)
@Int16Size // Represents the size in bytes of an int16
@Int32Size // Represents the size in bytes of an int32
@Int64Size // Represents the size in bytes of an int64
@UInt16Size // Represents the size in bytes of an uint16
@UInt32Size // Represents the size in bytes of an uint32
@UInt64Size // Represents the size in bytes of an uint64
@FloatSize // Represents the size in bytes of an float
@DoubleSize // Represents the size in bytes of an double
// Characters
@ACSize // Represents the size in bytes an ASCII string character
@UCSize // Represents the size in bytes a Sputnik string character (UTF8)

Date & Time

@Epoch // Returns the current time measured in the number of seconds since the Unix Epoch
       // (January 1 1970 00:00:00 GMT).
@MSec // Milliseconds value of clock.  Range is 00 to 999
@Sec // Seconds value of clock.  Range is 00 to 59
@Min // Minutes value of clock.  Range is 00 to 59
@Hour // Hours value of clock in 24-hour format.  Range is 00 to 23
@WDay // Numeric day of week.  Range is 1 to 7 which corresponds to Sunday through Saturday
@MDay // Current day of month.  Range is 01 to 31
@Mon // Current month.  Range is 01 to 12
@YDay // Current day of year.  Range is 1 to 366 (or 365 if not a leap year)
@Year // Current four-digit year.
@Ticks // The number of ticks that represent the current date and time (A single tick represents one hundred nanoseconds or one ten-millionth of a second. There are 10,000 ticks in a millisecond.)
@Time // Get a 10 element array containing in this order; $MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks
// Heres an example of how to use @Time to create a useable list :
List ($MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks) = @Time;
println("MSec: " . $MSec); 
println("Sec: " . $Sec); 
println("Min: " . $Min); 
println("Hour: " . $Hour); 
println("WDay: " . $WDay); 
println("MDay: " . $MDay); 
println("Mon: " . $Mon); 
println("YDay: " . $YDay); 
println("Year: " . $Year); 
println("Ticks: " . $Ticks);
// A simple easy to use formatted date/time
my List ($MSec, $Sec, $Min, $Hour, $WDay, $MDay, $Mon, $YDay, $Year, $Ticks) = @Time;
if ($Sec < 10)  { $Sec = "0$sec";   }
if ($Min < 10)  { $Min = "0$min";   }
if ($Hour < 10) { $Hour = "0$hour"; }
if ($MDay < 10) { $MDay = "0$mday"; }
if ($Mon < 10)  { $Mon = "0$Mon";  }
my $Date = "$MDay-$Mon-$Year $Hour:$Min";
echo $Date; // Prints 13-09-2013 20:44

Screen

@DesktopWidth // Current width of the desktop the program is running on.
@DesktopHeight // Current height of the desktop the program is running on.

System

@IsLittleEndian // Indicates the byte order ("endianness") in which data is stored in this computer architecture
@IsBigEndian // Indicates the byte order ("endianness") in which data is stored in this computer architecture
@X86 // True Sputnik process is 32Bit
@X64 // True Sputnik process is 64Bit
@Domain // The computers currently network domain name associated with current user.
@User // The name of the user currently logged in to windows.
@MachineName // Get NetBIOS name of this computer.

Misc

@ARGV // Stores commandline arguments
@GUI // True or False if SputnikW is being run instead of Sputnik (No console available)
@ConsoleVisible // True or False if Console window is visible
@Compiled // True or False if the script is being run from a compiled exe instead of as a source file
@GUID // Generate a new globally unique identifier (GUID) (as a string)
@GUIDZero // A GUID with all its values zeroed to compare a new or existing @GUID with) (as a string)
@GUIDBin // Generate a new globally unique identifier (GUID) (as binary)
@GUIDZeroBin // A GUID with all its values zeroed to compare a new or existing @GUID with) (as binary)
@Error // Stores the state of the last error which can be useful to find out exactly what happened.
@Currency // Stores the local currency symbol that the computer is using such as $ or £ etc.
@Groups // Stores the amount of groups captured in the last regex match operation.
@TickCount // The number of miliseconds elapsed since the current Sputnik started.

Mouse Key Constants for use with GUILink etc

@MouseNone
@MouseLeft
@MouseMiddle
@MouseRight
@MouseXButton1
@MouseXButton2

Key Constants for use with many things (Bascially equal to VirtualKey Codes)

This are often used to check the $arg on GUI key pressing events however it could also be used with APIs such as GetKeyState()

@KeyNone -----> Hex code of the key: 0x00000000
@KeyLButton -----> Hex code of the key: 0x00000001
@KeyRButton -----> Hex code of the key: 0x00000002
@KeyCancel -----> Hex code of the key: 0x00000003
@KeyMButton -----> Hex code of the key: 0x00000004
@KeyXButton1 -----> Hex code of the key: 0x00000005
@KeyXButton2 -----> Hex code of the key: 0x00000006
@KeyBack -----> Hex code of the key: 0x00000008
@KeyTab -----> Hex code of the key: 0x00000009
@KeyLineFeed -----> Hex code of the key: 0x0000000A
@KeyClear -----> Hex code of the key: 0x0000000C
@KeyReturn -----> Hex code of the key: 0x0000000D
@KeyEnter -----> Hex code of the key: 0x0000000D
@KeyShiftKey -----> Hex code of the key: 0x00000010
@KeyControlKey -----> Hex code of the key: 0x00000011
@KeyMenu -----> Hex code of the key: 0x00000012
@KeyPause -----> Hex code of the key: 0x00000013
@KeyCapsLock -----> Hex code of the key: 0x00000014
@KeyCapital -----> Hex code of the key: 0x00000014
@KeyKanaMode -----> Hex code of the key: 0x00000015
@KeyHanguelMode -----> Hex code of the key: 0x00000015
@KeyHangulMode -----> Hex code of the key: 0x00000015
@KeyJunjaMode -----> Hex code of the key: 0x00000017
@KeyFinalMode -----> Hex code of the key: 0x00000018
@KeyKanjiMode -----> Hex code of the key: 0x00000019
@KeyHanjaMode -----> Hex code of the key: 0x00000019
@KeyEscape -----> Hex code of the key: 0x0000001B
@KeyIMEConvert -----> Hex code of the key: 0x0000001C
@KeyIMENonconvert -----> Hex code of the key: 0x0000001D
@KeyIMEAceept -----> Hex code of the key: 0x0000001E
@KeyIMEModeChange -----> Hex code of the key: 0x0000001F
@KeySpace -----> Hex code of the key: 0x00000020
@KeyPageUp -----> Hex code of the key: 0x00000021
@KeyPrior -----> Hex code of the key: 0x00000021
@KeyPageDown -----> Hex code of the key: 0x00000022
@KeyNext -----> Hex code of the key: 0x00000022
@KeyEnd -----> Hex code of the key: 0x00000023
@KeyHome -----> Hex code of the key: 0x00000024
@KeyLeft -----> Hex code of the key: 0x00000025
@KeyUp -----> Hex code of the key: 0x00000026
@KeyRight -----> Hex code of the key: 0x00000027
@KeyDown -----> Hex code of the key: 0x00000028
@KeySelect -----> Hex code of the key: 0x00000029
@KeyPrint -----> Hex code of the key: 0x0000002A
@KeyExecute -----> Hex code of the key: 0x0000002B
@KeyPrintScreen -----> Hex code of the key: 0x0000002C
@KeySnapshot -----> Hex code of the key: 0x0000002C
@KeyInsert -----> Hex code of the key: 0x0000002D
@KeyDelete -----> Hex code of the key: 0x0000002E
@KeyHelp -----> Hex code of the key: 0x0000002F
@KeyD0 -----> Hex code of the key: 0x00000030
@KeyD1 -----> Hex code of the key: 0x00000031
@KeyD2 -----> Hex code of the key: 0x00000032
@KeyD3 -----> Hex code of the key: 0x00000033
@KeyD4 -----> Hex code of the key: 0x00000034
@KeyD5 -----> Hex code of the key: 0x00000035
@KeyD6 -----> Hex code of the key: 0x00000036
@KeyD7 -----> Hex code of the key: 0x00000037
@KeyD8 -----> Hex code of the key: 0x00000038
@KeyD9 -----> Hex code of the key: 0x00000039
@KeyA -----> Hex code of the key: 0x00000041
@KeyB -----> Hex code of the key: 0x00000042
@KeyC -----> Hex code of the key: 0x00000043
@KeyD -----> Hex code of the key: 0x00000044
@KeyE -----> Hex code of the key: 0x00000045
@KeyF -----> Hex code of the key: 0x00000046
@KeyG -----> Hex code of the key: 0x00000047
@KeyH -----> Hex code of the key: 0x00000048
@KeyI -----> Hex code of the key: 0x00000049
@KeyJ -----> Hex code of the key: 0x0000004A
@KeyK -----> Hex code of the key: 0x0000004B
@KeyL -----> Hex code of the key: 0x0000004C
@KeyM -----> Hex code of the key: 0x0000004D
@KeyN -----> Hex code of the key: 0x0000004E
@KeyO -----> Hex code of the key: 0x0000004F
@KeyP -----> Hex code of the key: 0x00000050
@KeyQ -----> Hex code of the key: 0x00000051
@KeyR -----> Hex code of the key: 0x00000052
@KeyS -----> Hex code of the key: 0x00000053
@KeyT -----> Hex code of the key: 0x00000054
@KeyU -----> Hex code of the key: 0x00000055
@KeyV -----> Hex code of the key: 0x00000056
@KeyW -----> Hex code of the key: 0x00000057
@KeyX -----> Hex code of the key: 0x00000058
@KeyY -----> Hex code of the key: 0x00000059
@KeyZ -----> Hex code of the key: 0x0000005A
@KeyLWin -----> Hex code of the key: 0x0000005B
@KeyRWin -----> Hex code of the key: 0x0000005C
@KeyApps -----> Hex code of the key: 0x0000005D
@KeyNumPad0 -----> Hex code of the key: 0x00000060
@KeyNumPad1 -----> Hex code of the key: 0x00000061
@KeyNumPad2 -----> Hex code of the key: 0x00000062
@KeyNumPad3 -----> Hex code of the key: 0x00000063
@KeyNumPad4 -----> Hex code of the key: 0x00000064
@KeyNumPad5 -----> Hex code of the key: 0x00000065
@KeyNumPad6 -----> Hex code of the key: 0x00000066
@KeyNumPad7 -----> Hex code of the key: 0x00000067
@KeyNumPad8 -----> Hex code of the key: 0x00000068
@KeyNumPad9 -----> Hex code of the key: 0x00000069
@KeyMultiply -----> Hex code of the key: 0x0000006A
@KeyAdd -----> Hex code of the key: 0x0000006B
@KeySeparator -----> Hex code of the key: 0x0000006C
@KeySubtract -----> Hex code of the key: 0x0000006D
@KeyDecimal -----> Hex code of the key: 0x0000006E
@KeyDivide -----> Hex code of the key: 0x0000006F
@KeyF1 -----> Hex code of the key: 0x00000070
@KeyF2 -----> Hex code of the key: 0x00000071
@KeyF3 -----> Hex code of the key: 0x00000072
@KeyF4 -----> Hex code of the key: 0x00000073
@KeyF5 -----> Hex code of the key: 0x00000074
@KeyF6 -----> Hex code of the key: 0x00000075
@KeyF7 -----> Hex code of the key: 0x00000076
@KeyF8 -----> Hex code of the key: 0x00000077
@KeyF9 -----> Hex code of the key: 0x00000078
@KeyF10 -----> Hex code of the key: 0x00000079
@KeyF11 -----> Hex code of the key: 0x0000007A
@KeyF12 -----> Hex code of the key: 0x0000007B
@KeyF13 -----> Hex code of the key: 0x0000007C
@KeyF14 -----> Hex code of the key: 0x0000007D
@KeyF15 -----> Hex code of the key: 0x0000007E
@KeyF16 -----> Hex code of the key: 0x0000007F
@KeyF17 -----> Hex code of the key: 0x00000080
@KeyF18 -----> Hex code of the key: 0x00000081
@KeyF19 -----> Hex code of the key: 0x00000082
@KeyF20 -----> Hex code of the key: 0x00000083
@KeyF21 -----> Hex code of the key: 0x00000084
@KeyF22 -----> Hex code of the key: 0x00000085
@KeyF23 -----> Hex code of the key: 0x00000086
@KeyF24 -----> Hex code of the key: 0x00000087
@KeyNumLock -----> Hex code of the key: 0x00000090
@KeyScroll -----> Hex code of the key: 0x00000091
@KeyLShiftKey -----> Hex code of the key: 0x000000A0
@KeyRShiftKey -----> Hex code of the key: 0x000000A1
@KeyLControlKey -----> Hex code of the key: 0x000000A2
@KeyRControlKey -----> Hex code of the key: 0x000000A3
@KeyLMenu -----> Hex code of the key: 0x000000A4
@KeyRMenu -----> Hex code of the key: 0x000000A5
@KeyBrowserBack -----> Hex code of the key: 0x000000A6
@KeyBrowserForward -----> Hex code of the key: 0x000000A7
@KeyBrowserRefresh -----> Hex code of the key: 0x000000A8
@KeyBrowserStop -----> Hex code of the key: 0x000000A9
@KeyBrowserSearch -----> Hex code of the key: 0x000000AA
@KeyBrowserFavorites -----> Hex code of the key: 0x000000AB
@KeyBrowserHome -----> Hex code of the key: 0x000000AC
@KeyVolumeMute -----> Hex code of the key: 0x000000AD
@KeyVolumeDown -----> Hex code of the key: 0x000000AE
@KeyVolumeUp -----> Hex code of the key: 0x000000AF
@KeyMediaNextTrack -----> Hex code of the key: 0x000000B0
@KeyMediaPreviousTrack -----> Hex code of the key: 0x000000B1
@KeyMediaStop -----> Hex code of the key: 0x000000B2
@KeyMediaPlayPause -----> Hex code of the key: 0x000000B3
@KeyLaunchMail -----> Hex code of the key: 0x000000B4
@KeySelectMedia -----> Hex code of the key: 0x000000B5
@KeyLaunchApplication1 -----> Hex code of the key: 0x000000B6
@KeyLaunchApplication2 -----> Hex code of the key: 0x000000B7
@KeyOemSemicolon -----> Hex code of the key: 0x000000BA
@KeyOemplus -----> Hex code of the key: 0x000000BB
@KeyOemcomma -----> Hex code of the key: 0x000000BC
@KeyOemMinus -----> Hex code of the key: 0x000000BD
@KeyOemPeriod -----> Hex code of the key: 0x000000BE
@KeyOemQuestion -----> Hex code of the key: 0x000000BF
@KeyOemtilde -----> Hex code of the key: 0x000000C0
@KeyOemOpenBrackets -----> Hex code of the key: 0x000000DB
@KeyOemPipe -----> Hex code of the key: 0x000000DC
@KeyOemCloseBrackets -----> Hex code of the key: 0x000000DD
@KeyOemQuotes -----> Hex code of the key: 0x000000DE
@KeyOem8 -----> Hex code of the key: 0x000000DF
@KeyOemBackslash -----> Hex code of the key: 0x000000E2
@KeyProcessKey -----> Hex code of the key: 0x000000E5
@KeyAttn -----> Hex code of the key: 0x000000F6
@KeyCrsel -----> Hex code of the key: 0x000000F7
@KeyExsel -----> Hex code of the key: 0x000000F8
@KeyEraseEof -----> Hex code of the key: 0x000000F9
@KeyPlay -----> Hex code of the key: 0x000000FA
@KeyZoom -----> Hex code of the key: 0x000000FB
@KeyNoName -----> Hex code of the key: 0x000000FC
@KeyPa1 -----> Hex code of the key: 0x000000FD
@KeyOemClear -----> Hex code of the key: 0x000000FE
@KeyKeyCode -----> Hex code of the key: 0x0000FFFF
@KeyShift -----> Hex code of the key: 0x00010000
@KeyControl -----> Hex code of the key: 0x00020000
@KeyAlt -----> Hex code of the key: 0x00040000
@KeyModifiers -----> Hex code of the key: 0xFFFF0000
@KeyIMEAccept -----> Hex code of the key: 0x0000001E
@KeyOem1 -----> Hex code of the key: 0x000000BA
@KeyOem102 -----> Hex code of the key: 0x000000E2
@KeyOem2 -----> Hex code of the key: 0x000000BF
@KeyOem3 -----> Hex code of the key: 0x000000C0
@KeyOem4 -----> Hex code of the key: 0x000000DB
@KeyOem5 -----> Hex code of the key: 0x000000DC
@KeyOem6 -----> Hex code of the key: 0x000000DD
@KeyOem7 -----> Hex code of the key: 0x000000DE
@KeyPacket -----> Hex code of the key: 0x000000E7
@KeySleep -----> Hex code of the key: 0x0000005F
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox