Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #RequireAdmin
- Global Const $FW_DONTCARE = 0
- Global Const $FW_THIN = 100
- Global Const $FW_EXTRALIGHT = 200
- Global Const $FW_ULTRALIGHT = 200
- Global Const $FW_LIGHT = 300
- Global Const $FW_NORMAL = 400
- Global Const $FW_REGULAR = 400
- Global Const $FW_MEDIUM = 500
- Global Const $FW_SEMIBOLD = 600
- Global Const $FW_DEMIBOLD = 600
- Global Const $FW_BOLD = 700
- Global Const $FW_EXTRABOLD = 800
- Global Const $FW_ULTRABOLD = 800
- Global Const $FW_HEAVY = 900
- Global Const $FW_BLACK = 900
- Global Const $CF_EFFECTS = 256
- Global Const $CF_PRINTERFONTS = 2
- Global Const $CF_SCREENFONTS = 1
- Global Const $CF_NOSCRIPTSEL = 8388608
- Global Const $CF_INITTOLOGFONTSTRUCT = 64
- Global Const $LOGPIXELSX = 88
- Global Const $LOGPIXELSY = 90
- Global Const $ANSI_CHARSET = 0
- Global Const $BALTIC_CHARSET = 186
- Global Const $CHINESEBIG5_CHARSET = 136
- Global Const $DEFAULT_CHARSET = 1
- Global Const $EASTEUROPE_CHARSET = 238
- Global Const $GB2312_CHARSET = 134
- Global Const $GREEK_CHARSET = 161
- Global Const $HANGEUL_CHARSET = 129
- Global Const $MAC_CHARSET = 77
- Global Const $OEM_CHARSET = 255
- Global Const $RUSSIAN_CHARSET = 204
- Global Const $SHIFTJIS_CHARSET = 128
- Global Const $SYMBOL_CHARSET = 2
- Global Const $TURKISH_CHARSET = 162
- Global Const $VIETNAMESE_CHARSET = 163
- Global Const $OUT_CHARACTER_PRECIS = 2
- Global Const $OUT_DEFAULT_PRECIS = 0
- Global Const $OUT_DEVICE_PRECIS = 5
- Global Const $OUT_OUTLINE_PRECIS = 8
- Global Const $OUT_PS_ONLY_PRECIS = 10
- Global Const $OUT_RASTER_PRECIS = 6
- Global Const $OUT_STRING_PRECIS = 1
- Global Const $OUT_STROKE_PRECIS = 3
- Global Const $OUT_TT_ONLY_PRECIS = 7
- Global Const $OUT_TT_PRECIS = 4
- Global Const $CLIP_CHARACTER_PRECIS = 1
- Global Const $CLIP_DEFAULT_PRECIS = 0
- Global Const $CLIP_EMBEDDED = 128
- Global Const $CLIP_LH_ANGLES = 16
- Global Const $CLIP_MASK = 15
- Global Const $CLIP_STROKE_PRECIS = 2
- Global Const $CLIP_TT_ALWAYS = 32
- Global Const $ANTIALIASED_QUALITY = 4
- Global Const $DEFAULT_QUALITY = 0
- Global Const $DRAFT_QUALITY = 1
- Global Const $NONANTIALIASED_QUALITY = 3
- Global Const $PROOF_QUALITY = 2
- Global Const $DEFAULT_PITCH = 0
- Global Const $FIXED_PITCH = 1
- Global Const $VARIABLE_PITCH = 2
- Global Const $FF_DECORATIVE = 80
- Global Const $FF_DONTCARE = 0
- Global Const $FF_MODERN = 48
- Global Const $FF_ROMAN = 16
- Global Const $FF_SCRIPT = 64
- Global Const $FF_SWISS = 32
- Global Const $TAGPOINT = "struct;long X;long Y;endstruct"
- Global Const $TAGRECT = "struct;long Left;long Top;long Right;long Bottom;endstruct"
- Global Const $TAGSIZE = "struct;long X;long Y;endstruct"
- Global Const $TAGMARGINS = "int cxLeftWidth;int cxRightWidth;int cyTopHeight;int cyBottomHeight"
- Global Const $TAGFILETIME = "struct;dword Lo;dword Hi;endstruct"
- Global Const $TAGSYSTEMTIME = "struct;word Year;word Month;word Dow;word Day;word Hour;word Minute;word Second;word MSeconds;endstruct"
- Global Const $TAGTIME_ZONE_INFORMATION = "struct;long Bias;wchar StdName[32];word StdDate[8];long StdBias;wchar DayName[32];word DayDate[8];long DayBias;endstruct"
- Global Const $TAGNMHDR = "struct;hwnd hWndFrom;uint_ptr IDFrom;INT Code;endstruct"
- Global Const $TAGCOMBOBOXEXITEM = "uint Mask;int_ptr Item;ptr Text;int TextMax;int Image;int SelectedImage;int OverlayImage;" & "int Indent;lparam Param"
- Global Const $TAGNMCBEDRAGBEGIN = $TAGNMHDR & ";int ItemID;wchar szText[260]"
- Global Const $TAGNMCBEENDEDIT = $TAGNMHDR & ";bool fChanged;int NewSelection;wchar szText[260];int Why"
- Global Const $TAGNMCOMBOBOXEX = $TAGNMHDR & ";uint Mask;int_ptr Item;ptr Text;int TextMax;int Image;" & "int SelectedImage;int OverlayImage;int Indent;lparam Param"
- Global Const $TAGDTPRANGE = "word MinYear;word MinMonth;word MinDOW;word MinDay;word MinHour;word MinMinute;" & "word MinSecond;word MinMSecond;word MaxYear;word MaxMonth;word MaxDOW;word MaxDay;word MaxHour;" & "word MaxMinute;word MaxSecond;word MaxMSecond;bool MinValid;bool MaxValid"
- Global Const $TAGNMDATETIMECHANGE = $TAGNMHDR & ";dword Flag;" & $TAGSYSTEMTIME
- Global Const $TAGNMDATETIMEFORMAT = $TAGNMHDR & ";ptr Format;" & $TAGSYSTEMTIME & ";ptr pDisplay;wchar Display[64]"
- Global Const $TAGNMDATETIMEFORMATQUERY = $TAGNMHDR & ";ptr Format;struct;long SizeX;long SizeY;endstruct"
- Global Const $TAGNMDATETIMEKEYDOWN = $TAGNMHDR & ";int VirtKey;ptr Format;" & $TAGSYSTEMTIME
- Global Const $TAGNMDATETIMESTRING = $TAGNMHDR & ";ptr UserString;" & $TAGSYSTEMTIME & ";dword Flags"
- Global Const $TAGEVENTLOGRECORD = "dword Length;dword Reserved;dword RecordNumber;dword TimeGenerated;dword TimeWritten;dword EventID;" & "word EventType;word NumStrings;word EventCategory;word ReservedFlags;dword ClosingRecordNumber;dword StringOffset;" & "dword UserSidLength;dword UserSidOffset;dword DataLength;dword DataOffset"
- Global Const $TAGGDIPBITMAPDATA = "uint Width;uint Height;int Stride;int Format;ptr Scan0;uint_ptr Reserved"
- Global Const $TAGGDIPENCODERPARAM = "byte GUID[16];ulong Count;ulong Type;ptr Values"
- Global Const $TAGGDIPENCODERPARAMS = "uint Count;byte Params[1]"
- Global Const $TAGGDIPRECTF = "float X;float Y;float Width;float Height"
- Global Const $TAGGDIPSTARTUPINPUT = "uint Version;ptr Callback;bool NoThread;bool NoCodecs"
- Global Const $TAGGDIPSTARTUPOUTPUT = "ptr HookProc;ptr UnhookProc"
- Global Const $TAGGDIPIMAGECODECINFO = "byte CLSID[16];byte FormatID[16];ptr CodecName;ptr DllName;ptr FormatDesc;ptr FileExt;" & "ptr MimeType;dword Flags;dword Version;dword SigCount;dword SigSize;ptr SigPattern;ptr SigMask"
- Global Const $TAGGDIPPENCODERPARAMS = "uint Count;byte Params[1]"
- Global Const $TAGHDITEM = "uint Mask;int XY;ptr Text;handle hBMP;int TextMax;int Fmt;lparam Param;int Image;int Order;uint Type;ptr pFilter;uint State"
- Global Const $TAGNMHDDISPINFO = $TAGNMHDR & ";int Item;uint Mask;ptr Text;int TextMax;int Image;lparam lParam"
- Global Const $TAGNMHDFILTERBTNCLICK = $TAGNMHDR & ";int Item;" & $TAGRECT
- Global Const $TAGNMHEADER = $TAGNMHDR & ";int Item;int Button;ptr pItem"
- Global Const $TAGGETIPADDRESS = "byte Field4;byte Field3;byte Field2;byte Field1"
- Global Const $TAGNMIPADDRESS = $TAGNMHDR & ";int Field;int Value"
- Global Const $TAGLVFINDINFO = "struct;uint Flags;ptr Text;lparam Param;" & $TAGPOINT & ";uint Direction;endstruct"
- Global Const $TAGLVHITTESTINFO = $TAGPOINT & ";uint Flags;int Item;int SubItem;int iGroup"
- Global Const $TAGLVITEM = "struct;uint Mask;int Item;int SubItem;uint State;uint StateMask;ptr Text;int TextMax;int Image;lparam Param;" & "int Indent;int GroupID;uint Columns;ptr pColumns;ptr piColFmt;int iGroup;endstruct"
- Global Const $TAGNMLISTVIEW = $TAGNMHDR & ";int Item;int SubItem;uint NewState;uint OldState;uint Changed;" & "struct;long ActionX;long ActionY;endstruct;lparam Param"
- Global Const $TAGNMLVCUSTOMDRAW = "struct;" & $TAGNMHDR & ";dword dwDrawStage;handle hdc;" & $TAGRECT & ";dword_ptr dwItemSpec;uint uItemState;lparam lItemlParam;endstruct" & ";dword clrText;dword clrTextBk;int iSubItem;dword dwItemType;dword clrFace;int iIconEffect;" & "int iIconPhase;int iPartId;int iStateId;struct;long TextLeft;long TextTop;long TextRight;long TextBottom;endstruct;uint uAlign"
- Global Const $TAGNMLVDISPINFO = $TAGNMHDR & ";" & $TAGLVITEM
- Global Const $TAGNMLVFINDITEM = $TAGNMHDR & ";int Start;" & $TAGLVFINDINFO
- Global Const $TAGNMLVGETINFOTIP = $TAGNMHDR & ";dword Flags;ptr Text;int TextMax;int Item;int SubItem;lparam lParam"
- Global Const $TAGNMITEMACTIVATE = $TAGNMHDR & ";int Index;int SubItem;uint NewState;uint OldState;uint Changed;" & $TAGPOINT & ";lparam lParam;uint KeyFlags"
- Global Const $TAGNMLVKEYDOWN = "align 1;" & $TAGNMHDR & ";word VKey;uint Flags"
- Global Const $TAGNMLVSCROLL = $TAGNMHDR & ";int DX;int DY"
- Global Const $TAGMCHITTESTINFO = "uint Size;" & $TAGPOINT & ";uint Hit;" & $TAGSYSTEMTIME & ";" & $TAGRECT & ";int iOffset;int iRow;int iCol"
- Global Const $TAGMCMONTHRANGE = "word MinYear;word MinMonth;word MinDOW;word MinDay;word MinHour;word MinMinute;word MinSecond;" & "word MinMSeconds;word MaxYear;word MaxMonth;word MaxDOW;word MaxDay;word MaxHour;word MaxMinute;word MaxSecond;" & "word MaxMSeconds;short Span"
- Global Const $TAGMCRANGE = "word MinYear;word MinMonth;word MinDOW;word MinDay;word MinHour;word MinMinute;word MinSecond;" & "word MinMSeconds;word MaxYear;word MaxMonth;word MaxDOW;word MaxDay;word MaxHour;word MaxMinute;word MaxSecond;" & "word MaxMSeconds;short MinSet;short MaxSet"
- Global Const $TAGMCSELRANGE = "word MinYear;word MinMonth;word MinDOW;word MinDay;word MinHour;word MinMinute;word MinSecond;" & "word MinMSeconds;word MaxYear;word MaxMonth;word MaxDOW;word MaxDay;word MaxHour;word MaxMinute;word MaxSecond;" & "word MaxMSeconds"
- Global Const $TAGNMDAYSTATE = $TAGNMHDR & ";" & $TAGSYSTEMTIME & ";int DayState;ptr pDayState"
- Global Const $TAGNMSELCHANGE = $TAGNMHDR & ";struct;word BegYear;word BegMonth;word BegDOW;word BegDay;word BegHour;word BegMinute;word BegSecond;word BegMSeconds;endstruct;" & "struct;word EndYear;word EndMonth;word EndDOW;word EndDay;word EndHour;word EndMinute;word EndSecond;word EndMSeconds;endstruct"
- Global Const $TAGNMOBJECTNOTIFY = $TAGNMHDR & ";int Item;ptr piid;ptr pObject;long Result;dword dwFlags"
- Global Const $TAGNMTCKEYDOWN = "align 1;" & $TAGNMHDR & ";word VKey;uint Flags"
- Global Const $TAGTVITEM = "struct;uint Mask;handle hItem;uint State;uint StateMask;ptr Text;int TextMax;int Image;int SelectedImage;" & "int Children;lparam Param;endstruct"
- Global Const $TAGTVITEMEX = "struct;" & $TAGTVITEM & ";int Integral;uint uStateEx;hwnd hwnd;int iExpandedImage;int iReserved;endstruct"
- Global Const $TAGNMTREEVIEW = $TAGNMHDR & ";uint Action;" & "struct;uint OldMask;handle OldhItem;uint OldState;uint OldStateMask;" & "ptr OldText;int OldTextMax;int OldImage;int OldSelectedImage;int OldChildren;lparam OldParam;endstruct;" & "struct;uint NewMask;handle NewhItem;uint NewState;uint NewStateMask;" & "ptr NewText;int NewTextMax;int NewImage;int NewSelectedImage;int NewChildren;lparam NewParam;endstruct;" & "struct;long PointX;long PointY;endstruct"
- Global Const $TAGNMTVCUSTOMDRAW = "struct;" & $TAGNMHDR & ";dword DrawStage;handle HDC;" & $TAGRECT & ";dword_ptr ItemSpec;uint ItemState;lparam ItemParam;endstruct" & ";dword ClrText;dword ClrTextBk;int Level"
- Global Const $TAGNMTVDISPINFO = $TAGNMHDR & ";" & $TAGTVITEM
- Global Const $TAGNMTVGETINFOTIP = $TAGNMHDR & ";ptr Text;int TextMax;handle hItem;lparam lParam"
- Global Const $TAGTVHITTESTINFO = $TAGPOINT & ";uint Flags;handle Item"
- Global Const $TAGNMTVKEYDOWN = "align 1;" & $TAGNMHDR & ";word VKey;uint Flags"
- Global Const $TAGNMMOUSE = $TAGNMHDR & ";dword_ptr ItemSpec;dword_ptr ItemData;" & $TAGPOINT & ";lparam HitInfo"
- Global Const $TAGTOKEN_PRIVILEGES = "dword Count;align 4;int64 LUID;dword Attributes"
- Global Const $TAGIMAGEINFO = "handle hBitmap;handle hMask;int Unused1;int Unused2;" & $TAGRECT
- Global Const $TAGMENUINFO = "dword Size;INT Mask;dword Style;uint YMax;handle hBack;dword ContextHelpID;ulong_ptr MenuData"
- Global Const $TAGMENUITEMINFO = "uint Size;uint Mask;uint Type;uint State;uint ID;handle SubMenu;handle BmpChecked;handle BmpUnchecked;" & "ulong_ptr ItemData;ptr TypeData;uint CCH;handle BmpItem"
- Global Const $TAGREBARBANDINFO = "uint cbSize;uint fMask;uint fStyle;dword clrFore;dword clrBack;ptr lpText;uint cch;" & "int iImage;hwnd hwndChild;uint cxMinChild;uint cyMinChild;uint cx;handle hbmBack;uint wID;uint cyChild;uint cyMaxChild;" & "uint cyIntegral;uint cxIdeal;lparam lParam;uint cxHeader;" & $TAGRECT & ";uint uChevronState"
- Global Const $TAGNMREBARAUTOBREAK = $TAGNMHDR & ";uint uBand;uint wID;lparam lParam;uint uMsg;uint fStyleCurrent;bool fAutoBreak"
- Global Const $TAGNMRBAUTOSIZE = $TAGNMHDR & ";bool fChanged;" & "struct;long TargetLeft;long TargetTop;long TargetRight;long TargetBottom;endstruct;" & "struct;long ActualLeft;long ActualTop;long ActualRight;long ActualBottom;endstruct"
- Global Const $TAGNMREBAR = $TAGNMHDR & ";dword dwMask;uint uBand;uint fStyle;uint wID;lparam lParam"
- Global Const $TAGNMREBARCHEVRON = $TAGNMHDR & ";uint uBand;uint wID;lparam lParam;" & $TAGRECT & ";lparam lParamNM"
- Global Const $TAGNMREBARCHILDSIZE = $TAGNMHDR & ";uint uBand;uint wID;" & "struct;long CLeft;long CTop;long CRight;long CBottom;endstruct;" & "struct;long BLeft;long BTop;long BRight;long BBottom;endstruct"
- Global Const $TAGCOLORSCHEME = "dword Size;dword BtnHighlight;dword BtnShadow"
- Global Const $TAGNMTOOLBAR = $TAGNMHDR & ";int iItem;" & "struct;int iBitmap;int idCommand;byte fsState;byte fsStyle;dword_ptr dwData;int_ptr iString;endstruct" & ";int cchText;ptr pszText;" & $TAGRECT
- Global Const $TAGNMTBHOTITEM = $TAGNMHDR & ";int idOld;int idNew;dword dwFlags"
- Global Const $TAGTBBUTTON = "int Bitmap;int Command;byte State;byte Style;align;dword_ptr Param;int_ptr String"
- Global Const $TAGTBBUTTONINFO = "uint Size;dword Mask;int Command;int Image;byte State;byte Style;word CX;dword_ptr Param;ptr Text;int TextMax"
- Global Const $TAGNETRESOURCE = "dword Scope;dword Type;dword DisplayType;dword Usage;ptr LocalName;ptr RemoteName;ptr Comment;ptr Provider"
- Global Const $TAGOVERLAPPED = "ulong_ptr Internal;ulong_ptr InternalHigh;struct;dword Offset;dword OffsetHigh;endstruct;handle hEvent"
- Global Const $TAGOPENFILENAME = "dword StructSize;hwnd hwndOwner;handle hInstance;ptr lpstrFilter;ptr lpstrCustomFilter;" & "dword nMaxCustFilter;dword nFilterIndex;ptr lpstrFile;dword nMaxFile;ptr lpstrFileTitle;dword nMaxFileTitle;" & "ptr lpstrInitialDir;ptr lpstrTitle;dword Flags;word nFileOffset;word nFileExtension;ptr lpstrDefExt;lparam lCustData;" & "ptr lpfnHook;ptr lpTemplateName;ptr pvReserved;dword dwReserved;dword FlagsEx"
- Global Const $TAGBITMAPINFO = "struct;dword Size;long Width;long Height;word Planes;word BitCount;dword Compression;dword SizeImage;" & "long XPelsPerMeter;long YPelsPerMeter;dword ClrUsed;dword ClrImportant;endstruct;dword RGBQuad"
- Global Const $TAGBLENDFUNCTION = "byte Op;byte Flags;byte Alpha;byte Format"
- Global Const $TAGGUID = "ulong Data1;ushort Data2;ushort Data3;byte Data4[8]"
- Global Const $TAGWINDOWPLACEMENT = "uint length;uint flags;uint showCmd;long ptMinPosition[2];long ptMaxPosition[2];long rcNormalPosition[4]"
- Global Const $TAGWINDOWPOS = "hwnd hWnd;hwnd InsertAfter;int X;int Y;int CX;int CY;uint Flags"
- Global Const $TAGSCROLLINFO = "uint cbSize;uint fMask;int nMin;int nMax;uint nPage;int nPos;int nTrackPos"
- Global Const $TAGSCROLLBARINFO = "dword cbSize;" & $TAGRECT & ";int dxyLineButton;int xyThumbTop;" & "int xyThumbBottom;int reserved;dword rgstate[6]"
- Global Const $TAGLOGFONT = "long Height;long Width;long Escapement;long Orientation;long Weight;byte Italic;byte Underline;" & "byte Strikeout;byte CharSet;byte OutPrecision;byte ClipPrecision;byte Quality;byte PitchAndFamily;wchar FaceName[32]"
- Global Const $TAGKBDLLHOOKSTRUCT = "dword vkCode;dword scanCode;dword flags;dword time;ulong_ptr dwExtraInfo"
- Global Const $TAGPROCESS_INFORMATION = "handle hProcess;handle hThread;dword ProcessID;dword ThreadID"
- Global Const $TAGSTARTUPINFO = "dword Size;ptr Reserved1;ptr Desktop;ptr Title;dword X;dword Y;dword XSize;dword YSize;dword XCountChars;" & "dword YCountChars;dword FillAttribute;dword Flags;word ShowWindow;word Reserved2;ptr Reserved3;handle StdInput;" & "handle StdOutput;handle StdError"
- Global Const $TAGSECURITY_ATTRIBUTES = "dword Length;ptr Descriptor;bool InheritHandle"
- Global Const $TAGWIN32_FIND_DATA = "dword dwFileAttributes;dword ftCreationTime[2];dword ftLastAccessTime[2];dword ftLastWriteTime[2];dword nFileSizeHigh;dword nFileSizeLow;dword dwReserved0;dword dwReserved1;wchar cFileName[260];wchar cAlternateFileName[14]"
- Global Const $TAGTEXTMETRIC = "long tmHeight;long tmAscent;long tmDescent;long tmInternalLeading;long tmExternalLeading;" & "long tmAveCharWidth;long tmMaxCharWidth;long tmWeight;long tmOverhang;long tmDigitizedAspectX;long tmDigitizedAspectY;" & "wchar tmFirstChar;wchar tmLastChar;wchar tmDefaultChar;wchar tmBreakChar;byte tmItalic;byte tmUnderlined;byte tmStruckOut;" & "byte tmPitchAndFamily;byte tmCharSet"
- Func _WinAPI_GetLastError($CURERR = @error, $CUREXT = @extended)
- Local $ARESULT = DllCall("kernel32.dll", "dword", "GetLastError")
- Return SetError($CURERR, $CUREXT, $ARESULT[0])
- EndFunc
- Func _WinAPI_SetLastError($IERRCODE, $CURERR = @error, $CUREXT = @extended)
- DllCall("kernel32.dll", "none", "SetLastError", "dword", $IERRCODE)
- Return SetError($CURERR, $CUREXT)
- EndFunc
- Global Const $__MISCCONSTANT_CC_ANYCOLOR = 256
- Global Const $__MISCCONSTANT_CC_FULLOPEN = 2
- Global Const $__MISCCONSTANT_CC_RGBINIT = 1
- Global Const $TAGCHOOSECOLOR = "dword Size;hwnd hWndOwnder;handle hInstance;dword rgbResult;ptr CustColors;dword Flags;lparam lCustData;" & "ptr lpfnHook;ptr lpTemplateName"
- Global Const $TAGCHOOSEFONT = "dword Size;hwnd hWndOwner;handle hDC;ptr LogFont;int PointSize;dword Flags;dword rgbColors;lparam CustData;" & "ptr fnHook;ptr TemplateName;handle hInstance;ptr szStyle;word FontType;int SizeMin;int SizeMax"
- Func _ChooseColor($IRETURNTYPE = 0, $ICOLORREF = 0, $IREFTYPE = 0, $HWNDOWNDER = 0)
- Local $CUSTCOLORS = "dword[16]"
- Local $TCHOOSE = DllStructCreate($TAGCHOOSECOLOR)
- Local $TCC = DllStructCreate($CUSTCOLORS)
- If $IREFTYPE = 1 Then
- $ICOLORREF = Int($ICOLORREF)
- ElseIf $IREFTYPE = 2 Then
- $ICOLORREF = Hex(String($ICOLORREF), 6)
- $ICOLORREF = "0x" & StringMid($ICOLORREF, 5, 2) & StringMid($ICOLORREF, 3, 2) & StringMid($ICOLORREF, 1, 2)
- EndIf
- DllStructSetData($TCHOOSE, "Size", DllStructGetSize($TCHOOSE))
- DllStructSetData($TCHOOSE, "hWndOwnder", $HWNDOWNDER)
- DllStructSetData($TCHOOSE, "rgbResult", $ICOLORREF)
- DllStructSetData($TCHOOSE, "CustColors", DllStructGetPtr($TCC))
- DllStructSetData($TCHOOSE, "Flags", BitOR($__MISCCONSTANT_CC_ANYCOLOR, $__MISCCONSTANT_CC_FULLOPEN, $__MISCCONSTANT_CC_RGBINIT))
- Local $ARESULT = DllCall("comdlg32.dll", "bool", "ChooseColor", "struct*", $TCHOOSE)
- If @error Then Return SetError(@error, @extended, -1)
- If $ARESULT[0] = 0 Then Return SetError(-3, -3, -1)
- Local $COLOR_PICKED = DllStructGetData($TCHOOSE, "rgbResult")
- If $IRETURNTYPE = 1 Then
- Return "0x" & Hex(String($COLOR_PICKED), 6)
- ElseIf $IRETURNTYPE = 2 Then
- $COLOR_PICKED = Hex(String($COLOR_PICKED), 6)
- Return "0x" & StringMid($COLOR_PICKED, 5, 2) & StringMid($COLOR_PICKED, 3, 2) & StringMid($COLOR_PICKED, 1, 2)
- ElseIf $IRETURNTYPE = 0 Then
- Return $COLOR_PICKED
- Else
- Return SetError(-4, -4, -1)
- EndIf
- EndFunc
- Func _ChooseFont($SFONTNAME = "Courier New", $IPOINTSIZE = 10, $ICOLORREF = 0, $IFONTWEIGHT = 0, $IITALIC = False, $IUNDERLINE = False, $ISTRIKETHRU = False, $HWNDOWNER = 0)
- Local $ITALIC = 0, $UNDERLINE = 0, $STRIKEOUT = 0
- Local $LNGDC = __MISC_GETDC(0)
- Local $LFHEIGHT = Round(($IPOINTSIZE * __MISC_GETDEVICECAPS($LNGDC, $LOGPIXELSX)) / 72, 0)
- __MISC_RELEASEDC(0, $LNGDC)
- Local $TCHOOSEFONT = DllStructCreate($TAGCHOOSEFONT)
- Local $TLOGFONT = DllStructCreate($TAGLOGFONT)
- DllStructSetData($TCHOOSEFONT, "Size", DllStructGetSize($TCHOOSEFONT))
- DllStructSetData($TCHOOSEFONT, "hWndOwner", $HWNDOWNER)
- DllStructSetData($TCHOOSEFONT, "LogFont", DllStructGetPtr($TLOGFONT))
- DllStructSetData($TCHOOSEFONT, "PointSize", $IPOINTSIZE)
- DllStructSetData($TCHOOSEFONT, "Flags", BitOR($CF_SCREENFONTS, $CF_PRINTERFONTS, $CF_EFFECTS, $CF_INITTOLOGFONTSTRUCT, $CF_NOSCRIPTSEL))
- DllStructSetData($TCHOOSEFONT, "rgbColors", $ICOLORREF)
- DllStructSetData($TCHOOSEFONT, "FontType", 0)
- DllStructSetData($TLOGFONT, "Height", $LFHEIGHT)
- DllStructSetData($TLOGFONT, "Weight", $IFONTWEIGHT)
- DllStructSetData($TLOGFONT, "Italic", $IITALIC)
- DllStructSetData($TLOGFONT, "Underline", $IUNDERLINE)
- DllStructSetData($TLOGFONT, "Strikeout", $ISTRIKETHRU)
- DllStructSetData($TLOGFONT, "FaceName", $SFONTNAME)
- Local $ARESULT = DllCall("comdlg32.dll", "bool", "ChooseFontW", "struct*", $TCHOOSEFONT)
- If @error Then Return SetError(@error, @extended, -1)
- If $ARESULT[0] = 0 Then Return SetError(-3, -3, -1)
- Local $FONTNAME = DllStructGetData($TLOGFONT, "FaceName")
- If StringLen($FONTNAME) = 0 And StringLen($SFONTNAME) > 0 Then $FONTNAME = $SFONTNAME
- If DllStructGetData($TLOGFONT, "Italic") Then $ITALIC = 2
- If DllStructGetData($TLOGFONT, "Underline") Then $UNDERLINE = 4
- If DllStructGetData($TLOGFONT, "Strikeout") Then $STRIKEOUT = 8
- Local $ATTRIBUTES = BitOR($ITALIC, $UNDERLINE, $STRIKEOUT)
- Local $SIZE = DllStructGetData($TCHOOSEFONT, "PointSize") / 10
- Local $COLORREF = DllStructGetData($TCHOOSEFONT, "rgbColors")
- Local $WEIGHT = DllStructGetData($TLOGFONT, "Weight")
- Local $COLOR_PICKED = Hex(String($COLORREF), 6)
- Return StringSplit($ATTRIBUTES & "," & $FONTNAME & "," & $SIZE & "," & $WEIGHT & "," & $COLORREF & "," & "0x" & $COLOR_PICKED & "," & "0x" & StringMid($COLOR_PICKED, 5, 2) & StringMid($COLOR_PICKED, 3, 2) & StringMid($COLOR_PICKED, 1, 2), ",")
- EndFunc
- Func _ClipPutFile($SFILE, $SSEPARATOR = "|")
- Local Const $GMEM_MOVEABLE = 2, $CF_HDROP = 15
- $SFILE &= $SSEPARATOR & $SSEPARATOR
- Local $NGLOBMEMSIZE = 2 * (StringLen($SFILE) + 20)
- Local $ARESULT = DllCall("user32.dll", "bool", "OpenClipboard", "hwnd", 0)
- If @error Or $ARESULT[0] = 0 Then Return SetError(1, _WinAPI_GetLastError(), False)
- Local $IERROR = 0, $ILASTERROR = 0
- $ARESULT = DllCall("user32.dll", "bool", "EmptyClipboard")
- If @error Or Not $ARESULT[0] Then
- $IERROR = 2
- $ILASTERROR = _WinAPI_GetLastError()
- Else
- $ARESULT = DllCall("kernel32.dll", "handle", "GlobalAlloc", "uint", $GMEM_MOVEABLE, "ulong_ptr", $NGLOBMEMSIZE)
- If @error Or Not $ARESULT[0] Then
- $IERROR = 3
- $ILASTERROR = _WinAPI_GetLastError()
- Else
- Local $HGLOBAL = $ARESULT[0]
- $ARESULT = DllCall("kernel32.dll", "ptr", "GlobalLock", "handle", $HGLOBAL)
- If @error Or Not $ARESULT[0] Then
- $IERROR = 4
- $ILASTERROR = _WinAPI_GetLastError()
- Else
- Local $HLOCK = $ARESULT[0]
- Local $DROPFILES = DllStructCreate("dword pFiles;" & $TAGPOINT & ";bool fNC;bool fWide;wchar[" & StringLen($SFILE) + 1 & "]", $HLOCK)
- If @error Then Return SetError(5, 6, False)
- Local $TEMPSTRUCT = DllStructCreate("dword;long;long;bool;bool")
- DllStructSetData($DROPFILES, "pFiles", DllStructGetSize($TEMPSTRUCT))
- DllStructSetData($DROPFILES, "X", 0)
- DllStructSetData($DROPFILES, "Y", 0)
- DllStructSetData($DROPFILES, "fNC", 0)
- DllStructSetData($DROPFILES, "fWide", 1)
- DllStructSetData($DROPFILES, 6, $SFILE)
- For $I = 1 To StringLen($SFILE)
- If DllStructGetData($DROPFILES, 6, $I) = $SSEPARATOR Then DllStructSetData($DROPFILES, 6, Chr(0), $I)
- Next
- $ARESULT = DllCall("user32.dll", "handle", "SetClipboardData", "uint", $CF_HDROP, "handle", $HGLOBAL)
- If @error Or Not $ARESULT[0] Then
- $IERROR = 6
- $ILASTERROR = _WinAPI_GetLastError()
- EndIf
- $ARESULT = DllCall("kernel32.dll", "bool", "GlobalUnlock", "handle", $HGLOBAL)
- If (@error Or Not $ARESULT[0]) And Not $IERROR And _WinAPI_GetLastError() Then
- $IERROR = 8
- $ILASTERROR = _WinAPI_GetLastError()
- EndIf
- EndIf
- $ARESULT = DllCall("kernel32.dll", "ptr", "GlobalFree", "handle", $HGLOBAL)
- If (@error Or $ARESULT[0]) And Not $IERROR Then
- $IERROR = 9
- $ILASTERROR = _WinAPI_GetLastError()
- EndIf
- EndIf
- EndIf
- $ARESULT = DllCall("user32.dll", "bool", "CloseClipboard")
- If (@error Or Not $ARESULT[0]) And Not $IERROR Then Return SetError(7, _WinAPI_GetLastError(), False)
- If $IERROR Then Return SetError($IERROR, $ILASTERROR, False)
- Return True
- EndFunc
- Func _Iif($FTEST, $VTRUEVAL, $VFALSEVAL)
- If $FTEST Then
- Return $VTRUEVAL
- Else
- Return $VFALSEVAL
- EndIf
- EndFunc
- Func _MouseTrap($ILEFT = 0, $ITOP = 0, $IRIGHT = 0, $IBOTTOM = 0)
- Local $ARESULT
- If @NumParams == 0 Then
- $ARESULT = DllCall("user32.dll", "bool", "ClipCursor", "ptr", 0)
- If @error Or Not $ARESULT[0] Then Return SetError(1, _WinAPI_GetLastError(), False)
- Else
- If @NumParams == 2 Then
- $IRIGHT = $ILEFT + 1
- $IBOTTOM = $ITOP + 1
- EndIf
- Local $TRECT = DllStructCreate($TAGRECT)
- DllStructSetData($TRECT, "Left", $ILEFT)
- DllStructSetData($TRECT, "Top", $ITOP)
- DllStructSetData($TRECT, "Right", $IRIGHT)
- DllStructSetData($TRECT, "Bottom", $IBOTTOM)
- $ARESULT = DllCall("user32.dll", "bool", "ClipCursor", "struct*", $TRECT)
- If @error Or Not $ARESULT[0] Then Return SetError(2, _WinAPI_GetLastError(), False)
- EndIf
- Return True
- EndFunc
- Func _Singleton($SOCCURENCENAME, $IFLAG = 0)
- Local Const $ERROR_ALREADY_EXISTS = 183
- Local Const $SECURITY_DESCRIPTOR_REVISION = 1
- Local $TSECURITYATTRIBUTES = 0
- If BitAND($IFLAG, 2) Then
- Local $TSECURITYDESCRIPTOR = DllStructCreate("byte;byte;word;ptr[4]")
- Local $ARET = DllCall("advapi32.dll", "bool", "InitializeSecurityDescriptor", "struct*", $TSECURITYDESCRIPTOR, "dword", $SECURITY_DESCRIPTOR_REVISION)
- If @error Then Return SetError(@error, @extended, 0)
- If $ARET[0] Then
- $ARET = DllCall("advapi32.dll", "bool", "SetSecurityDescriptorDacl", "struct*", $TSECURITYDESCRIPTOR, "bool", 1, "ptr", 0, "bool", 0)
- If @error Then Return SetError(@error, @extended, 0)
- If $ARET[0] Then
- $TSECURITYATTRIBUTES = DllStructCreate($TAGSECURITY_ATTRIBUTES)
- DllStructSetData($TSECURITYATTRIBUTES, 1, DllStructGetSize($TSECURITYATTRIBUTES))
- DllStructSetData($TSECURITYATTRIBUTES, 2, DllStructGetPtr($TSECURITYDESCRIPTOR))
- DllStructSetData($TSECURITYATTRIBUTES, 3, 0)
- EndIf
- EndIf
- EndIf
- Local $HANDLE = DllCall("kernel32.dll", "handle", "CreateMutexW", "struct*", $TSECURITYATTRIBUTES, "bool", 1, "wstr", $SOCCURENCENAME)
- If @error Then Return SetError(@error, @extended, 0)
- Local $LASTERROR = DllCall("kernel32.dll", "dword", "GetLastError")
- If @error Then Return SetError(@error, @extended, 0)
- If $LASTERROR[0] = $ERROR_ALREADY_EXISTS Then
- If BitAND($IFLAG, 1) Then
- Return SetError($LASTERROR[0], $LASTERROR[0], 0)
- Else
- Exit -1
- EndIf
- EndIf
- Return $HANDLE[0]
- EndFunc
- Func _IsPressed($SHEXKEY, $VDLL = "user32.dll")
- Local $A_R = DllCall($VDLL, "short", "GetAsyncKeyState", "int", "0x" & $SHEXKEY)
- If @error Then Return SetError(@error, @extended, False)
- Return BitAND($A_R[0], 32768) <> 0
- EndFunc
- Func _VersionCompare($SVERSION1, $SVERSION2)
- If $SVERSION1 = $SVERSION2 Then Return 0
- Local $SEP = "."
- If StringInStr($SVERSION1, $SEP) = 0 Then $SEP = ","
- Local $AVERSION1 = StringSplit($SVERSION1, $SEP)
- Local $AVERSION2 = StringSplit($SVERSION2, $SEP)
- If UBound($AVERSION1) <> UBound($AVERSION2) Or UBound($AVERSION1) = 0 Then
- SetExtended(1)
- If $SVERSION1 > $SVERSION2 Then
- Return 1
- ElseIf $SVERSION1 < $SVERSION2 Then
- Return -1
- EndIf
- Else
- For $I = 1 To UBound($AVERSION1) - 1
- If StringIsDigit($AVERSION1[$I]) And StringIsDigit($AVERSION2[$I]) Then
- If Number($AVERSION1[$I]) > Number($AVERSION2[$I]) Then
- Return 1
- ElseIf Number($AVERSION1[$I]) < Number($AVERSION2[$I]) Then
- Return -1
- EndIf
- Else
- SetExtended(1)
- If $AVERSION1[$I] > $AVERSION2[$I] Then
- Return 1
- ElseIf $AVERSION1[$I] < $AVERSION2[$I] Then
- Return -1
- EndIf
- EndIf
- Next
- EndIf
- Return SetError(2, 0, 0)
- EndFunc
- Func __MISC_GETDC($HWND)
- Local $ARESULT = DllCall("User32.dll", "handle", "GetDC", "hwnd", $HWND)
- If @error Or Not $ARESULT[0] Then Return SetError(1, _WinAPI_GetLastError(), 0)
- Return $ARESULT[0]
- EndFunc
- Func __MISC_GETDEVICECAPS($HDC, $IINDEX)
- Local $ARESULT = DllCall("GDI32.dll", "int", "GetDeviceCaps", "handle", $HDC, "int", $IINDEX)
- If @error Then Return SetError(@error, @extended, 0)
- Return $ARESULT[0]
- EndFunc
- Func __MISC_RELEASEDC($HWND, $HDC)
- Local $ARESULT = DllCall("User32.dll", "int", "ReleaseDC", "hwnd", $HWND, "handle", $HDC)
- If @error Then Return SetError(@error, @extended, False)
- Return $ARESULT[0] <> 0
- EndFunc
- #region includes
- Global $SHISON = 0
- Global Const $BS_GROUPBOX = 7
- Global Const $BS_BOTTOM = 2048
- Global Const $BS_CENTER = 768
- Global Const $BS_DEFPUSHBUTTON = 1
- Global Const $BS_LEFT = 256
- Global Const $BS_MULTILINE = 8192
- Global Const $BS_PUSHBOX = 10
- Global Const $BS_PUSHLIKE = 4096
- Global Const $BS_RIGHT = 512
- Global Const $BS_RIGHTBUTTON = 32
- Global Const $BS_TOP = 1024
- Global Const $BS_VCENTER = 3072
- Global Const $BS_FLAT = 32768
- Global Const $BS_ICON = 64
- Global Const $BS_BITMAP = 128
- Global Const $BS_NOTIFY = 16384
- Global Const $BS_SPLITBUTTON = 12
- Global Const $BS_DEFSPLITBUTTON = 13
- Global Const $BS_COMMANDLINK = 14
- Global Const $BS_DEFCOMMANDLINK = 15
- Global Const $BCSIF_GLYPH = 1
- Global Const $BCSIF_IMAGE = 2
- Global Const $BCSIF_STYLE = 4
- Global Const $BCSIF_SIZE = 8
- Global Const $BCSS_NOSPLIT = 1
- Global Const $BCSS_STRETCH = 2
- Global Const $BCSS_ALIGNLEFT = 4
- Global Const $BCSS_IMAGE = 8
- Global Const $BUTTON_IMAGELIST_ALIGN_LEFT = 0
- Global Const $BUTTON_IMAGELIST_ALIGN_RIGHT = 1
- Global Const $BUTTON_IMAGELIST_ALIGN_TOP = 2
- Global Const $BUTTON_IMAGELIST_ALIGN_BOTTOM = 3
- Global Const $BUTTON_IMAGELIST_ALIGN_CENTER = 4
- Global Const $BS_3STATE = 5
- Global Const $BS_AUTO3STATE = 6
- Global Const $BS_AUTOCHECKBOX = 3
- Global Const $BS_CHECKBOX = 2
- Global Const $BS_RADIOBUTTON = 4
- Global Const $BS_AUTORADIOBUTTON = 9
- Global Const $BS_OWNERDRAW = 11
- Global Const $GUI_SS_DEFAULT_BUTTON = 0
- Global Const $GUI_SS_DEFAULT_CHECKBOX = 0
- Global Const $GUI_SS_DEFAULT_GROUP = 0
- Global Const $GUI_SS_DEFAULT_RADIO = 0
- Global Const $BCM_FIRST = 5632
- Global Const $BCM_GETIDEALSIZE = ($BCM_FIRST + 1)
- Global Const $BCM_GETIMAGELIST = ($BCM_FIRST + 3)
- Global Const $BCM_GETNOTE = ($BCM_FIRST + 10)
- Global Const $BCM_GETNOTELENGTH = ($BCM_FIRST + 11)
- Global Const $BCM_GETSPLITINFO = ($BCM_FIRST + 8)
- Global Const $BCM_GETTEXTMARGIN = ($BCM_FIRST + 5)
- Global Const $BCM_SETDROPDOWNSTATE = ($BCM_FIRST + 6)
- Global Const $BCM_SETIMAGELIST = ($BCM_FIRST + 2)
- Global Const $BCM_SETNOTE = ($BCM_FIRST + 9)
- Global Const $BCM_SETSHIELD = ($BCM_FIRST + 12)
- Global Const $BCM_SETSPLITINFO = ($BCM_FIRST + 7)
- Global Const $BCM_SETTEXTMARGIN = ($BCM_FIRST + 4)
- Global Const $BM_CLICK = 245
- Global Const $BM_GETCHECK = 240
- Global Const $BM_GETIMAGE = 246
- Global Const $BM_GETSTATE = 242
- Global Const $BM_SETCHECK = 241
- Global Const $BM_SETDONTCLICK = 248
- Global Const $BM_SETIMAGE = 247
- Global Const $BM_SETSTATE = 243
- Global Const $BM_SETSTYLE = 244
- Global Const $BCN_FIRST = -1250
- Global Const $BCN_DROPDOWN = ($BCN_FIRST + 2)
- Global Const $BCN_HOTITEMCHANGE = ($BCN_FIRST + 1)
- Global Const $BN_CLICKED = 0
- Global Const $BN_PAINT = 1
- Global Const $BN_HILITE = 2
- Global Const $BN_UNHILITE = 3
- Global Const $BN_DISABLE = 4
- Global Const $BN_DOUBLECLICKED = 5
- Global Const $BN_SETFOCUS = 6
- Global Const $BN_KILLFOCUS = 7
- Global Const $BN_PUSHED = $BN_HILITE
- Global Const $BN_UNPUSHED = $BN_UNHILITE
- Global Const $BN_DBLCLK = $BN_DOUBLECLICKED
- Global Const $BST_CHECKED = 1
- Global Const $BST_INDETERMINATE = 2
- Global Const $BST_UNCHECKED = 0
- Global Const $BST_FOCUS = 8
- Global Const $BST_PUSHED = 4
- Global Const $BST_DONTCLICK = 128
- Global Const $ES_LEFT = 0
- Global Const $ES_CENTER = 1
- Global Const $ES_RIGHT = 2
- Global Const $ES_MULTILINE = 4
- Global Const $ES_UPPERCASE = 8
- Global Const $ES_LOWERCASE = 16
- Global Const $ES_PASSWORD = 32
- Global Const $ES_AUTOVSCROLL = 64
- Global Const $ES_AUTOHSCROLL = 128
- Global Const $ES_NOHIDESEL = 256
- Global Const $ES_OEMCONVERT = 1024
- Global Const $ES_READONLY = 2048
- Global Const $ES_WANTRETURN = 4096
- Global Const $ES_NUMBER = 8192
- Global Const $EC_ERR = -1
- Global Const $ECM_FIRST = 5376
- Global Const $EM_CANUNDO = 198
- Global Const $EM_CHARFROMPOS = 215
- Global Const $EM_EMPTYUNDOBUFFER = 205
- Global Const $EM_FMTLINES = 200
- Global Const $EM_GETCUEBANNER = ($ECM_FIRST + 2)
- Global Const $EM_GETFIRSTVISIBLELINE = 206
- Global Const $EM_GETHANDLE = 189
- Global Const $EM_GETIMESTATUS = 217
- Global Const $EM_GETLIMITTEXT = 213
- Global Const $EM_GETLINE = 196
- Global Const $EM_GETLINECOUNT = 186
- Global Const $EM_GETMARGINS = 212
- Global Const $EM_GETMODIFY = 184
- Global Const $EM_GETPASSWORDCHAR = 210
- Global Const $EM_GETRECT = 178
- Global Const $EM_GETSEL = 176
- Global Const $EM_GETTHUMB = 190
- Global Const $EM_GETWORDBREAKPROC = 209
- Global Const $EM_HIDEBALLOONTIP = ($ECM_FIRST + 4)
- Global Const $EM_LIMITTEXT = 197
- Global Const $EM_LINEFROMCHAR = 201
- Global Const $EM_LINEINDEX = 187
- Global Const $EM_LINELENGTH = 193
- Global Const $EM_LINESCROLL = 182
- Global Const $EM_POSFROMCHAR = 214
- Global Const $EM_REPLACESEL = 194
- Global Const $EM_SCROLL = 181
- Global Const $EM_SCROLLCARET = 183
- Global Const $EM_SETCUEBANNER = ($ECM_FIRST + 1)
- Global Const $EM_SETHANDLE = 188
- Global Const $EM_SETIMESTATUS = 216
- Global Const $EM_SETLIMITTEXT = $EM_LIMITTEXT
- Global Const $EM_SETMARGINS = 211
- Global Const $EM_SETMODIFY = 185
- Global Const $EM_SETPASSWORDCHAR = 204
- Global Const $EM_SETREADONLY = 207
- Global Const $EM_SETRECT = 179
- Global Const $EM_SETRECTNP = 180
- Global Const $EM_SETSEL = 177
- Global Const $EM_SETTABSTOPS = 203
- Global Const $EM_SETWORDBREAKPROC = 208
- Global Const $EM_SHOWBALLOONTIP = ($ECM_FIRST + 3)
- Global Const $EM_UNDO = 199
- Global Const $EC_LEFTMARGIN = 1
- Global Const $EC_RIGHTMARGIN = 2
- Global Const $EC_USEFONTINFO = 65535
- Global Const $EMSIS_COMPOSITIONSTRING = 1
- Global Const $EIMES_GETCOMPSTRATONCE = 1
- Global Const $EIMES_CANCELCOMPSTRINFOCUS = 2
- Global Const $EIMES_COMPLETECOMPSTRKILLFOCUS = 4
- Global Const $EN_ALIGN_LTR_EC = 1792
- Global Const $EN_ALIGN_RTL_EC = 1793
- Global Const $EN_CHANGE = 768
- Global Const $EN_ERRSPACE = 1280
- Global Const $EN_HSCROLL = 1537
- Global Const $EN_KILLFOCUS = 512
- Global Const $EN_MAXTEXT = 1281
- Global Const $EN_SETFOCUS = 256
- Global Const $EN_UPDATE = 1024
- Global Const $EN_VSCROLL = 1538
- Global Const $TTI_NONE = 0
- Global Const $TTI_INFO = 1
- Global Const $TTI_WARNING = 2
- Global Const $TTI_ERROR = 3
- Global Const $TTI_INFO_LARGE = 4
- Global Const $TTI_WARNING_LARGE = 5
- Global Const $TTI_ERROR_LARGE = 6
- Global Const $__EDITCONSTANT_WS_VSCROLL = 2097152
- Global Const $__EDITCONSTANT_WS_HSCROLL = 1048576
- Global Const $GUI_SS_DEFAULT_EDIT = BitOR($ES_WANTRETURN, $__EDITCONSTANT_WS_VSCROLL, $__EDITCONSTANT_WS_HSCROLL, $ES_AUTOVSCROLL, $ES_AUTOHSCROLL)
- Global Const $GUI_SS_DEFAULT_INPUT = BitOR($ES_LEFT, $ES_AUTOHSCROLL)
- Global Const $GUI_EVENT_CLOSE = -3
- Global Const $GUI_EVENT_MINIMIZE = -4
- Global Const $GUI_EVENT_RESTORE = -5
- Global Const $GUI_EVENT_MAXIMIZE = -6
- Global Const $GUI_EVENT_PRIMARYDOWN = -7
- Global Const $GUI_EVENT_PRIMARYUP = -8
- Global Const $GUI_EVENT_SECONDARYDOWN = -9
- Global Const $GUI_EVENT_SECONDARYUP = -10
- Global Const $GUI_EVENT_MOUSEMOVE = -11
- Global Const $GUI_EVENT_RESIZED = -12
- Global Const $GUI_EVENT_DROPPED = -13
- Global Const $GUI_RUNDEFMSG = "GUI_RUNDEFMSG"
- Global Const $GUI_AVISTOP = 0
- Global Const $GUI_AVISTART = 1
- Global Const $GUI_AVICLOSE = 2
- Global Const $GUI_CHECKED = 1
- Global Const $GUI_INDETERMINATE = 2
- Global Const $GUI_UNCHECKED = 4
- Global Const $GUI_DROPACCEPTED = 8
- Global Const $GUI_NODROPACCEPTED = 4096
- Global Const $GUI_ACCEPTFILES = $GUI_DROPACCEPTED
- Global Const $GUI_SHOW = 16
- Global Const $GUI_HIDE = 32
- Global Const $GUI_ENABLE = 64
- Global Const $GUI_DISABLE = 128
- Global Const $GUI_FOCUS = 256
- Global Const $GUI_NOFOCUS = 8192
- Global Const $GUI_DEFBUTTON = 512
- Global Const $GUI_EXPAND = 1024
- Global Const $GUI_ONTOP = 2048
- Global Const $GUI_FONTITALIC = 2
- Global Const $GUI_FONTUNDER = 4
- Global Const $GUI_FONTSTRIKE = 8
- Global Const $GUI_DOCKAUTO = 1
- Global Const $GUI_DOCKLEFT = 2
- Global Const $GUI_DOCKRIGHT = 4
- Global Const $GUI_DOCKHCENTER = 8
- Global Const $GUI_DOCKTOP = 32
- Global Const $GUI_DOCKBOTTOM = 64
- Global Const $GUI_DOCKVCENTER = 128
- Global Const $GUI_DOCKWIDTH = 256
- Global Const $GUI_DOCKHEIGHT = 512
- Global Const $GUI_DOCKSIZE = 768
- Global Const $GUI_DOCKMENUBAR = 544
- Global Const $GUI_DOCKSTATEBAR = 576
- Global Const $GUI_DOCKALL = 802
- Global Const $GUI_DOCKBORDERS = 102
- Global Const $GUI_GR_CLOSE = 1
- Global Const $GUI_GR_LINE = 2
- Global Const $GUI_GR_BEZIER = 4
- Global Const $GUI_GR_MOVE = 6
- Global Const $GUI_GR_COLOR = 8
- Global Const $GUI_GR_RECT = 10
- Global Const $GUI_GR_ELLIPSE = 12
- Global Const $GUI_GR_PIE = 14
- Global Const $GUI_GR_DOT = 16
- Global Const $GUI_GR_PIXEL = 18
- Global Const $GUI_GR_HINT = 20
- Global Const $GUI_GR_REFRESH = 22
- Global Const $GUI_GR_PENSIZE = 24
- Global Const $GUI_GR_NOBKCOLOR = -2
- Global Const $GUI_BKCOLOR_DEFAULT = -1
- Global Const $GUI_BKCOLOR_TRANSPARENT = -2
- Global Const $GUI_BKCOLOR_LV_ALTERNATE = -33554432
- Global Const $GUI_WS_EX_PARENTDRAG = 1048576
- Global Const $SS_LEFT = 0
- Global Const $SS_CENTER = 1
- Global Const $SS_RIGHT = 2
- Global Const $SS_ICON = 3
- Global Const $SS_BLACKRECT = 4
- Global Const $SS_GRAYRECT = 5
- Global Const $SS_WHITERECT = 6
- Global Const $SS_BLACKFRAME = 7
- Global Const $SS_GRAYFRAME = 8
- Global Const $SS_WHITEFRAME = 9
- Global Const $SS_SIMPLE = 11
- Global Const $SS_LEFTNOWORDWRAP = 12
- Global Const $SS_BITMAP = 14
- Global Const $SS_ETCHEDHORZ = 16
- Global Const $SS_ETCHEDVERT = 17
- Global Const $SS_ETCHEDFRAME = 18
- Global Const $SS_NOPREFIX = 128
- Global Const $SS_NOTIFY = 256
- Global Const $SS_CENTERIMAGE = 512
- Global Const $SS_RIGHTJUST = 1024
- Global Const $SS_SUNKEN = 4096
- Global Const $GUI_SS_DEFAULT_LABEL = 0
- Global Const $GUI_SS_DEFAULT_GRAPHIC = 0
- Global Const $GUI_SS_DEFAULT_ICON = $SS_NOTIFY
- Global Const $GUI_SS_DEFAULT_PIC = $SS_NOTIFY
- Global Const $WS_TILED = 0
- Global Const $WS_OVERLAPPED = 0
- Global Const $WS_MAXIMIZEBOX = 65536
- Global Const $WS_MINIMIZEBOX = 131072
- Global Const $WS_TABSTOP = 65536
- Global Const $WS_GROUP = 131072
- Global Const $WS_SIZEBOX = 262144
- Global Const $WS_THICKFRAME = 262144
- Global Const $WS_SYSMENU = 524288
- Global Const $WS_HSCROLL = 1048576
- Global Const $WS_VSCROLL = 2097152
- Global Const $WS_DLGFRAME = 4194304
- Global Const $WS_BORDER = 8388608
- Global Const $WS_CAPTION = 12582912
- Global Const $WS_OVERLAPPEDWINDOW = 13565952
- Global Const $WS_TILEDWINDOW = 13565952
- Global Const $WS_MAXIMIZE = 16777216
- Global Const $WS_CLIPCHILDREN = 33554432
- Global Const $WS_CLIPSIBLINGS = 67108864
- Global Const $WS_DISABLED = 134217728
- Global Const $WS_VISIBLE = 268435456
- Global Const $WS_MINIMIZE = 536870912
- Global Const $WS_CHILD = 1073741824
- Global Const $WS_POPUP = -2147483648
- Global Const $WS_POPUPWINDOW = -2138570752
- Global Const $DS_MODALFRAME = 128
- Global Const $DS_SETFOREGROUND = 512
- Global Const $DS_CONTEXTHELP = 8192
- Global Const $WS_EX_ACCEPTFILES = 16
- Global Const $WS_EX_MDICHILD = 64
- Global Const $WS_EX_APPWINDOW = 262144
- Global Const $WS_EX_COMPOSITED = 33554432
- Global Const $WS_EX_CLIENTEDGE = 512
- Global Const $WS_EX_CONTEXTHELP = 1024
- Global Const $WS_EX_DLGMODALFRAME = 1
- Global Const $WS_EX_LEFTSCROLLBAR = 16384
- Global Const $WS_EX_OVERLAPPEDWINDOW = 768
- Global Const $WS_EX_RIGHT = 4096
- Global Const $WS_EX_STATICEDGE = 131072
- Global Const $WS_EX_TOOLWINDOW = 128
- Global Const $WS_EX_TOPMOST = 8
- Global Const $WS_EX_TRANSPARENT = 32
- Global Const $WS_EX_WINDOWEDGE = 256
- Global Const $WS_EX_LAYERED = 524288
- Global Const $WS_EX_CONTROLPARENT = 65536
- Global Const $WS_EX_LAYOUTRTL = 4194304
- Global Const $WS_EX_RTLREADING = 8192
- Global Const $WM_GETTEXTLENGTH = 14
- Global Const $WM_GETTEXT = 13
- Global Const $WM_SIZE = 5
- Global Const $WM_SIZING = 532
- Global Const $WM_USER = 1024
- Global Const $WM_CREATE = 1
- Global Const $WM_DESTROY = 2
- Global Const $WM_MOVE = 3
- Global Const $WM_ACTIVATE = 6
- Global Const $WM_SETFOCUS = 7
- Global Const $WM_KILLFOCUS = 8
- Global Const $WM_ENABLE = 10
- Global Const $WM_SETREDRAW = 11
- Global Const $WM_SETTEXT = 12
- Global Const $WM_PAINT = 15
- Global Const $WM_CLOSE = 16
- Global Const $WM_QUERYENDSESSION = 17
- Global Const $WM_QUIT = 18
- Global Const $WM_ERASEBKGND = 20
- Global Const $WM_QUERYOPEN = 19
- Global Const $WM_SYSCOLORCHANGE = 21
- Global Const $WM_ENDSESSION = 22
- Global Const $WM_SHOWWINDOW = 24
- Global Const $WM_SETTINGCHANGE = 26
- Global Const $WM_WININICHANGE = 26
- Global Const $WM_DEVMODECHANGE = 27
- Global Const $WM_ACTIVATEAPP = 28
- Global Const $WM_FONTCHANGE = 29
- Global Const $WM_TIMECHANGE = 30
- Global Const $WM_CANCELMODE = 31
- Global Const $WM_IME_STARTCOMPOSITION = 269
- Global Const $WM_IME_ENDCOMPOSITION = 270
- Global Const $WM_IME_COMPOSITION = 271
- Global Const $WM_IME_KEYLAST = 271
- Global Const $WM_SETCURSOR = 32
- Global Const $WM_MOUSEACTIVATE = 33
- Global Const $WM_CHILDACTIVATE = 34
- Global Const $WM_QUEUESYNC = 35
- Global Const $WM_GETMINMAXINFO = 36
- Global Const $WM_PAINTICON = 38
- Global Const $WM_ICONERASEBKGND = 39
- Global Const $WM_NEXTDLGCTL = 40
- Global Const $WM_SPOOLERSTATUS = 42
- Global Const $WM_DRAWITEM = 43
- Global Const $WM_MEASUREITEM = 44
- Global Const $WM_DELETEITEM = 45
- Global Const $WM_VKEYTOITEM = 46
- Global Const $WM_CHARTOITEM = 47
- Global Const $WM_SETFONT = 48
- Global Const $WM_GETFONT = 49
- Global Const $WM_SETHOTKEY = 50
- Global Const $WM_GETHOTKEY = 51
- Global Const $WM_QUERYDRAGICON = 55
- Global Const $WM_COMPAREITEM = 57
- Global Const $WM_GETOBJECT = 61
- Global Const $WM_COMPACTING = 65
- Global Const $WM_COMMNOTIFY = 68
- Global Const $WM_WINDOWPOSCHANGING = 70
- Global Const $WM_WINDOWPOSCHANGED = 71
- Global Const $WM_POWER = 72
- Global Const $WM_NOTIFY = 78
- Global Const $WM_COPYDATA = 74
- Global Const $WM_CANCELJOURNAL = 75
- Global Const $WM_INPUTLANGCHANGEREQUEST = 80
- Global Const $WM_INPUTLANGCHANGE = 81
- Global Const $WM_TCARD = 82
- Global Const $WM_HELP = 83
- Global Const $WM_USERCHANGED = 84
- Global Const $WM_NOTIFYFORMAT = 85
- Global Const $WM_PARENTNOTIFY = 528
- Global Const $WM_ENTERMENULOOP = 529
- Global Const $WM_EXITMENULOOP = 530
- Global Const $WM_NEXTMENU = 531
- Global Const $WM_CAPTURECHANGED = 533
- Global Const $WM_MOVING = 534
- Global Const $WM_POWERBROADCAST = 536
- Global Const $WM_DEVICECHANGE = 537
- Global Const $WM_MDICREATE = 544
- Global Const $WM_MDIDESTROY = 545
- Global Const $WM_MDIACTIVATE = 546
- Global Const $WM_MDIRESTORE = 547
- Global Const $WM_MDINEXT = 548
- Global Const $WM_MDIMAXIMIZE = 549
- Global Const $WM_MDITILE = 550
- Global Const $WM_MDICASCADE = 551
- Global Const $WM_MDIICONARRANGE = 552
- Global Const $WM_MDIGETACTIVE = 553
- Global Const $WM_MDISETMENU = 560
- Global Const $WM_ENTERSIZEMOVE = 561
- Global Const $WM_EXITSIZEMOVE = 562
- Global Const $WM_DROPFILES = 563
- Global Const $WM_MDIREFRESHMENU = 564
- Global Const $WM_IME_SETCONTEXT = 641
- Global Const $WM_IME_NOTIFY = 642
- Global Const $WM_IME_CONTROL = 643
- Global Const $WM_IME_COMPOSITIONFULL = 644
- Global Const $WM_IME_SELECT = 645
- Global Const $WM_IME_CHAR = 646
- Global Const $WM_IME_REQUEST = 648
- Global Const $WM_IME_KEYDOWN = 656
- Global Const $WM_IME_KEYUP = 657
- Global Const $WM_NCMOUSEHOVER = 672
- Global Const $WM_MOUSEHOVER = 673
- Global Const $WM_NCMOUSELEAVE = 674
- Global Const $WM_MOUSELEAVE = 675
- Global Const $WM_WTSSESSION_CHANGE = 689
- Global Const $WM_TABLET_FIRST = 704
- Global Const $WM_TABLET_LAST = 735
- Global Const $WM_CUT = 768
- Global Const $WM_COPY = 769
- Global Const $WM_PASTE = 770
- Global Const $WM_CLEAR = 771
- Global Const $WM_UNDO = 772
- Global Const $WM_PALETTEISCHANGING = 784
- Global Const $WM_HOTKEY = 786
- Global Const $WM_PALETTECHANGED = 785
- Global Const $WM_PRINT = 791
- Global Const $WM_PRINTCLIENT = 792
- Global Const $WM_APPCOMMAND = 793
- Global Const $WM_QUERYNEWPALETTE = 783
- Global Const $WM_THEMECHANGED = 794
- Global Const $WM_HANDHELDFIRST = 856
- Global Const $WM_HANDHELDLAST = 863
- Global Const $WM_AFXFIRST = 864
- Global Const $WM_AFXLAST = 895
- Global Const $WM_PENWINFIRST = 896
- Global Const $WM_PENWINLAST = 911
- Global Const $WM_CONTEXTMENU = 123
- Global Const $WM_STYLECHANGING = 124
- Global Const $WM_STYLECHANGED = 125
- Global Const $WM_DISPLAYCHANGE = 126
- Global Const $WM_GETICON = 127
- Global Const $WM_SETICON = 128
- Global Const $WM_NCCREATE = 129
- Global Const $WM_NCDESTROY = 130
- Global Const $WM_NCCALCSIZE = 131
- Global Const $WM_NCHITTEST = 132
- Global Const $WM_NCPAINT = 133
- Global Const $WM_NCACTIVATE = 134
- Global Const $WM_GETDLGCODE = 135
- Global Const $WM_SYNCPAINT = 136
- Global Const $WM_NCMOUSEMOVE = 160
- Global Const $WM_NCLBUTTONDOWN = 161
- Global Const $WM_NCLBUTTONUP = 162
- Global Const $WM_NCLBUTTONDBLCLK = 163
- Global Const $WM_NCRBUTTONDOWN = 164
- Global Const $WM_NCRBUTTONUP = 165
- Global Const $WM_NCRBUTTONDBLCLK = 166
- Global Const $WM_NCMBUTTONDOWN = 167
- Global Const $WM_NCMBUTTONUP = 168
- Global Const $WM_NCMBUTTONDBLCLK = 169
- Global Const $WM_NCXBUTTONDOWN = 171
- Global Const $WM_NCXBUTTONUP = 172
- Global Const $WM_NCXBUTTONDBLCLK = 173
- Global Const $WM_KEYDOWN = 256
- Global Const $WM_KEYFIRST = 256
- Global Const $WM_KEYUP = 257
- Global Const $WM_CHAR = 258
- Global Const $WM_DEADCHAR = 259
- Global Const $WM_SYSKEYDOWN = 260
- Global Const $WM_SYSKEYUP = 261
- Global Const $WM_SYSCHAR = 262
- Global Const $WM_SYSDEADCHAR = 263
- Global Const $WM_KEYLAST = 265
- Global Const $WM_UNICHAR = 265
- Global Const $WM_INITDIALOG = 272
- Global Const $WM_COMMAND = 273
- Global Const $WM_SYSCOMMAND = 274
- Global Const $WM_TIMER = 275
- Global Const $WM_HSCROLL = 276
- Global Const $WM_VSCROLL = 277
- Global Const $WM_INITMENU = 278
- Global Const $WM_INITMENUPOPUP = 279
- Global Const $WM_MENUSELECT = 287
- Global Const $WM_MENUCHAR = 288
- Global Const $WM_ENTERIDLE = 289
- Global Const $WM_MENURBUTTONUP = 290
- Global Const $WM_MENUDRAG = 291
- Global Const $WM_MENUGETOBJECT = 292
- Global Const $WM_UNINITMENUPOPUP = 293
- Global Const $WM_MENUCOMMAND = 294
- Global Const $WM_CHANGEUISTATE = 295
- Global Const $WM_UPDATEUISTATE = 296
- Global Const $WM_QUERYUISTATE = 297
- Global Const $WM_CTLCOLORMSGBOX = 306
- Global Const $WM_CTLCOLOREDIT = 307
- Global Const $WM_CTLCOLORLISTBOX = 308
- Global Const $WM_CTLCOLORBTN = 309
- Global Const $WM_CTLCOLORDLG = 310
- Global Const $WM_CTLCOLORSCROLLBAR = 311
- Global Const $WM_CTLCOLORSTATIC = 312
- Global Const $WM_CTLCOLOR = 25
- Global Const $MN_GETHMENU = 481
- Global Const $WM_APP = 32768
- Global Const $NM_FIRST = 0
- Global Const $NM_OUTOFMEMORY = $NM_FIRST - 1
- Global Const $NM_CLICK = $NM_FIRST - 2
- Global Const $NM_DBLCLK = $NM_FIRST - 3
- Global Const $NM_RETURN = $NM_FIRST - 4
- Global Const $NM_RCLICK = $NM_FIRST - 5
- Global Const $NM_RDBLCLK = $NM_FIRST - 6
- Global Const $NM_SETFOCUS = $NM_FIRST - 7
- Global Const $NM_KILLFOCUS = $NM_FIRST - 8
- Global Const $NM_CUSTOMDRAW = $NM_FIRST - 12
- Global Const $NM_HOVER = $NM_FIRST - 13
- Global Const $NM_NCHITTEST = $NM_FIRST - 14
- Global Const $NM_KEYDOWN = $NM_FIRST - 15
- Global Const $NM_RELEASEDCAPTURE = $NM_FIRST - 16
- Global Const $NM_SETCURSOR = $NM_FIRST - 17
- Global Const $NM_CHAR = $NM_FIRST - 18
- Global Const $NM_TOOLTIPSCREATED = $NM_FIRST - 19
- Global Const $NM_LDOWN = $NM_FIRST - 20
- Global Const $NM_RDOWN = $NM_FIRST - 21
- Global Const $NM_THEMECHANGED = $NM_FIRST - 22
- Global Const $WM_MOUSEFIRST = 512
- Global Const $WM_MOUSEMOVE = 512
- Global Const $WM_LBUTTONDOWN = 513
- Global Const $WM_LBUTTONUP = 514
- Global Const $WM_LBUTTONDBLCLK = 515
- Global Const $WM_RBUTTONDOWN = 516
- Global Const $WM_RBUTTONUP = 517
- Global Const $WM_RBUTTONDBLCLK = 518
- Global Const $WM_MBUTTONDOWN = 519
- Global Const $WM_MBUTTONUP = 520
- Global Const $WM_MBUTTONDBLCLK = 521
- Global Const $WM_MOUSEWHEEL = 522
- Global Const $WM_XBUTTONDOWN = 523
- Global Const $WM_XBUTTONUP = 524
- Global Const $WM_XBUTTONDBLCLK = 525
- Global Const $WM_MOUSEHWHEEL = 526
- Global Const $PS_SOLID = 0
- Global Const $PS_DASH = 1
- Global Const $PS_DOT = 2
- Global Const $PS_DASHDOT = 3
- Global Const $PS_DASHDOTDOT = 4
- Global Const $PS_NULL = 5
- Global Const $PS_INSIDEFRAME = 6
- Global Const $LWA_ALPHA = 2
- Global Const $LWA_COLORKEY = 1
- Global Const $RGN_AND = 1
- Global Const $RGN_OR = 2
- Global Const $RGN_XOR = 3
- Global Const $RGN_DIFF = 4
- Global Const $RGN_COPY = 5
- Global Const $ERRORREGION = 0
- Global Const $NULLREGION = 1
- Global Const $SIMPLEREGION = 2
- Global Const $COMPLEXREGION = 3
- Global Const $TRANSPARENT = 1
- Global Const $OPAQUE = 2
- Global Const $CCM_FIRST = 8192
- Global Const $CCM_GETUNICODEFORMAT = ($CCM_FIRST + 6)
- Global Const $CCM_SETUNICODEFORMAT = ($CCM_FIRST + 5)
- Global Const $CCM_SETBKCOLOR = $CCM_FIRST + 1
- Global Const $CCM_SETCOLORSCHEME = $CCM_FIRST + 2
- Global Const $CCM_GETCOLORSCHEME = $CCM_FIRST + 3
- Global Const $CCM_GETDROPTARGET = $CCM_FIRST + 4
- Global Const $CCM_SETWINDOWTHEME = $CCM_FIRST + 11
- Global Const $GA_PARENT = 1
- Global Const $GA_ROOT = 2
- Global Const $GA_ROOTOWNER = 3
- Global Const $SM_CXSCREEN = 0
- Global Const $SM_CYSCREEN = 1
- Global Const $SM_CXVSCROLL = 2
- Global Const $SM_CYHSCROLL = 3
- Global Const $SM_CYCAPTION = 4
- Global Const $SM_CXBORDER = 5
- Global Const $SM_CYBORDER = 6
- Global Const $SM_CXDLGFRAME = 7
- Global Const $SM_CYDLGFRAME = 8
- Global Const $SM_CYVTHUMB = 9
- Global Const $SM_CXHTHUMB = 10
- Global Const $SM_CXICON = 11
- Global Const $SM_CYICON = 12
- Global Const $SM_CXCURSOR = 13
- Global Const $SM_CYCURSOR = 14
- Global Const $SM_CYMENU = 15
- Global Const $SM_CXFULLSCREEN = 16
- Global Const $SM_CYFULLSCREEN = 17
- Global Const $SM_CYKANJIWINDOW = 18
- Global Const $SM_MOUSEPRESENT = 19
- Global Const $SM_CYVSCROLL = 20
- Global Const $SM_CXHSCROLL = 21
- Global Const $SM_DEBUG = 22
- Global Const $SM_SWAPBUTTON = 23
- Global Const $SM_RESERVED1 = 24
- Global Const $SM_RESERVED2 = 25
- Global Const $SM_RESERVED3 = 26
- Global Const $SM_RESERVED4 = 27
- Global Const $SM_CXMIN = 28
- Global Const $SM_CYMIN = 29
- Global Const $SM_CXSIZE = 30
- Global Const $SM_CYSIZE = 31
- Global Const $SM_CXFRAME = 32
- Global Const $SM_CYFRAME = 33
- Global Const $SM_CXMINTRACK = 34
- Global Const $SM_CYMINTRACK = 35
- Global Const $SM_CXDOUBLECLK = 36
- Global Const $SM_CYDOUBLECLK = 37
- Global Const $SM_CXICONSPACING = 38
- Global Const $SM_CYICONSPACING = 39
- Global Const $SM_MENUDROPALIGNMENT = 40
- Global Const $SM_PENWINDOWS = 41
- Global Const $SM_DBCSENABLED = 42
- Global Const $SM_CMOUSEBUTTONS = 43
- Global Const $SM_SECURE = 44
- Global Const $SM_CXEDGE = 45
- Global Const $SM_CYEDGE = 46
- Global Const $SM_CXMINSPACING = 47
- Global Const $SM_CYMINSPACING = 48
- Global Const $SM_CXSMICON = 49
- Global Const $SM_CYSMICON = 50
- Global Const $SM_CYSMCAPTION = 51
- Global Const $SM_CXSMSIZE = 52
- Global Const $SM_CYSMSIZE = 53
- Global Const $SM_CXMENUSIZE = 54
- Global Const $SM_CYMENUSIZE = 55
- Global Const $SM_ARRANGE = 56
- Global Const $SM_CXMINIMIZED = 57
- Global Const $SM_CYMINIMIZED = 58
- Global Const $SM_CXMAXTRACK = 59
- Global Const $SM_CYMAXTRACK = 60
- Global Const $SM_CXMAXIMIZED = 61
- Global Const $SM_CYMAXIMIZED = 62
- Global Const $SM_NETWORK = 63
- Global Const $SM_CLEANBOOT = 67
- Global Const $SM_CXDRAG = 68
- Global Const $SM_CYDRAG = 69
- Global Const $SM_SHOWSOUNDS = 70
- Global Const $SM_CXMENUCHECK = 71
- Global Const $SM_CYMENUCHECK = 72
- Global Const $SM_SLOWMACHINE = 73
- Global Const $SM_MIDEASTENABLED = 74
- Global Const $SM_MOUSEWHEELPRESENT = 75
- Global Const $SM_XVIRTUALSCREEN = 76
- Global Const $SM_YVIRTUALSCREEN = 77
- Global Const $SM_CXVIRTUALSCREEN = 78
- Global Const $SM_CYVIRTUALSCREEN = 79
- Global Const $SM_CMONITORS = 80
- Global Const $SM_SAMEDISPLAYFORMAT = 81
- Global Const $SM_IMMENABLED = 82
- Global Const $SM_CXFOCUSBORDER = 83
- Global Const $SM_CYFOCUSBORDER = 84
- Global Const $SM_TABLETPC = 86
- Global Const $SM_MEDIACENTER = 87
- Global Const $SM_STARTER = 88
- Global Const $SM_SERVERR2 = 89
- Global Const $SM_CMETRICS = 90
- Global Const $SM_REMOTESESSION = 4096
- Global Const $SM_SHUTTINGDOWN = 8192
- Global Const $SM_REMOTECONTROL = 8193
- Global Const $SM_CARETBLINKINGENABLED = 8194
- Global Const $BLACKNESS = 66
- Global Const $CAPTUREBLT = 1073741824
- Global Const $DSTINVERT = 5570569
- Global Const $MERGECOPY = 12583114
- Global Const $MERGEPAINT = 12255782
- Global Const $NOMIRRORBITMAP = -2147483648
- Global Const $NOTSRCCOPY = 3342344
- Global Const $NOTSRCERASE = 1114278
- Global Const $PATCOPY = 15728673
- Global Const $PATINVERT = 5898313
- Global Const $PATPAINT = 16452105
- Global Const $SRCAND = 8913094
- Global Const $SRCCOPY = 13369376
- Global Const $SRCERASE = 4457256
- Global Const $SRCINVERT = 6684742
- Global Const $SRCPAINT = 15597702
- Global Const $WHITENESS = 16711778
- Global Const $DT_BOTTOM = 8
- Global Const $DT_CALCRECT = 1024
- Global Const $DT_CENTER = 1
- Global Const $DT_EDITCONTROL = 8192
- Global Const $DT_END_ELLIPSIS = 32768
- Global Const $DT_EXPANDTABS = 64
- Global Const $DT_EXTERNALLEADING = 512
- Global Const $DT_HIDEPREFIX = 1048576
- Global Const $DT_INTERNAL = 4096
- Global Const $DT_LEFT = 0
- Global Const $DT_MODIFYSTRING = 65536
- Global Const $DT_NOCLIP = 256
- Global Const $DT_NOFULLWIDTHCHARBREAK = 524288
- Global Const $DT_NOPREFIX = 2048
- Global Const $DT_PATH_ELLIPSIS = 16384
- Global Const $DT_PREFIXONLY = 2097152
- Global Const $DT_RIGHT = 2
- Global Const $DT_RTLREADING = 131072
- Global Const $DT_SINGLELINE = 32
- Global Const $DT_TABSTOP = 128
- Global Const $DT_TOP = 0
- Global Const $DT_VCENTER = 4
- Global Const $DT_WORDBREAK = 16
- Global Const $DT_WORD_ELLIPSIS = 262144
- Global Const $RDW_ERASE = 4
- Global Const $RDW_FRAME = 1024
- Global Const $RDW_INTERNALPAINT = 2
- Global Const $RDW_INVALIDATE = 1
- Global Const $RDW_NOERASE = 32
- Global Const $RDW_NOFRAME = 2048
- Global Const $RDW_NOINTERNALPAINT = 16
- Global Const $RDW_VALIDATE = 8
- Global Const $RDW_ERASENOW = 512
- Global Const $RDW_UPDATENOW = 256
- Global Const $RDW_ALLCHILDREN = 128
- Global Const $RDW_NOCHILDREN = 64
- Global Const $WM_RENDERFORMAT = 773
- Global Const $WM_RENDERALLFORMATS = 774
- Global Const $WM_DESTROYCLIPBOARD = 775
- Global Const $WM_DRAWCLIPBOARD = 776
- Global Const $WM_PAINTCLIPBOARD = 777
- Global Const $WM_VSCROLLCLIPBOARD = 778
- Global Const $WM_SIZECLIPBOARD = 779
- Global Const $WM_ASKCBFORMATNAME = 780
- Global Const $WM_CHANGECBCHAIN = 781
- Global Const $WM_HSCROLLCLIPBOARD = 782
- Global Const $HTERROR = -2
- Global Const $HTTRANSPARENT = -1
- Global Const $HTNOWHERE = 0
- Global Const $HTCLIENT = 1
- Global Const $HTCAPTION = 2
- Global Const $HTSYSMENU = 3
- Global Const $HTGROWBOX = 4
- Global Const $HTSIZE = $HTGROWBOX
- Global Const $HTMENU = 5
- Global Const $HTHSCROLL = 6
- Global Const $HTVSCROLL = 7
- Global Const $HTMINBUTTON = 8
- Global Const $HTMAXBUTTON = 9
- Global Const $HTLEFT = 10
- Global Const $HTRIGHT = 11
- Global Const $HTTOP = 12
- Global Const $HTTOPLEFT = 13
- Global Const $HTTOPRIGHT = 14
- Global Const $HTBOTTOM = 15
- Global Const $HTBOTTOMLEFT = 16
- Global Const $HTBOTTOMRIGHT = 17
- Global Const $HTBORDER = 18
- Global Const $HTREDUCE = $HTMINBUTTON
- Global Const $HTZOOM = $HTMAXBUTTON
- Global Const $HTSIZEFIRST = $HTLEFT
- Global Const $HTSIZELAST = $HTBOTTOMRIGHT
- Global Const $HTOBJECT = 19
- Global Const $HTCLOSE = 20
- Global Const $HTHELP = 21
- Global Const $COLOR_SCROLLBAR = 0
- Global Const $COLOR_BACKGROUND = 1
- Global Const $COLOR_ACTIVECAPTION = 2
- Global Const $COLOR_INACTIVECAPTION = 3
- Global Const $COLOR_MENU = 4
- Global Const $COLOR_WINDOW = 5
- Global Const $COLOR_WINDOWFRAME = 6
- Global Const $COLOR_MENUTEXT = 7
- Global Const $COLOR_WINDOWTEXT = 8
- Global Const $COLOR_CAPTIONTEXT = 9
- Global Const $COLOR_ACTIVEBORDER = 10
- Global Const $COLOR_INACTIVEBORDER = 11
- Global Const $COLOR_APPWORKSPACE = 12
- Global Const $COLOR_HIGHLIGHT = 13
- Global Const $COLOR_HIGHLIGHTTEXT = 14
- Global Const $COLOR_BTNFACE = 15
- Global Const $COLOR_BTNSHADOW = 16
- Global Const $COLOR_GRAYTEXT = 17
- Global Const $COLOR_BTNTEXT = 18
- Global Const $COLOR_INACTIVECAPTIONTEXT = 19
- Global Const $COLOR_BTNHIGHLIGHT = 20
- Global Const $COLOR_3DDKSHADOW = 21
- Global Const $COLOR_3DLIGHT = 22
- Global Const $COLOR_INFOTEXT = 23
- Global Const $COLOR_INFOBK = 24
- Global Const $COLOR_HOTLIGHT = 26
- Global Const $COLOR_GRADIENTACTIVECAPTION = 27
- Global Const $COLOR_GRADIENTINACTIVECAPTION = 28
- Global Const $COLOR_MENUHILIGHT = 29
- Global Const $COLOR_MENUBAR = 30
- Global Const $COLOR_DESKTOP = 1
- Global Const $COLOR_3DFACE = 15
- Global Const $COLOR_3DSHADOW = 16
- Global Const $COLOR_3DHIGHLIGHT = 20
- Global Const $COLOR_3DHILIGHT = 20
- Global Const $COLOR_BTNHILIGHT = 20
- Global Const $HINST_COMMCTRL = -1
- Global Const $IDB_STD_SMALL_COLOR = 0
- Global Const $IDB_STD_LARGE_COLOR = 1
- Global Const $IDB_VIEW_SMALL_COLOR = 4
- Global Const $IDB_VIEW_LARGE_COLOR = 5
- Global Const $IDB_HIST_SMALL_COLOR = 8
- Global Const $IDB_HIST_LARGE_COLOR = 9
- Global Const $STARTF_FORCEOFFFEEDBACK = 128
- Global Const $STARTF_FORCEONFEEDBACK = 64
- Global Const $STARTF_RUNFULLSCREEN = 32
- Global Const $STARTF_USECOUNTCHARS = 8
- Global Const $STARTF_USEFILLATTRIBUTE = 16
- Global Const $STARTF_USEHOTKEY = 512
- Global Const $STARTF_USEPOSITION = 4
- Global Const $STARTF_USESHOWWINDOW = 1
- Global Const $STARTF_USESIZE = 2
- Global Const $STARTF_USESTDHANDLES = 256
- Global Const $CDDS_PREPAINT = 1
- Global Const $CDDS_POSTPAINT = 2
- Global Const $CDDS_PREERASE = 3
- Global Const $CDDS_POSTERASE = 4
- Global Const $CDDS_ITEM = 65536
- Global Const $CDDS_ITEMPREPAINT = 65537
- Global Const $CDDS_ITEMPOSTPAINT = 65538
- Global Const $CDDS_ITEMPREERASE = 65539
- Global Const $CDDS_ITEMPOSTERASE = 65540
- Global Const $CDDS_SUBITEM = 131072
- Global Const $CDIS_SELECTED = 1
- Global Const $CDIS_GRAYED = 2
- Global Const $CDIS_DISABLED = 4
- Global Const $CDIS_CHECKED = 8
- Global Const $CDIS_FOCUS = 16
- Global Const $CDIS_DEFAULT = 32
- Global Const $CDIS_HOT = 64
- Global Const $CDIS_MARKED = 128
- Global Const $CDIS_INDETERMINATE = 256
- Global Const $CDIS_SHOWKEYBOARDCUES = 512
- Global Const $CDIS_NEARHOT = 1024
- Global Const $CDIS_OTHERSIDEHOT = 2048
- Global Const $CDIS_DROPHILITED = 4096
- Global Const $CDRF_DODEFAULT = 0
- Global Const $CDRF_NEWFONT = 2
- Global Const $CDRF_SKIPDEFAULT = 4
- Global Const $CDRF_NOTIFYPOSTPAINT = 16
- Global Const $CDRF_NOTIFYITEMDRAW = 32
- Global Const $CDRF_NOTIFYSUBITEMDRAW = 32
- Global Const $CDRF_NOTIFYPOSTERASE = 64
- Global Const $CDRF_DOERASE = 8
- Global Const $CDRF_SKIPPOSTPAINT = 256
- Global Const $GUI_SS_DEFAULT_GUI = BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU)
- Func _HexToString($STRHEX)
- If StringLeft($STRHEX, 2) = "0x" Then Return BinaryToString($STRHEX)
- Return BinaryToString("0x" & $STRHEX)
- EndFunc
- Func _StringBetween($S_STRING, $S_START, $S_END, $V_CASE = -1)
- Local $S_CASE = ""
- If $V_CASE = Default Or $V_CASE = -1 Then $S_CASE = "(?i)"
- Local $S_PATTERN_ESCAPE = "(\.|\||\*|\?|\+|\(|\)|\{|\}|\[|\]|\^|\$|\\)"
- $S_START = StringRegExpReplace($S_START, $S_PATTERN_ESCAPE, "\\$1")
- $S_END = StringRegExpReplace($S_END, $S_PATTERN_ESCAPE, "\\$1")
- If $S_START = "" Then $S_START = "\A"
- If $S_END = "" Then $S_END = "\z"
- Local $A_RET = StringRegExp($S_STRING, "(?s)" & $S_CASE & $S_START & "(.*?)" & $S_END, 3)
- If @error Then Return SetError(1, 0, 0)
- Return $A_RET
- EndFunc
- Func _StringEncrypt($I_ENCRYPT, $S_ENCRYPTTEXT, $S_ENCRYPTPASSWORD, $I_ENCRYPTLEVEL = 1)
- If $I_ENCRYPT <> 0 And $I_ENCRYPT <> 1 Then
- SetError(1, 0, "")
- ElseIf $S_ENCRYPTTEXT = "" Or $S_ENCRYPTPASSWORD = "" Then
- SetError(1, 0, "")
- Else
- If Number($I_ENCRYPTLEVEL) <= 0 Or Int($I_ENCRYPTLEVEL) <> $I_ENCRYPTLEVEL Then $I_ENCRYPTLEVEL = 1
- Local $V_ENCRYPTMODIFIED
- Local $I_ENCRYPTCOUNTH
- Local $I_ENCRYPTCOUNTG
- Local $V_ENCRYPTSWAP
- Local $AV_ENCRYPTBOX[256][2]
- Local $I_ENCRYPTCOUNTA
- Local $I_ENCRYPTCOUNTB
- Local $I_ENCRYPTCOUNTC
- Local $I_ENCRYPTCOUNTD
- Local $I_ENCRYPTCOUNTE
- Local $V_ENCRYPTCIPHER
- Local $V_ENCRYPTCIPHERBY
- If $I_ENCRYPT = 1 Then
- For $I_ENCRYPTCOUNTF = 0 To $I_ENCRYPTLEVEL Step 1
- $I_ENCRYPTCOUNTG = ""
- $I_ENCRYPTCOUNTH = ""
- $V_ENCRYPTMODIFIED = ""
- For $I_ENCRYPTCOUNTG = 1 To StringLen($S_ENCRYPTTEXT)
- If $I_ENCRYPTCOUNTH = StringLen($S_ENCRYPTPASSWORD) Then
- $I_ENCRYPTCOUNTH = 1
- Else
- $I_ENCRYPTCOUNTH += 1
- EndIf
- $V_ENCRYPTMODIFIED = $V_ENCRYPTMODIFIED & Chr(BitXOR(Asc(StringMid($S_ENCRYPTTEXT, $I_ENCRYPTCOUNTG, 1)), Asc(StringMid($S_ENCRYPTPASSWORD, $I_ENCRYPTCOUNTH, 1)), 255))
- Next
- $S_ENCRYPTTEXT = $V_ENCRYPTMODIFIED
- $I_ENCRYPTCOUNTA = ""
- $I_ENCRYPTCOUNTB = 0
- $I_ENCRYPTCOUNTC = ""
- $I_ENCRYPTCOUNTD = ""
- $I_ENCRYPTCOUNTE = ""
- $V_ENCRYPTCIPHERBY = ""
- $V_ENCRYPTCIPHER = ""
- $V_ENCRYPTSWAP = ""
- $AV_ENCRYPTBOX = ""
- Local $AV_ENCRYPTBOX[256][2]
- For $I_ENCRYPTCOUNTA = 0 To 255
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][1] = Asc(StringMid($S_ENCRYPTPASSWORD, Mod($I_ENCRYPTCOUNTA, StringLen($S_ENCRYPTPASSWORD)) + 1, 1))
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0] = $I_ENCRYPTCOUNTA
- Next
- For $I_ENCRYPTCOUNTA = 0 To 255
- $I_ENCRYPTCOUNTB = Mod(($I_ENCRYPTCOUNTB + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0] + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][1]), 256)
- $V_ENCRYPTSWAP = $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0]
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0] = $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTB][0]
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTB][0] = $V_ENCRYPTSWAP
- Next
- For $I_ENCRYPTCOUNTA = 1 To StringLen($S_ENCRYPTTEXT)
- $I_ENCRYPTCOUNTC = Mod(($I_ENCRYPTCOUNTC + 1), 256)
- $I_ENCRYPTCOUNTD = Mod(($I_ENCRYPTCOUNTD + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTC][0]), 256)
- $I_ENCRYPTCOUNTE = $AV_ENCRYPTBOX[Mod(($AV_ENCRYPTBOX[$I_ENCRYPTCOUNTC][0] + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTD][0]), 256)][0]
- $V_ENCRYPTCIPHERBY = BitXOR(Asc(StringMid($S_ENCRYPTTEXT, $I_ENCRYPTCOUNTA, 1)), $I_ENCRYPTCOUNTE)
- $V_ENCRYPTCIPHER &= Hex($V_ENCRYPTCIPHERBY, 2)
- Next
- $S_ENCRYPTTEXT = $V_ENCRYPTCIPHER
- Next
- Else
- For $I_ENCRYPTCOUNTF = 0 To $I_ENCRYPTLEVEL Step 1
- $I_ENCRYPTCOUNTB = 0
- $I_ENCRYPTCOUNTC = ""
- $I_ENCRYPTCOUNTD = ""
- $I_ENCRYPTCOUNTE = ""
- $V_ENCRYPTCIPHERBY = ""
- $V_ENCRYPTCIPHER = ""
- $V_ENCRYPTSWAP = ""
- $AV_ENCRYPTBOX = ""
- Local $AV_ENCRYPTBOX[256][2]
- For $I_ENCRYPTCOUNTA = 0 To 255
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][1] = Asc(StringMid($S_ENCRYPTPASSWORD, Mod($I_ENCRYPTCOUNTA, StringLen($S_ENCRYPTPASSWORD)) + 1, 1))
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0] = $I_ENCRYPTCOUNTA
- Next
- For $I_ENCRYPTCOUNTA = 0 To 255
- $I_ENCRYPTCOUNTB = Mod(($I_ENCRYPTCOUNTB + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0] + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][1]), 256)
- $V_ENCRYPTSWAP = $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0]
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTA][0] = $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTB][0]
- $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTB][0] = $V_ENCRYPTSWAP
- Next
- For $I_ENCRYPTCOUNTA = 1 To StringLen($S_ENCRYPTTEXT) Step 2
- $I_ENCRYPTCOUNTC = Mod(($I_ENCRYPTCOUNTC + 1), 256)
- $I_ENCRYPTCOUNTD = Mod(($I_ENCRYPTCOUNTD + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTC][0]), 256)
- $I_ENCRYPTCOUNTE = $AV_ENCRYPTBOX[Mod(($AV_ENCRYPTBOX[$I_ENCRYPTCOUNTC][0] + $AV_ENCRYPTBOX[$I_ENCRYPTCOUNTD][0]), 256)][0]
- $V_ENCRYPTCIPHERBY = BitXOR(Dec(StringMid($S_ENCRYPTTEXT, $I_ENCRYPTCOUNTA, 2)), $I_ENCRYPTCOUNTE)
- $V_ENCRYPTCIPHER = $V_ENCRYPTCIPHER & Chr($V_ENCRYPTCIPHERBY)
- Next
- $S_ENCRYPTTEXT = $V_ENCRYPTCIPHER
- $I_ENCRYPTCOUNTG = ""
- $I_ENCRYPTCOUNTH = ""
- $V_ENCRYPTMODIFIED = ""
- For $I_ENCRYPTCOUNTG = 1 To StringLen($S_ENCRYPTTEXT)
- If $I_ENCRYPTCOUNTH = StringLen($S_ENCRYPTPASSWORD) Then
- $I_ENCRYPTCOUNTH = 1
- Else
- $I_ENCRYPTCOUNTH += 1
- EndIf
- $V_ENCRYPTMODIFIED &= Chr(BitXOR(Asc(StringMid($S_ENCRYPTTEXT, $I_ENCRYPTCOUNTG, 1)), Asc(StringMid($S_ENCRYPTPASSWORD, $I_ENCRYPTCOUNTH, 1)), 255))
- Next
- $S_ENCRYPTTEXT = $V_ENCRYPTMODIFIED
- Next
- EndIf
- Return $S_ENCRYPTTEXT
- EndIf
- EndFunc
- Func _StringExplode($SSTRING, $SDELIMITER, $ILIMIT = 0)
- If $ILIMIT > 0 Then
- $SSTRING = StringReplace($SSTRING, $SDELIMITER, Chr(0), $ILIMIT)
- $SDELIMITER = Chr(0)
- ElseIf $ILIMIT < 0 Then
- Local $IINDEX = StringInStr($SSTRING, $SDELIMITER, 0, $ILIMIT)
- If $IINDEX Then
- $SSTRING = StringLeft($SSTRING, $IINDEX - 1)
- EndIf
- EndIf
- Return StringSplit($SSTRING, $SDELIMITER, 3)
- EndFunc
- Func _StringInsert($S_STRING, $S_INSERTSTRING, $I_POSITION)
- Local $I_LENGTH, $S_START, $S_END
- If $S_STRING = "" Or (Not IsString($S_STRING)) Then
- Return SetError(1, 0, $S_STRING)
- ElseIf $S_INSERTSTRING = "" Or (Not IsString($S_STRING)) Then
- Return SetError(2, 0, $S_STRING)
- Else
- $I_LENGTH = StringLen($S_STRING)
- If (Abs($I_POSITION) > $I_LENGTH) Or (Not IsInt($I_POSITION)) Then
- Return SetError(3, 0, $S_STRING)
- EndIf
- EndIf
- If $I_POSITION = 0 Then
- Return $S_INSERTSTRING & $S_STRING
- ElseIf $I_POSITION > 0 Then
- $S_START = StringLeft($S_STRING, $I_POSITION)
- $S_END = StringRight($S_STRING, $I_LENGTH - $I_POSITION)
- Return $S_START & $S_INSERTSTRING & $S_END
- ElseIf $I_POSITION < 0 Then
- $S_START = StringLeft($S_STRING, Abs($I_LENGTH + $I_POSITION))
- $S_END = StringRight($S_STRING, Abs($I_POSITION))
- Return $S_START & $S_INSERTSTRING & $S_END
- EndIf
- EndFunc
- Func _StringProper($S_STRING)
- Local $IX = 0
- Local $CAPNEXT = 1
- Local $S_NSTR = ""
- Local $S_CURCHAR
- For $IX = 1 To StringLen($S_STRING)
- $S_CURCHAR = StringMid($S_STRING, $IX, 1)
- Select
- Case $CAPNEXT = 1
- If StringRegExp($S_CURCHAR, "[a-zA-ZÀ-ÿšœžŸ]") Then
- $S_CURCHAR = StringUpper($S_CURCHAR)
- $CAPNEXT = 0
- EndIf
- Case Not StringRegExp($S_CURCHAR, "[a-zA-ZÀ-ÿšœžŸ]")
- $CAPNEXT = 1
- Case Else
- $S_CURCHAR = StringLower($S_CURCHAR)
- EndSelect
- $S_NSTR &= $S_CURCHAR
- Next
- Return $S_NSTR
- EndFunc
- Func _StringRepeat($SSTRING, $IREPEATCOUNT)
- Local $SRESULT
- Select
- Case Not StringIsInt($IREPEATCOUNT)
- SetError(1)
- Return ""
- Case StringLen($SSTRING) < 1
- SetError(1)
- Return ""
- Case $IREPEATCOUNT <= 0
- SetError(1)
- Return ""
- Case Else
- For $ICOUNT = 1 To $IREPEATCOUNT
- $SRESULT &= $SSTRING
- Next
- Return $SRESULT
- EndSelect
- EndFunc
- Func _StringReverse($S_STRING)
- Local $I_LEN = StringLen($S_STRING)
- If $I_LEN < 1 Then Return SetError(1, 0, "")
- Local $T_CHARS = DllStructCreate("char[" & $I_LEN + 1 & "]")
- DllStructSetData($T_CHARS, 1, $S_STRING)
- Local $A_REV = DllCall("msvcrt.dll", "ptr:cdecl", "_strrev", "struct*", $T_CHARS)
- If @error Or $A_REV[0] = 0 Then Return SetError(2, 0, "")
- Return DllStructGetData($T_CHARS, 1)
- EndFunc
- Func _StringToHex($STRCHAR)
- Return Hex(StringToBinary($STRCHAR))
- EndFunc
- Global Const $CB_ERR = -1
- Global Const $CB_ERRATTRIBUTE = -3
- Global Const $CB_ERRREQUIRED = -4
- Global Const $CB_ERRSPACE = -2
- Global Const $CB_OKAY = 0
- Global Const $STATE_SYSTEM_INVISIBLE = 32768
- Global Const $STATE_SYSTEM_PRESSED = 8
- Global Const $CBS_AUTOHSCROLL = 64
- Global Const $CBS_DISABLENOSCROLL = 2048
- Global Const $CBS_DROPDOWN = 2
- Global Const $CBS_DROPDOWNLIST = 3
- Global Const $CBS_HASSTRINGS = 512
- Global Const $CBS_LOWERCASE = 16384
- Global Const $CBS_NOINTEGRALHEIGHT = 1024
- Global Const $CBS_OEMCONVERT = 128
- Global Const $CBS_OWNERDRAWFIXED = 16
- Global Const $CBS_OWNERDRAWVARIABLE = 32
- Global Const $CBS_SIMPLE = 1
- Global Const $CBS_SORT = 256
- Global Const $CBS_UPPERCASE = 8192
- Global Const $CBM_FIRST = 5888
- Global Const $CB_ADDSTRING = 323
- Global Const $CB_DELETESTRING = 324
- Global Const $CB_DIR = 325
- Global Const $CB_FINDSTRING = 332
- Global Const $CB_FINDSTRINGEXACT = 344
- Global Const $CB_GETCOMBOBOXINFO = 356
- Global Const $CB_GETCOUNT = 326
- Global Const $CB_GETCUEBANNER = ($CBM_FIRST + 4)
- Global Const $CB_GETCURSEL = 327
- Global Const $CB_GETDROPPEDCONTROLRECT = 338
- Global Const $CB_GETDROPPEDSTATE = 343
- Global Const $CB_GETDROPPEDWIDTH = 351
- Global Const $CB_GETEDITSEL = 320
- Global Const $CB_GETEXTENDEDUI = 342
- Global Const $CB_GETHORIZONTALEXTENT = 349
- Global Const $CB_GETITEMDATA = 336
- Global Const $CB_GETITEMHEIGHT = 340
- Global Const $CB_GETLBTEXT = 328
- Global Const $CB_GETLBTEXTLEN = 329
- Global Const $CB_GETLOCALE = 346
- Global Const $CB_GETMINVISIBLE = 5890
- Global Const $CB_GETTOPINDEX = 347
- Global Const $CB_INITSTORAGE = 353
- Global Const $CB_LIMITTEXT = 321
- Global Const $CB_RESETCONTENT = 331
- Global Const $CB_INSERTSTRING = 330
- Global Const $CB_SELECTSTRING = 333
- Global Const $CB_SETCUEBANNER = ($CBM_FIRST + 3)
- Global Const $CB_SETCURSEL = 334
- Global Const $CB_SETDROPPEDWIDTH = 352
- Global Const $CB_SETEDITSEL = 322
- Global Const $CB_SETEXTENDEDUI = 341
- Global Const $CB_SETHORIZONTALEXTENT = 350
- Global Const $CB_SETITEMDATA = 337
- Global Const $CB_SETITEMHEIGHT = 339
- Global Const $CB_SETLOCALE = 345
- Global Const $CB_SETMINVISIBLE = 5889
- Global Const $CB_SETTOPINDEX = 348
- Global Const $CB_SHOWDROPDOWN = 335
- Global Const $CBN_CLOSEUP = 8
- Global Const $CBN_DBLCLK = 2
- Global Const $CBN_DROPDOWN = 7
- Global Const $CBN_EDITCHANGE = 5
- Global Const $CBN_EDITUPDATE = 6
- Global Const $CBN_ERRSPACE = (-1)
- Global Const $CBN_KILLFOCUS = 4
- Global Const $CBN_SELCHANGE = 1
- Global Const $CBN_SELENDCANCEL = 10
- Global Const $CBN_SELENDOK = 9
- Global Const $CBN_SETFOCUS = 3
- Global Const $CBES_EX_CASESENSITIVE = 16
- Global Const $CBES_EX_NOEDITIMAGE = 1
- Global Const $CBES_EX_NOEDITIMAGEINDENT = 2
- Global Const $CBES_EX_NOSIZELIMIT = 8
- Global Const $__COMBOBOXCONSTANT_WM_USER = 1024
- Global Const $CBEM_DELETEITEM = $CB_DELETESTRING
- Global Const $CBEM_GETCOMBOCONTROL = ($__COMBOBOXCONSTANT_WM_USER + 6)
- Global Const $CBEM_GETEDITCONTROL = ($__COMBOBOXCONSTANT_WM_USER + 7)
- Global Const $CBEM_GETEXSTYLE = ($__COMBOBOXCONSTANT_WM_USER + 9)
- Global Const $CBEM_GETEXTENDEDSTYLE = ($__COMBOBOXCONSTANT_WM_USER + 9)
- Global Const $CBEM_GETIMAGELIST = ($__COMBOBOXCONSTANT_WM_USER + 3)
- Global Const $CBEM_GETITEMA = ($__COMBOBOXCONSTANT_WM_USER + 4)
- Global Const $CBEM_GETITEMW = ($__COMBOBOXCONSTANT_WM_USER + 13)
- Global Const $CBEM_GETUNICODEFORMAT = 8192 + 6
- Global Const $CBEM_HASEDITCHANGED = ($__COMBOBOXCONSTANT_WM_USER + 10)
- Global Const $CBEM_INSERTITEMA = ($__COMBOBOXCONSTANT_WM_USER + 1)
- Global Const $CBEM_INSERTITEMW = ($__COMBOBOXCONSTANT_WM_USER + 11)
- Global Const $CBEM_SETEXSTYLE = ($__COMBOBOXCONSTANT_WM_USER + 8)
- Global Const $CBEM_SETEXTENDEDSTYLE = ($__COMBOBOXCONSTANT_WM_USER + 14)
- Global Const $CBEM_SETIMAGELIST = ($__COMBOBOXCONSTANT_WM_USER + 2)
- Global Const $CBEM_SETITEMA = ($__COMBOBOXCONSTANT_WM_USER + 5)
- Global Const $CBEM_SETITEMW = ($__COMBOBOXCONSTANT_WM_USER + 12)
- Global Const $CBEM_SETUNICODEFORMAT = 8192 + 5
- Global Const $CBEM_SETWINDOWTHEME = 8192 + 11
- Global Const $CBEN_FIRST = (-800)
- Global Const $CBEN_LAST = (-830)
- Global Const $CBEN_BEGINEDIT = ($CBEN_FIRST - 4)
- Global Const $CBEN_DELETEITEM = ($CBEN_FIRST - 2)
- Global Const $CBEN_DRAGBEGINA = ($CBEN_FIRST - 8)
- Global Const $CBEN_DRAGBEGINW = ($CBEN_FIRST - 9)
- Global Const $CBEN_ENDEDITA = ($CBEN_FIRST - 5)
- Global Const $CBEN_ENDEDITW = ($CBEN_FIRST - 6)
- Global Const $CBEN_GETDISPINFO = ($CBEN_FIRST - 0)
- Global Const $CBEN_GETDISPINFOA = ($CBEN_FIRST - 0)
- Global Const $CBEN_GETDISPINFOW = ($CBEN_FIRST - 7)
- Global Const $CBEN_INSERTITEM = ($CBEN_FIRST - 1)
- Global Const $CBEIF_DI_SETITEM = 268435456
- Global Const $CBEIF_IMAGE = 2
- Global Const $CBEIF_INDENT = 16
- Global Const $CBEIF_LPARAM = 32
- Global Const $CBEIF_OVERLAY = 8
- Global Const $CBEIF_SELECTEDIMAGE = 4
- Global Const $CBEIF_TEXT = 1
- Global Const $__COMBOBOXCONSTANT_WS_VSCROLL = 2097152
- Global Const $GUI_SS_DEFAULT_COMBO = BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL, $__COMBOBOXCONSTANT_WS_VSCROLL)
- Global Const $TCS_BOTTOM = 2
- Global Const $TCS_BUTTONS = 256
- Global Const $TCS_FIXEDWIDTH = 1024
- Global Const $TCS_FLATBUTTONS = 8
- Global Const $TCS_FOCUSNEVER = 32768
- Global Const $TCS_FOCUSONBUTTONDOWN = 4096
- Global Const $TCS_FORCEICONLEFT = 16
- Global Const $TCS_FORCELABELLEFT = 32
- Global Const $TCS_HOTTRACK = 64
- Global Const $TCS_MULTILINE = 512
- Global Const $TCS_MULTISELECT = 4
- Global Const $TCS_OWNERDRAWFIXED = 8192
- Global Const $TCS_RAGGEDRIGHT = 2048
- Global Const $TCS_RIGHT = 2
- Global Const $TCS_RIGHTJUSTIFY = 0
- Global Const $TCS_SCROLLOPPOSITE = 1
- Global Const $TCS_SINGLELINE = 0
- Global Const $TCS_TABS = 0
- Global Const $TCS_TOOLTIPS = 16384
- Global Const $TCS_VERTICAL = 128
- Global Const $TCS_EX_FLATSEPARATORS = 1
- Global Const $TCS_EX_REGISTERDROP = 2
- Global Const $TCHT_NOWHERE = 1
- Global Const $TCHT_ONITEMICON = 2
- Global Const $TCHT_ONITEMLABEL = 4
- Global Const $TCHT_ONITEM = 6
- Global Const $TCIF_TEXT = 1
- Global Const $TCIF_IMAGE = 2
- Global Const $TCIF_RTLREADING = 4
- Global Const $TCIF_PARAM = 8
- Global Const $TCIF_STATE = 16
- Global Const $TCIF_ALLDATA = 27
- Global Const $TCIS_BUTTONPRESSED = 1
- Global Const $TCIS_HIGHLIGHTED = 2
- Global Const $TC_ERR = -1
- Global Const $GUI_SS_DEFAULT_TAB = 0
- Global Const $TCM_FIRST = 4864
- Global Const $TCCM_FIRST = 8192
- Global Const $TCM_ADJUSTRECT = ($TCM_FIRST + 40)
- Global Const $TCM_DELETEALLITEMS = ($TCM_FIRST + 9)
- Global Const $TCM_DELETEITEM = ($TCM_FIRST + 8)
- Global Const $TCM_DESELECTALL = ($TCM_FIRST + 50)
- Global Const $TCM_GETCURFOCUS = ($TCM_FIRST + 47)
- Global Const $TCM_GETCURSEL = ($TCM_FIRST + 11)
- Global Const $TCM_GETEXTENDEDSTYLE = ($TCM_FIRST + 53)
- Global Const $TCM_GETIMAGELIST = ($TCM_FIRST + 2)
- Global Const $TCM_GETITEMA = ($TCM_FIRST + 5)
- Global Const $TCM_GETITEMW = ($TCM_FIRST + 60)
- Global Const $TCM_GETITEMCOUNT = ($TCM_FIRST + 4)
- Global Const $TCM_GETITEMRECT = ($TCM_FIRST + 10)
- Global Const $TCM_GETROWCOUNT = ($TCM_FIRST + 44)
- Global Const $TCM_GETTOOLTIPS = ($TCM_FIRST + 45)
- Global Const $TCCM_GETUNICODEFORMAT = ($TCCM_FIRST + 6)
- Global Const $TCM_GETUNICODEFORMAT = $TCCM_GETUNICODEFORMAT
- Global Const $TCM_HIGHLIGHTITEM = ($TCM_FIRST + 51)
- Global Const $TCM_HITTEST = ($TCM_FIRST + 13)
- Global Const $TCM_INSERTITEMA = ($TCM_FIRST + 7)
- Global Const $TCM_INSERTITEMW = ($TCM_FIRST + 62)
- Global Const $TCM_REMOVEIMAGE = ($TCM_FIRST + 42)
- Global Const $TCM_SETITEMA = ($TCM_FIRST + 6)
- Global Const $TCM_SETITEMW = ($TCM_FIRST + 61)
- Global Const $TCM_SETITEMEXTRA = ($TCM_FIRST + 14)
- Global Const $TCM_SETITEMSIZE = $TCM_FIRST + 41
- Global Const $TCM_SETCURFOCUS = ($TCM_FIRST + 48)
- Global Const $TCM_SETCURSEL = ($TCM_FIRST + 12)
- Global Const $TCM_SETEXTENDEDSTYLE = ($TCM_FIRST + 52)
- Global Const $TCM_SETIMAGELIST = $TCM_FIRST + 3
- Global Const $TCM_SETMINTABWIDTH = ($TCM_FIRST + 49)
- Global Const $TCM_SETPADDING = ($TCM_FIRST + 43)
- Global Const $TCM_SETTOOLTIPS = ($TCM_FIRST + 46)
- Global Const $TCCM_SETUNICODEFORMAT = ($TCCM_FIRST + 5)
- Global Const $TCM_SETUNICODEFORMAT = $TCCM_SETUNICODEFORMAT
- Global Const $TCN_FIRST = -550
- Global Const $TCN_FOCUSCHANGE = ($TCN_FIRST - 4)
- Global Const $TCN_GETOBJECT = ($TCN_FIRST - 3)
- Global Const $TCN_KEYDOWN = ($TCN_FIRST - 0)
- Global Const $TCN_SELCHANGE = ($TCN_FIRST - 1)
- Global Const $TCN_SELCHANGING = ($TCN_FIRST - 2)
- Global $TOOLTIPX, $TOOLTIPY
- Func TT($MESSAGE)
- ToolTip($MESSAGE, $TOOLTIPX, $TOOLTIPY)
- EndFunc
- Global Const $PROCESS_TERMINATE = 1
- Global Const $PROCESS_CREATE_THREAD = 2
- Global Const $PROCESS_SET_SESSIONID = 4
- Global Const $PROCESS_VM_OPERATION = 8
- Global Const $PROCESS_VM_READ = 16
- Global Const $PROCESS_VM_WRITE = 32
- Global Const $PROCESS_DUP_HANDLE = 64
- Global Const $PROCESS_CREATE_PROCESS = 128
- Global Const $PROCESS_SET_QUOTA = 256
- Global Const $PROCESS_SET_INFORMATION = 512
- Global Const $PROCESS_QUERY_INFORMATION = 1024
- Global Const $PROCESS_SUSPEND_RESUME = 2048
- Global Const $PROCESS_ALL_ACCESS = 2035711
- Func _ProcessGetName($I_PID)
- If Not ProcessExists($I_PID) Then Return SetError(1, 0, "")
- If Not @error Then
- Local $A_PROCESSES = ProcessList()
- For $I = 1 To $A_PROCESSES[0][0]
- If $A_PROCESSES[$I][1] = $I_PID Then Return $A_PROCESSES[$I][0]
- Next
- EndIf
- Return SetError(1, 0, "")
- EndFunc
- Func _ProcessGetPriority($VPROCESS)
- Local $IERROR, $IEXTENDED, $IRETURN = -1
- Local $I_PID = ProcessExists($VPROCESS)
- If Not $I_PID Then Return SetError(1, 0, -1)
- Local $HDLL = DllOpen("kernel32.dll")
- Do
- Local $APROCESSHANDLE = DllCall($HDLL, "handle", "OpenProcess", "dword", $PROCESS_QUERY_INFORMATION, "bool", False, "dword", $I_PID)
- If @error Then
- $IERROR = @error
- $IEXTENDED = @extended
- ExitLoop
- EndIf
- If Not $APROCESSHANDLE[0] Then ExitLoop
- Local $APRIORITY = DllCall($HDLL, "dword", "GetPriorityClass", "handle", $APROCESSHANDLE[0])
- If @error Then
- $IERROR = @error
- $IEXTENDED = @extended
- EndIf
- DllCall($HDLL, "bool", "CloseHandle", "handle", $APROCESSHANDLE[0])
- If $IERROR Then ExitLoop
- Switch $APRIORITY[0]
- Case 64
- $IRETURN = 0
- Case 16384
- $IRETURN = 1
- Case 32
- $IRETURN = 2
- Case 32768
- $IRETURN = 3
- Case 128
- $IRETURN = 4
- Case 256
- $IRETURN = 5
- Case Else
- $IERROR = 1
- $IEXTENDED = $APRIORITY[0]
- $IRETURN = -1
- EndSwitch
- Until True
- DllClose($HDLL)
- Return SetError($IERROR, $IEXTENDED, $IRETURN)
- EndFunc
- Func _RunDos($SCOMMAND)
- Local $NRESULT = RunWait(@ComSpec & " /C " & $SCOMMAND, "", @SW_HIDE)
- Return SetError(@error, @extended, $NRESULT)
- EndFunc
- Func _MEMORYOPEN($IV_PID, $IV_DESIREDACCESS = 2035711, $IV_INHERITHANDLE = 1)
- If Not ProcessExists($IV_PID) Then
- SetError(1)
- Return 0
- EndIf
- Local $AH_HANDLE[2] = [DllOpen("kernel32.dll")]
- If @error Then
- SetError(2)
- Return 0
- EndIf
- Local $AV_OPENPROCESS = DllCall($AH_HANDLE[0], "int", "OpenProcess", "int", $IV_DESIREDACCESS, "int", $IV_INHERITHANDLE, "int", $IV_PID)
- If @error Then
- DllClose($AH_HANDLE[0])
- SetError(3)
- Return 0
- EndIf
- $AH_HANDLE[1] = $AV_OPENPROCESS[0]
- Return $AH_HANDLE
- EndFunc
- Func _MEMORYWRITE($AHHANDLE, $IVADDRESS, $VDATA, $STYPE = "dword")
- If Not IsArray($AHHANDLE) Then
- SetError(1, 0, False)
- EndIf
- Local $VWRITEDATA = DllStructCreate($STYPE)
- Local $VNUMBEROFBYTESWRITTEN = DllStructCreate("ulong_ptr lpNumberOfBytesWritten")
- DllStructSetData($VWRITEDATA, 1, $VDATA)
- Local $AHCALL = DllCall($AHHANDLE[0], "bool", "WriteProcessMemory", "handle", $AHHANDLE[1], "dword_ptr", $IVADDRESS, "ptr", DllStructGetPtr($VWRITEDATA), "ulong_ptr", DllStructGetSize($VWRITEDATA), "ptr", DllStructGetPtr($VNUMBEROFBYTESWRITTEN))
- Return ($AHCALL[0] And (DllStructGetData($VNUMBEROFBYTESWRITTEN, "lpNumberOfBytesWritten") = DllStructGetSize($VWRITEDATA)))
- EndFunc
- Func _MEMORYREAD($IV_ADDRESS, $AH_HANDLE, $SV_TYPE = "dword")
- If Not IsArray($AH_HANDLE) Then
- SetError(1)
- Return 0
- EndIf
- Local $V_BUFFER = DllStructCreate($SV_TYPE)
- If @error Then
- SetError(@error + 1)
- Return 0
- EndIf
- DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
- If Not @error Then
- Local $V_VALUE = DllStructGetData($V_BUFFER, 1)
- Return $V_VALUE
- Else
- SetError(6)
- Return 0
- EndIf
- EndFunc
- Func _MEMORYCLOSE($AH_HANDLE)
- If Not IsArray($AH_HANDLE) Then
- SetError(1)
- Return 0
- EndIf
- DllCall($AH_HANDLE[0], "int", "CloseHandle", "int", $AH_HANDLE[1])
- If Not @error Then
- DllClose($AH_HANDLE[0])
- Return 1
- Else
- DllClose($AH_HANDLE[0])
- SetError(2)
- Return 0
- EndIf
- EndFunc
- Func SETPRIVILEGE($PRIVILEGE, $BENABLE)
- Const $TOKEN_ADJUST_PRIVILEGES = 32
- Const $TOKEN_QUERY = 8
- Const $SE_PRIVILEGE_ENABLED = 2
- Local $HTOKEN, $SP_AUXRET, $SP_RET, $HCURRPROCESS, $NTOKENS, $NTOKENINDEX, $PRIV
- $NTOKENS = 1
- $LUID = DllStructCreate("dword;int")
- If IsArray($PRIVILEGE) Then $NTOKENS = UBound($PRIVILEGE)
- $TOKEN_PRIVILEGES = DllStructCreate("dword;dword[" & (3 * $NTOKENS) & "]")
- $NEWTOKEN_PRIVILEGES = DllStructCreate("dword;dword[" & (3 * $NTOKENS) & "]")
- $HCURRPROCESS = DllCall("kernel32.dll", "hwnd", "GetCurrentProcess")
- $SP_AUXRET = DllCall("advapi32.dll", "int", "OpenProcessToken", "hwnd", $HCURRPROCESS[0], "int", BitOR($TOKEN_ADJUST_PRIVILEGES, $TOKEN_QUERY), "int_ptr", 0)
- If $SP_AUXRET[0] Then
- $HTOKEN = $SP_AUXRET[3]
- DllStructSetData($TOKEN_PRIVILEGES, 1, 1)
- $NTOKENINDEX = 1
- While $NTOKENINDEX <= $NTOKENS
- If IsArray($PRIVILEGE) Then
- $PRIV = $PRIVILEGE[$NTOKENINDEX - 1]
- Else
- $PRIV = $PRIVILEGE
- EndIf
- $RET = DllCall("advapi32.dll", "int", "LookupPrivilegeValue", "str", "", "str", $PRIV, "ptr", DllStructGetPtr($LUID))
- If $RET[0] Then
- If $BENABLE Then
- DllStructSetData($TOKEN_PRIVILEGES, 2, $SE_PRIVILEGE_ENABLED, (3 * $NTOKENINDEX))
- Else
- DllStructSetData($TOKEN_PRIVILEGES, 2, 0, (3 * $NTOKENINDEX))
- EndIf
- DllStructSetData($TOKEN_PRIVILEGES, 2, DllStructGetData($LUID, 1), (3 * ($NTOKENINDEX - 1)) + 1)
- DllStructSetData($TOKEN_PRIVILEGES, 2, DllStructGetData($LUID, 2), (3 * ($NTOKENINDEX - 1)) + 2)
- DllStructSetData($LUID, 1, 0)
- DllStructSetData($LUID, 2, 0)
- EndIf
- $NTOKENINDEX += 1
- WEnd
- $RET = DllCall("advapi32.dll", "int", "AdjustTokenPrivileges", "hwnd", $HTOKEN, "int", 0, "ptr", DllStructGetPtr($TOKEN_PRIVILEGES), "int", DllStructGetSize($NEWTOKEN_PRIVILEGES), "ptr", DllStructGetPtr($NEWTOKEN_PRIVILEGES), "int_ptr", 0)
- $F = DllCall("kernel32.dll", "int", "GetLastError")
- EndIf
- $NEWTOKEN_PRIVILEGES = 0
- $TOKEN_PRIVILEGES = 0
- $LUID = 0
- If $SP_AUXRET[0] = 0 Then Return 0
- $SP_AUXRET = DllCall("kernel32.dll", "int", "CloseHandle", "hwnd", $HTOKEN)
- If Not $RET[0] And Not $SP_AUXRET[0] Then Return 0
- Return $RET[0]
- EndFunc
- Func _MEMORYPOINTERREAD($IV_ADDRESS, $AH_HANDLE, $AV_OFFSET, $SV_TYPE = "dword")
- If IsArray($AV_OFFSET) Then
- If IsArray($AH_HANDLE) Then
- Local $IV_POINTERCOUNT = UBound($AV_OFFSET) - 1
- Else
- SetError(2)
- Return 0
- EndIf
- Else
- SetError(1)
- Return 0
- EndIf
- Local $IV_DATA[2], $I
- Local $V_BUFFER = DllStructCreate("dword")
- For $I = 0 To $IV_POINTERCOUNT
- If $I = $IV_POINTERCOUNT Then
- $V_BUFFER = DllStructCreate($SV_TYPE)
- If @error Then
- SetError(@error + 2)
- Return 0
- EndIf
- $IV_ADDRESS = "0x" & Hex($IV_DATA[1] + $AV_OFFSET[$I])
- DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
- If @error Then
- SetError(7)
- Return 0
- EndIf
- $IV_DATA[1] = DllStructGetData($V_BUFFER, 1)
- ElseIf $I = 0 Then
- DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
- If @error Then
- SetError(7)
- Return 0
- EndIf
- $IV_DATA[1] = DllStructGetData($V_BUFFER, 1)
- Else
- $IV_ADDRESS = "0x" & Hex($IV_DATA[1] + $AV_OFFSET[$I])
- DllCall($AH_HANDLE[0], "int", "ReadProcessMemory", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER), "int", "")
- If @error Then
- SetError(7)
- Return 0
- EndIf
- $IV_DATA[1] = DllStructGetData($V_BUFFER, 1)
- EndIf
- Next
- $IV_DATA[0] = $IV_ADDRESS
- Return $IV_DATA
- EndFunc
- Func _MEMORYGETBASEADDRESS($AH_HANDLE, $IHEXDEC = 0, $IV_ADDRESS = 1048576)
- Local $V_BUFFER = DllStructCreate("dword;dword;dword;dword;dword;dword;dword")
- Local $VDATA
- Local $VTYPE
- If Not IsArray($AH_HANDLE) Then
- SetError(1)
- Return 0
- EndIf
- DllCall($AH_HANDLE[0], "int", "VirtualQueryEx", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER))
- If Not @error Then
- $VDATA = Hex(DllStructGetData($V_BUFFER, 2))
- $VTYPE = Hex(DllStructGetData($V_BUFFER, 3))
- While $VTYPE <> "00000080"
- DllCall($AH_HANDLE[0], "int", "VirtualQueryEx", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER))
- $VDATA = Hex(DllStructGetData($V_BUFFER, 2))
- $VTYPE = Hex(DllStructGetData($V_BUFFER, 3))
- If Hex($IV_ADDRESS) = "90000000" Then ExitLoop
- $IV_ADDRESS += 65536
- WEnd
- If $VTYPE = "00000080" Then
- SetError(0)
- If $IHEXDEC = 1 Then
- Return Dec($VDATA)
- Else
- Return $VDATA
- EndIf
- Else
- SetError(2)
- Return 0
- EndIf
- Else
- SetError(3)
- Return 0
- EndIf
- EndFunc
- Func _MEMORYMODULEGETBASEADDRESS($IPID, $SMODULE)
- If Not ProcessExists($IPID) Then Return SetError(1, 0, 0)
- If Not IsString($SMODULE) Then Return SetError(2, 0, 0)
- Local $PSAPI = DllOpen("psapi.dll")
- Local $HPROCESS
- Local $PERMISSION = BitOR(2, 1024, 8, 16, 32)
- If $IPID > 0 Then
- Local $HPROCESS = DllCall("kernel32.dll", "ptr", "OpenProcess", "dword", $PERMISSION, "int", 0, "dword", $IPID)
- If $HPROCESS[0] Then
- $HPROCESS = $HPROCESS[0]
- EndIf
- EndIf
- Local $MODULES = DllStructCreate("ptr[1024]")
- Local $ACALL = DllCall($PSAPI, "int", "EnumProcessModules", "ptr", $HPROCESS, "ptr", DllStructGetPtr($MODULES), "dword", DllStructGetSize($MODULES), "dword*", 0)
- If $ACALL[4] > 0 Then
- Local $IMODNUM = $ACALL[4] / 4
- Local $ATEMP
- For $I = 1 To $IMODNUM
- $ATEMP = DllCall($PSAPI, "dword", "GetModuleBaseNameW", "ptr", $HPROCESS, "ptr", Ptr(DllStructGetData($MODULES, 1, $I)), "wstr", "", "dword", 260)
- If $ATEMP[3] = $SMODULE Then
- DllClose($PSAPI)
- Return Ptr(DllStructGetData($MODULES, 1, $I))
- EndIf
- Next
- EndIf
- DllClose($PSAPI)
- Return SetError(-1, 0, 0)
- EndFunc
- Func MEMORYGETBASEADDRESS($AH_HANDLE, $IHEXDEC = 0)
- Local $IV_ADDRESS = 1048576
- Local $V_BUFFER = DllStructCreate("dword;dword;dword;dword;dword;dword;dword")
- Local $VDATA
- Local $VTYPE
- If Not IsArray($AH_HANDLE) Then
- SetError(1)
- Return 0
- EndIf
- DllCall($AH_HANDLE[0], "int", "VirtualQueryEx", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER))
- If Not @error Then
- $VDATA = Hex(DllStructGetData($V_BUFFER, 2))
- $VTYPE = Hex(DllStructGetData($V_BUFFER, 3))
- While $VTYPE <> "00000080"
- DllCall($AH_HANDLE[0], "int", "VirtualQueryEx", "int", $AH_HANDLE[1], "int", $IV_ADDRESS, "ptr", DllStructGetPtr($V_BUFFER), "int", DllStructGetSize($V_BUFFER))
- $VDATA = Hex(DllStructGetData($V_BUFFER, 2))
- $VTYPE = Hex(DllStructGetData($V_BUFFER, 3))
- If Hex($IV_ADDRESS) = "01000000" Then ExitLoop
- $IV_ADDRESS += 65536
- WEnd
- If $VTYPE = "00000080" Then
- SetError(0)
- If $IHEXDEC = 1 Then
- Return Dec($VDATA)
- Else
- Return $VDATA
- EndIf
- Else
- SetError(2)
- Return 0
- EndIf
- Else
- SetError(3)
- Return 0
- EndIf
- EndFunc
- #endregion includes
- Global $MYTIMER = TimerInit()
- Global $CURWINDOW
- Global $PID
- Global $OPENMEM
- Global $BASEADDR = 0
- Global $HACKSTATUS = -1
- Global $STATICOFFSET = Dec("00FCFE04")
- #region ### START Koda GUI section ### Form=
- $FORM1 = GUICreate("Unlimited Dodge Hack", 336, 122, 192, 124)
- $LABEL1 = GUICtrlCreateLabel("Free Dodge Hack - Allows you to dodge regardless of your stamina.", 8, 16, 321, 17)
- $LABEL2 = GUICtrlCreateLabel("Hack Status: ", 40, 56, 69, 17)
- $BUTTON_ABOUT = GUICtrlCreateButton("About", 240, 88, 75, 25, $WS_GROUP)
- $BUTTON_TOGGLE = GUICtrlCreateButton("Toggle Hack", 136, 88, 75, 25, $WS_GROUP)
- $LABEL_STATUS = GUICtrlCreateLabel("Off", 120, 56, 18, 17)
- GUICtrlSetColor($LABEL_STATUS, 16711680)
- $BUTTON_ATTACH = GUICtrlCreateButton("Attach", 32, 88, 75, 25, $WS_GROUP)
- GUISetState(@SW_SHOW)
- #endregion ### END Koda GUI section ###
- Func WRITESTAMINA()
- $CHECK = TimerDiff($MYTIMER)
- If ($CHECK > 100) Then
- $STAMINA = _MEMORYREAD("0x" & Hex($BASEADDR + $STATICOFFSET), $OPENMEM, "int")
- $STAMINA = _MEMORYREAD($STAMINA + Dec("C"), $OPENMEM, "int")
- $STAMINA = _MEMORYREAD($STAMINA + Dec("50"), $OPENMEM, "int")
- _MEMORYWRITE($OPENMEM, $STAMINA + Dec("218"), 120, "int")
- $MYTIMER = TimerInit()
- EndIf
- EndFunc
- While 1
- $NMSG = GUIGetMsg()
- Switch $NMSG
- Case $GUI_EVENT_CLOSE
- Exit
- Case $FORM1
- Case $FORM1
- Case $FORM1
- Case $FORM1
- Case $LABEL1
- Case $LABEL2
- Case $BUTTON_ABOUT
- MsgBox(0, "About", "Author: Pinny@Ownedcore" & @CRLF & "GangstaliciousJpres@ElitePVPERS" & @CRLF & "Donations/Questions?" & @CRLF & "Gangstaliciousbot@gmail.com")
- Case $BUTTON_TOGGLE
- If ($HACKSTATUS = 0) Then
- $HACKSTATUS = 1
- MsgBox(0, "Enabled", "Hack Enabled")
- GUICtrlSetData($LABEL_STATUS, "On")
- GUICtrlSetColor($LABEL_STATUS, 65280)
- ElseIf ($HACKSTATUS = 1) Then
- $HACKSTATUS = 0
- MsgBox(0, "Disabled", "Hack Disabled")
- GUICtrlSetData($LABEL_STATUS, "Off")
- GUICtrlSetColor($LABEL_STATUS, 16711680)
- ElseIf ($HACKSTATUS = -1) Then
- MsgBox(0, "Error", "You must hit the attach button before trying to toggle the hack. Make sure your game is open before you try to attach.")
- EndIf
- Case $LABEL_STATUS
- Case $BUTTON_ATTACH
- If ($BASEADDR > 0) Then
- MsgBox(4096, "Notice", "Hack is already attached to a process. You don't need to attach it more than once.")
- EndIf
- $CURWINDOW = WinGetTitle("Elder Scrolls Online")
- $PID = WinGetProcess($CURWINDOW)
- $OPENMEM = _MEMORYOPEN($PID)
- $BASEADDR = _MEMORYMODULEGETBASEADDRESS($PID, "eso.exe")
- If ($BASEADDR > 0) Then
- MsgBox(0, "Attached", "Hack Attached")
- $HACKSTATUS = 0
- Else
- MsgBox(4096, "Failure", "Failed to attach to the game. Is TESO running?")
- EndIf
- EndSwitch
- If ($HACKSTATUS = 1) Then
- WRITESTAMINA()
- EndIf
- WEnd
- ; DeTokenise by myAut2Exe >The Open Source AutoIT/AutoHotKey script decompiler< 2.12 build(197)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement