#NoTrayIcon #Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Icon=Shortcut1.ico #AutoIt3Wrapper_Outfile=InternetShortcutCreator.exe #AutoIt3Wrapper_Compression=4 #AutoIt3Wrapper_UseX64=N #AutoIt3Wrapper_Res_Description=Create Internet Shortcut on desktop by pressing middle mouse button or F10 when Mouse is over browser adress bar. #AutoIt3Wrapper_Res_Fileversion=1.0.1.5 #AutoIt3Wrapper_Res_LegalCopyright=wakillon 2013 #AutoIt3Wrapper_Res_Field=AutoIt Version|%AutoItVer% #AutoIt3Wrapper_Res_Field=Compile date|%longdate% %time% #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #Region ;************ Includes ************ #Include #include #Include #EndRegion ;************ Includes ************ If Not _Singleton ( @ScriptName, 1 ) Then Exit Opt ( 'TrayMenuMode', 1 ) Opt ( 'TrayOnEventMode', 1 ) Opt ( 'GUICloseOnESC', 0 ) Opt ( 'MustDeclareVars', 1 ) Global Const $OCR_NORMAL = 32512 Global Const $OCR_IBEAM = 32513 Global Const $SPI_SETCURSORS = 0x0057 Global Const $SHCNE_ASSOCCHANGED = 0x8000000 Global Const $ASSOCSTR_EXECUTABLE = 2 Global Const $SHCNF_IDLIST = 0x00000000 Global Const $TRAY_CHECKED = 1 Global Const $TRAY_UNCHECKED = 4 Global Const $TRAY_ENABLE = 64 Global $tStruct = DllStructCreate ( $tagPOINT ) Global $hAncestorWindow, $hControl, $hRealControl Global $aMousePos, $aPosOld, $iCursorSet Global $sChr = '!', $hUser32DLL = DllOpen ( 'user32.dll' ) Global $sVersion = _ScriptGetVersion () Global $sSoftTitle = 'InternetShortcutCreator v' & $sVersion & ' by wakillon 2013' Global $sTempDir = @TempDir & '\ISC' Global $sCursorPath1 = $sTempDir & '\Blue Link.cur', $sCursorPath2 = $sTempDir & '\Blue Link3.cur' Global $sRegTitleKey = 'InternetShortcutCreator' Global $sRegKeySettings = 'HKCU' & StringReplace ( StringReplace ( @OSArch, 'x64', '64' ), 'x86', '' ) & '\Software\' & $sRegTitleKey & '\Settings' Global $hWnd, $sControlClassName, $sControlClassNameNN, $sControlText, $iUrlFound, $iMute, $iDisableCursorChange, $sFavIcon, $iRefreshDesktopAuto, $iSearching=0, $sControlText2 _FilesInstall () _TrayMenuSet () AdlibRegister ( '_MouseIsOverAdressBar', 250 ) #Region ------ Main Loop ------------------------------ While 1 If _KeyIsPressed ( '04' ) Or _KeyIsPressed ( '79' ) Then ; middle mouse button or F10 key ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sControlClassName : ' & $sControlClassName & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sControlClassNameNN : ' & $sControlClassNameNN & @Crlf ) $sControlText2 = '' Do Sleep ( 20 ) Until $sControlText $sControlText2 = $sControlText If $sControlClassNameNN = 'Chrome_OmniboxView1' Or $sControlClassNameNN = 'Chrome_AutocompleteEditView1' Or $sControlClassNameNN = 'YandexBrowser_OmniboxView1' Then If StringLeft ( $sControlText2, 8 ) <> 'https://' Then $sControlText2 = 'http://' & $sControlText2 ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sControlText2 : ' & $sControlText2 & @Crlf ) $iUrlFound = 0 If StringLen ( $sControlText2 ) < 8 Then $sControlText2 = ClipGet () If $sControlText2 > 8 Then If StringLeft ( $sControlText2, 8 ) <> 'https://' Or StringLeft ( $sControlText2, 7 ) <> 'http://' Then $sControlText2 = 'http://' & $sControlText2 $iUrlFound = 1 Else $iUrlFound = 0 EndIf Else $iUrlFound = 1 EndIf Else If $sControlClassNameNN = 'UnknowClassNN' Then $sControlText2 = ClipGet () EndIf Switch StringLeft ( $sControlText2, 7 ) Case 'http://', 'https:/' $iUrlFound = 1 Case Else $iUrlFound = 0 EndSwitch If $iUrlFound Then $iSearching = 1 If Not $iMute Then SoundPlay ( $sTempDir & '\006C_0003.wav' ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sControlText2 : ' & $sControlText2 & @Crlf ) Local $hTimerInit1 = TimerInit () Local $hTimerInit2 = TimerInit () _InternetShortcutCreator ( $sControlText2 ) If @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] @error : ' & @error & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] TimerDiff _InternetShortcutCreator : ' & TimerDiff ( $hTimerInit2 ) & @Crlf ) $iSearching = 0 InternalChrChange () Do Sleep ( 250 ) Until Not ( _KeyIsPressed ( '04' ) And _KeyIsPressed ( '7B' ) ) If $iRefreshDesktopAuto Then DllCall ( 'shell32.dll', 'none', 'SHChangeNotify', 'long', $SHCNE_ASSOCCHANGED, 'uint', $SHCNF_IDLIST, 'ptr', 0, 'ptr', 0 ) ; refresh desktop icons. EndIf EndIf Sleep ( 50 ) WEnd #EndRegion --- Main Loop ------------------------------ Func _006C_0003Wav ( $sFileName, $sOutputDirPath, $iOverWrite=0 ) Local $sFileBin = "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "OBCwEEMQphDDDAAFPP4o9Q/v8+3x7Afshu5I7/jvmPAp8aXwLfCa8DfwhPXa/dYGiw0zEYcUiRWfFCASXhGuEA4QnxAbEJMQABGdEFAL8gDU+HLxbO007FDtTuwN7+LvpPD075TwJfGh8CnwTPIg+PUBVwkMELQT0BTOE+QSDxJNEZ0Q/Q+OEAoQghDvEKkMQwUv/ab0UvFH7DHtXOwe7S7vzu9f8OPwa/DY8HXwG/Ds9OD9aQUtDTgS9xQiFGATsBIQEn8R+xCDEBYQeRDTEIEQIQy+Alr60fF97nfrYew27fjtCPCo8Bfwm/AT8abwQ/C88o334QBDCPgOoBK8E74U1BP/ErkQCRCpEBgQnBAkEJEQEg0GBvL9afXd79fs7evC7ITtNO4U8KXwKfGx8ETwp/BN8B71Ev6bBV8NahJUEykUZxO3EhcShhECEYoQHRCAENoQiBAoDMUCYfrY8YTufuto7D3t/+0P8K/wHvCi8BrxrfBK8A7y3/YzAIkKjw43EosViRSfE8oSCBJYEbgQJxCrEDMQoBAhDRUGAf549ezv5uz869Hsk+1D7iPwtPAw8KjwO/Ce8ETwFfUJ/pIFVg1hEksTIBReE64SDhJ9EfkQgRAUEHcQ0RB/EB8MvAJY+s/xe+5161/sNO327QbwpvAV8JnwEfGk8EHwBfLW9ioAgAqGDi4SghWAFJYTwRL/EU8RrxAeEKIQKhCXEBgNDAb4/W/14+/d7PPryOyK7TruGvCr8Cfwn/Ay8JXwO/AM9QD9iQVNDVgSQhMXFNkUyRIpEpgRCxCDEBYQeRDTEIEQIQy+Alr60fF97nfrYew27fjtCPCo8Bfwm/AT8abwQ/AH8tj2LACOB0MO6xE/FT0UUxN+ErwRDBFsENsPXxDXEGoQ6wzfBcv9QvW277Dsxuub7F3tbe8N8J7wIvGq8D3woPBG8Bf1C/6UBVgNYxJNEyIU5BTUEjQSgBAEEYwQHxCCENwQihAqDMcCY/ra8YbugOtq7D/tAe6x7pHwIvGe8BbxqfBG8Ary2/YvAJEHRg7uEUIVQBRWE4ESvxEPEW8Q3g9iENoQbRC1DWgICv7s9X7xeO1A7FztXu5I7x3w3/Av8M/wPvDC8Erw2fWr/OsDrwu6EHkTThSME9wSPBKIEAwRlBAnEIoQ5BCSEDIMzwJr+uLxju6I63LsR+0J7rnumfAI8IzwBPGX8DTwQ/EU9mgAvglzEBsUNxU1FEsTdhK0EQQRZBDTD1cQzxBiEKoNXQj//eH1c/Ft7TXsUe1T7j3vEvDU8CTwxPAz8LfwP/Dz9Bb92gPuDJYQ6hPsFAIULRNrErsRGxGKEAYQfhDrEIgQOwthAf345PKQ74rsoOt17Lvua+8L8JzwIPGo8DvwnvCt8X720gA0B+kNAhQeFRwUMhNdEpsR6xBLELoPPhC2EEkQkQ1ECGr/Bvbt75nsl+uB7FbtGO4o8MjwN/C78EPwsPBN8OX0CP3MA+AMiBDcE94U9BMfE10SrRENEXwQ+A9wEN0QehAtC1MBnvsV88Hvu+zR66bsaO147xjwqfAt8bXwSPCr8AXx1vUqAIAJNRDdE/kU9xMNEzgSdhHGECYQtxAzEKsQPhCGDTkIX//79eLvjuyM63bsS+0N7h3wvfAs8LDwOPCl8ELw2vT9/MED0Ao6EbkTexTLEysTdxHzEHsQDhBxEBcQaRCzELcMLgQz+tHyy+6T7Xfsee1j7jjv+u+q8ErxufA18K3wGvHu9hgAoQdlD2sSKhVVFJMT4xIDEXIQ7g9mEPkPXBC2ENIN/gfU/0v3v/G07Mrrn+xh7RHu8e+C8AbxjvD78JjwPvAP9aL8tgTPClsQYRNLFHYTtBIEEmQR0xBPEMcQWhC9EGMQkgueAhX7UfNG7lzth+xJ7fntme5N8NHwWfDG8GPwCfD/8F/1wv4mB68PAxMFFO8UGhRYE0gRqBAXEJsQIxCQEPMQeg6pCVUA//X58VHuNe0z7B3t8u048OjwSPDZ8FXwzfBg8Kb0DPwgBKkM/Q8DE+0TwhR8EswRLBGbEBcQjxAiEIUQ3xAODBoDkfvN88LuA+zY7JrtSu7q7nvvCPGQ8P3wmvBA8JLw8vRV/rkGQg+WEpwVshTdExsTCxFrENoPXhDmD1MQthA9DmwJGAC2+AHyWe497TvsJe367UDw8PBQ8OHwXfDV8GjwrvQU/CgEQQrND9MSkhW9FPsT6xFLEboQNhCuEEEQpBD+EC0MOQOw++zz4e4i7PfsNexF7uXudu8D8Yvw+PCV8DvwjfDt9FD+tAY9D5ESlxWtFNgTFhMGEWYQ9xBzEPsPaBDLEFIOgQktAMv4FvJu7lLtUOw67Q/uVfCl70Xw1vBS8MrwXfCj9An8HQQ2CsIPyBKHFbIU8BPgEUARrxArEKMQNhCZEPMQIgwuA6X74fPW7hfs7Owq7Dru2u6O8ArwgvDv8IzwMvCE8OT0R/6rBjQPiBKOFaQUzxMNE/0QXRDuEGoQ8g9fEMIQ/g4tCtkAg/Z98tXugeuD7G3tQu4E77TvVPDl8GHw2fBs8Ovz9/oLA5QLIBEmFBAVOxR5E8kS6RBYENQPTBC5EFYQsBDfC+sCYvue85Puqe3U7JbtRu7m7nfv++9z8ODwffAj8HXw1fQ4/pwGJQ95En8VlRTAE/4S7hBOEN8QWxDjD1AQsxDvDh4KygB09m7yxu5y63TsXu0z7vXupe9F8NbwUvDK8F3w3PPo+vwChQsRERcUARUsFGoTuhLaEEkQzRBVEMIQXxC5EOgL9AJr+6fznO6y7d3sn+1P7u/ugO8E8Hzw6fCG8CzwfvDe9EH+pQYuD4ISiBWeFMkTBxP3EFcQ6BBkEOwPWRC8EPgOJwrTAH32d/LP7nvrfexn7Tzu/u6u707w3/Bb8NPwZvDl8/H6BQOOCxoRIBQKFTUUcxPDEuMQUhDWEF4QyxBoEMIQ8Qv9AnT7sPOl7rvt5uwk7DTu1O5l7/LwevDn8ITwKvB88Nz0P/6jBiwPgBKGFZwUxxMFE1USdRDkD2gQ8A9dEMAQ/A4rCtcAdfnA8hjvxOvG7LDthe5H7/fvl/Ao8aTwLPCZ8Bj0JPs4A8ELTRFTFD0VaBSmE5YR9hBlEOEPWRDGEGMQvRDsC/gCb/ur86Dutu3h7B/sL+7P7mDv7fB18OLwf/Al8Hfw1/Q6/p4GJw97EoEVlxTCEwATUBJwEN8PYxDrD1gQuxD3DiYK0gBw+bvyE++/68Hsq+2A7kLv8u+S8CPxn/An8JTwTPOZ+PcCFQuDD4kTwRSlE6MSuRHkECIQ0hAyEMMQPxC3ECgLVgQW/VL1R/CI7bPsde0l7sXuefD1723w2vB38B3wb/DP9DL+lgavDDsSQRVXFIITwBIQEnAR3xBbEOMPUBCzEKQP0wp/ACn3I/MK7e7r8Oza7a/uce8h8MHwMPC08DzwqfBh8674DAMqC5gPnhPWFLoTuBLOEfkQNxDnEEcQ2BBUEMwQGAz1AzH9HfR18CHtH+wJ7d7toO5Q7/DvgfAF8Y3wIPCD8ND1qv9fBegNPBFCFCwVVxQREmERwRAwELQQPBCpEEYQ7A8bC8cAcfe88BTt+Ov67OTtue577yvwy/A68L7wRvCz8GvzuPiSAfYKDxFjFGUVexSmE+QS1BA0EMUQQRC5EEwQrxAXDPQDMP0c9HTwIO0e7Ajt3e2f7k/v7++A8ATxjPAf8ILwz/Wp/14F5w07EUEUKxVWFJQThBHkEFMQzw9HELQQURD3DyYL0gB898fwH+0D7AXt7+3E7obvNvDW8EXwyfBR8L7wdvPD+J0BAQsaEW4UcBWGFLET7xLfED8Q0BBMEMQQVxC6ECIM/wM7/Sz2wu9D7YHsMe3R7YXvCfCB8O7wi/Dl8JPwSfBF9M78yQYrDjESaROFFIMTmRLEEQIRUhCyD0MQxxBPEOIPDgrkAFv5l/GR7tLrp+xp7Rnu+e+K8A7xlvAD8aDwRvAq8/74KAGxCT0P" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "MvH08aTyRPPV81n00fRk9Mf0bfS/9Mn2xfpOAmcIuwvBDqsP1g4UDmQNxAwzDLcMPwysDEkMowx2CFcDJP5Q+Ib0dvLW8Wfy6/Jj89DzM/SN9N/0lfRR9I701/fj/vIEhwmxDfcPRw+nDhYOkg0aDa0MSgzwC0IMjAzACyMIYACc+Zb2AfIs8e7xnvI+88/zU/TL9F70wfRn9Ln0w/a/+kgCYQi1C7sOpQ/QDg4OXg2+DC0MsQw5DKYMQwydDBUJ+QIl/lP3lPQV8lPxA/Kj8jTzuPMw9J30APSm9FT0nvSa+AD/CwR1CvQMOg/qD0oPlg0SDZoMLQyQDDYMiAw+DPoLXQiaANb5y/QM8jfx+fGp8knz2vNe9Nb0afTM9HL0xPTO9sr6MAE/CNQMUw8VEGUPxQ40DqcMLwycDDkMkwxBDIsMFwn7Aif+2fgI9Cjyl/Eb8pPy2/M+9Jj06vSg9OT0p/Rv9Gz31v0WBaIKqA2SDmcPpQ71DVUNxAxADMgLNQyYDD4M7AuMB6oAQPts9SbzFvG28Ufyy/Iz9KD0A/Wp9Pv0sfRt9Jj2+PraAEQHbgs4D+gPSA+3DjMOywxeDPsLVQwDDE0MkQz0CEMDcf3c+LL0bPK88Vzy7fJx8+nzVvS59BP1wfR39DP00PeT/x8EKgm/DZQOVg+mDgYOdQ3xDHkMDAxvDBUMZwwdDCEIuwCs+hf2mPNS8QLyovIz87fzL/Sc9P/0pfRT9J30efYW+tkAZQZwCy8OBA/GDxYPNg2lDCEMmQwsDI8MNQyHDFIJwwPx/Yf3CPXC8hLycvEm86rzIvSP9PL0mPTq9KD0XPT597P+HQTxCbsNyw8rD5oOFg6eDVYMuQxfDA0MVwybDF4MFQkJAvr7kPUR88vwe/Eb8qzyOfSx9B71u/QV9cP0efRV9vL5tQBBBkwLCw7gDqIP8g5SDp4MGgySDCUMiAwuDIAMSwm8A+r9Vfkr9eXy1fB18Qbyk/ML9Hj02/SB9NP0ifRF9OL3nP4GBNoJpA20DxQPgw7/DYcNGg23DF0MCwxVDJkMXAwTCQcC+PuO9Q/zyfB58RnyqvI39K/0HPW59BP1wfR39FP28PmzAD8GSgsJDt4OoA/wDlAOnAwYDJAMIwyGDCwMfgxJCboD6P1T+Sn14/LT8HPxBPKR8wn0dvTZ9H/00fSH9EP04Pea/gQE2AmiDbIPEg+BDv0NhQ0YDbUMWwwJDFMMlwxaDBEJBQL2+4z1DfNL8pvxO/LM8lDzuPRL9K70CPW29Gz0wPVd+SAA5AfqCqkNKBBmD7YOFg6FDQENiQwcDH8MJQx3DNcJigS4/k74JPTe8S7xzvFf8uPyS/S49Bv1wfRv9Ln0dfQS+Mz+NgQKCtQNhA4kD5MODw6XDSoNAAxaDAgMUgyWDFkMEAkEAvX7i/UM80rymvE68svyT/O39Er0rfQH9bX0a/S/9Vz5HwDjB+kKqA0nEGUPtQ4VDoQNAA2IDBsMfgwkDHYM1gmJBLf+Tfgj9N3xLfHN8V7y4vJK9Lf0GvXA9G70uPR09BH4y/41BAkK0w2DDiMPkg4ODpYNKQ3GDGwMGgxkDKgMawwiCRYCB/yd9R7z2PCI8SjyufJG9L70UfS09A71vPRy9Mb1Y/kmALIFvQp8DfsPOQ+JDukNWA3UDFwM7wtSDKwMWgy6CW0Em/4x+Af0wfER8bHxQvLP80f0tPQX9b30a/S19HH0DvjI/jIEBgrQDYAOIA+PDgsOkw0mDcMMaQwXDGEMpQxoDB8JEwIE/Jr1G/NZ8qnxSfLa8l7zxvRZ9Lz0FvXE9Hr0zvVr+S4AugXFCq8LhAzCC7IJ0gdBB7QFTATfA3wDbQIbAjwB6AAlAO0AIADyABwA9gA=" $sFileBin = Binary ( _Base64Decode ( $sFileBin ) ) If Not FileExists ( $sOutputDirPath ) Then DirCreate ( $sOutputDirPath ) If StringRight ( $sOutputDirPath, 1 ) <> '\' Then $sOutputDirPath &= '\' Local $sFilePath = $sOutputDirPath & $sFileName If FileExists ( $sFilePath ) Then If $iOverWrite = 1 Then If Not Filedelete ( $sFilePath ) Then Return SetError ( 2, 0, $sFileBin ) Else Return SetError ( 0, 0, $sFileBin ) EndIf EndIf Local $hFile = FileOpen ( $sFilePath, 16+2 ) If $hFile = -1 Then Return SetError ( 3, 0, $sFileBin ) FileWrite ( $hFile, $sFileBin ) FileClose ( $hFile ) Return SetError ( 0, 0, $sFileBin ) EndFunc ;==> _006C_0003Wav () Func _ArrayFindAll ( Const ByRef $avArray, $vValue, $iStart = 0, $iEnd = 0, $iCase = 0, $iCompare = 0, $iSubItem = 0 ) $iStart = _ArraySearch ( $avArray, $vValue, $iStart, $iEnd, $iCase, $iCompare, 1, $iSubItem ) If @error Then Return SetError ( @error, 0, -1 ) Local $iIndex = 0, $avResult[UBound ( $avArray )] Do $avResult[$iIndex] = $iStart $iIndex += 1 $iStart = _ArraySearch ( $avArray, $vValue, $iStart + 1, $iEnd, $iCase, $iCompare, 1, $iSubItem ) Until @error ReDim $avResult[$iIndex] Return $avResult EndFunc ;==> _ArrayFindAll () Func _ArraySearch ( Const ByRef $avArray, $vValue, $iStart = 0, $iEnd = 0, $iCase = 0, $iCompare = 0, $iForward = 1, $iSubItem = -1 ) If Not IsArray ( $avArray ) Then Return SetError ( 1, 0, -1 ) If UBound ( $avArray, 0 ) > 2 Or UBound ( $avArray, 0 ) < 1 Then Return SetError ( 2, 0, -1 ) Local $iUBound = UBound ( $avArray ) - 1, $iStep = 1, $iCompType = False If $iEnd < 1 Or $iEnd > $iUBound Then $iEnd = $iUBound If $iStart < 0 Then $iStart = 0 If $iStart > $iEnd Then Return SetError ( 4, 0, -1 ) If Not $iForward Then Local $iTmp = $iStart $iStart = $iEnd $iEnd = $iTmp $iStep = -1 EndIf If $iCompare = 2 Then $iCompare = 0 $iCompType = True EndIf Switch UBound ( $avArray, 0 ) Case 1 If Not $iCompare Then If Not $iCase Then For $i = $iStart To $iEnd Step $iStep If $iCompType And VarGetType ( $avArray[$i] ) <> VarGetType ( $vValue ) Then ContinueLoop If $avArray[$i] = $vValue Then Return $i Next Else For $i = $iStart To $iEnd Step $iStep If $iCompType And VarGetType ( $avArray[$i] ) <> VarGetType ( $vValue ) Then ContinueLoop If $avArray[$i] == $vValue Then Return $i Next EndIf Else For $i = $iStart To $iEnd Step $iStep If StringInStr ( $avArray[$i], $vValue, $iCase ) > 0 Then Return $i Next EndIf Case 2 Local $iUBoundSub = UBound ( $avArray, 2 ) - 1 If $iSubItem > $iUBoundSub Then $iSubItem = $iUBoundSub If $iSubItem < 0 Then $iSubItem = 0 Else $iUBoundSub = $iSubItem EndIf For $j = $iSubItem To $iUBoundSub If Not $iCompare Then If Not $iCase Then For $i = $iStart To $iEnd Step $iStep If $iCompType And VarGetType ( $avArray[$i][$j] ) <> VarGetType ( $vValue ) Then ContinueLoop If $avArray[$i][$j] = $vValue Then Return $i Next Else For $i = $iStart To $iEnd Step $iStep If $iCompType And VarGetType ( $avArray[$i][$j] ) <> VarGetType ( $vValue ) Then ContinueLoop If $avArray[$i][$j] == $vValue Then Return $i Next EndIf Else For $i = $iStart To $iEnd Step $iStep If StringInStr ( $avArray[$i][$j], $vValue, $iCase ) > 0 Then Return $i Next EndIf Next Case Else Return SetError ( 7, 0, -1 ) EndSwitch Return SetError ( 6, 0, -1 ) EndFunc ;==> _ArraySearch () Func _Base64Decode ( $input_string ) ; by trancexx Local $struct = DllStructCreate ( 'int' ) Local $a_Call = DllCall ( 'Crypt32.dll', 'int', 'CryptStringToBinary', 'str', $input_string, 'int', 0, 'int', 1, 'ptr', 0, 'ptr', DllStructGetPtr ( $struct, 1 ), 'ptr', 0, 'ptr', 0 ) If @error Or Not $a_Call[0] Then Return SetError ( 1, 0, '' ) Local $a = DllStructCreate ( 'byte[' & DllStructGetData ( $struct, 1) & ']' ) $a_Call = DllCall ( 'Crypt32.dll', 'int', 'CryptStringToBinary', 'str', $input_string, 'int', 0, 'int', 1, 'ptr', DllStructGetPtr ( $a ), 'ptr', DllStructGetPtr ( $struct, 1 ), 'ptr', 0, 'ptr', 0 ) If @error Or Not $a_Call[0] Then Return SetError ( 2, 0, '' ) Return DllStructGetData ( $a, 1 ) EndFunc ;==> _Base64Decode () Func _Bluelink3Cur ( $sFileName, $sOutputDirPath, $iOverWrite=0 ) Local $sFileBin = "0xFCB100000002000100202000000009000000A8106800001600382800180090008E40001800740014000080006CA12D00020216050006DE00065AFF3406302F750A7F63000387801111A4FF2B2BE80E03F81717DB9601811B8101B83D827DD7953DA143801FE1BC7DB49D3DD9217FC46EEE60E93ED921F560F13ED820D5FDEC1E06F93ECD00ED60FF3EEE0F7F30FF7F1F7F00740061097F307F1F7F007700F80606417E917F1F7F007F307F1FC7FF097F006D001616D37E30610FD77F1F7F00F80FFF7C1F916D067F0BF77F00FD0F640FBAF1567F0B7F00F90FFD600236710FE5057F0B776EFF04FF07FBBF07B602BAFF077F053F01F62E3F05C7FF07F1077A021212B0B5077111DF7F053F013F013F013501BAFF07F317FFF88AB207BF097F053F013F013C50FE07DF0F00BF117F053F013F0116F633F81CFE1A5F060F00FF07BF063F01BF1E3000FEFD7407BF070F00FF07BF06BF06B406FFB942B416BF3E0F000F00FF077F15BF06FFF523F90E32240F000F000F00FF07F907FFBF06BF060F000F000F00FF07FF077F15FF0F000F000F000F00FF07FF07FF070F00FF0F000F000F000F00FF07FF070F000F00FF0F000F000F00FF07FF070F000F000F00FF0F000F00FF07FF070F000F000F000F00FF0F00BF693F5C0F000F000F000F000F00FFF907F168BD699F020F000F000F000F00B5FE073430009E783EB100315B0241B042003A00FF00007F0106FE0903063FFC0406F800001FA50106F003060FE00806C00006EE800006007C0606020003003F0103201FFE0001FF03033FFF08FE07FF1A03" $sFileBin = Binary ( _LzntDecompress ( $sFileBin ) ) If Not FileExists ( $sOutputDirPath ) Then DirCreate ( $sOutputDirPath ) If StringRight ( $sOutputDirPath, 1 ) <> '\' Then $sOutputDirPath &= '\' Local $sFilePath = $sOutputDirPath & $sFileName If FileExists ( $sFilePath ) Then If $iOverWrite = 1 Then If Not Filedelete ( $sFilePath ) Then Return SetError ( 2, 0, $sFileBin ) Else Return SetError ( 0, 0, $sFileBin ) EndIf EndIf Local $hFile = FileOpen ( $sFilePath, 16+2 ) If $hFile = -1 Then Return SetError ( 3, 0, $sFileBin ) FileWrite ( $hFile, $sFileBin ) FileClose ( $hFile ) Return SetError ( 0, 0, $sFileBin ) EndFunc ;==> _Bluelink3Cur () Func _Bluelinkcur ( $sFileName, $sOutputDirPath, $iOverWrite=0 ) Local $sFileBin = "0xFBB100000002000100202000000009000000A8106800001600382800180090008E40001800740014000080006CA12D001A0603050006DE00065AFF3406302F750A7F6300038780BE800FFFF0B4470E03F8EDA6269601811B8101B83D827DD7953DA143801FE1BC7DB49D3DD9217FC46EEE60E93ED921F560F13ED820D5FDEC1E06F93ECD00ED60FF3EEE0F7F30FF7F1F7F00740061097F307F1F7F007700F833221F7E917F1F7F007F307F1FE7FF097F006E61A31C7E30610F7F1FEB7F00F80FFF7C1F916D067F0B7F00FBFD0F640FBAF1567F0B7F00F90F6002FE36710FE5057F0B776EFF04FF07BF07FDB602BAFF077F053F01F62E3F05FF07E3F1077A02CB8911B50771117F05EF3F013F013F013501BAFF07F317F88AFFB207BF097F053F013F013C50FE070F006FBF117F053F013F0103F633F81C1A7F5F060F00FF07BF063F01BF1E3000FDFF7407BF070F00FF07BF06BF06B406B942FFB416BF3E0F000F00FF077F15BF06F523FFF90E32240F000F000F00FF07F907BF06FFBF060F000F000F00FF07FF077F150F00FF0F000F000F00FF07FF07FF070F000F00FF0F000F000F00FF07FF070F000F000F00FF0F000F00FF07FF070F000F000F000F00FF0F00FF07FF070F000F000F000F000F00FFBF693F5C0F000F000F000F000F00F907FFF168BD699F020F000F000F000F00FE075A3430009E783EB100315B0241B042003A00FF00007F0106FE0903063FFC0406F800001FA50106F003060FE00806C00006EE800006007C0606020003003F0103201FFE0001FF03033FFF08FE07FF1A03" $sFileBin = Binary ( _LzntDecompress ( $sFileBin ) ) If Not FileExists ( $sOutputDirPath ) Then DirCreate ( $sOutputDirPath ) If StringRight ( $sOutputDirPath, 1 ) <> '\' Then $sOutputDirPath &= '\' Local $sFilePath = $sOutputDirPath & $sFileName If FileExists ( $sFilePath ) Then If $iOverWrite = 1 Then If Not Filedelete ( $sFilePath ) Then Return SetError ( 2, 0, $sFileBin ) Else Return SetError ( 0, 0, $sFileBin ) EndIf EndIf Local $hFile = FileOpen ( $sFilePath, 16+2 ) If $hFile = -1 Then Return SetError ( 3, 0, $sFileBin ) FileWrite ( $hFile, $sFileBin ) FileClose ( $hFile ) Return SetError ( 0, 0, $sFileBin ) EndFunc ;==> _Bluelinkcur () Func _BrowserGetCurrentURL ( $sServer ) ; modified version of amel27 Switch $sServer Case 'opera', 'firefox', 'iexplore' Local $aServer[1], $aTopic[1], $aItem[1], $aConv[1], $aData[1], $aRet[1] Local $uIdInst = DllStructCreate ( 'dword idInst' ) DllStructSetData ( $uIdInst, 'idInst', 0 ) Local $ret = DllCall ( $hUser32DLL, 'int', 'DdeInitialize', 'ptr', DllStructGetPtr ( $uIdInst ), 'ptr', 0, 'int', 0, 'int', 0 ) If $ret[0] Then Return SetError ( 1, $ret[0], '' ) $aServer = DllCall ( $hUser32DLL, 'int', 'DdeCreateStringHandle', 'int', DllStructGetData ( $uIdInst, 1 ), 'str', $sServer, 'int', 1004 ) ; $CP_WINANSI If $aServer[0] Then $aTopic = DllCall ( $hUser32DLL, 'int', 'DdeCreateStringHandle', 'int', DllStructGetData ( $uIdInst, 1 ), 'str', 'WWW_GetWindowInfo', 'int', 1004 ) ; $CP_WINANSI If $aTopic[0] Then $aItem = DllCall ( $hUser32DLL, 'int', 'DdeCreateStringHandle', 'int', DllStructGetData ( $uIdInst, 1 ), 'str', -1, 'int', 1004 ) ;$CP_WINANSI If $aItem[0] Then $aConv = DllCall ( $hUser32DLL, 'int', 'DdeConnect', 'int', DllStructGetData ( $uIdInst, 1 ), 'int', $aServer[0], 'int', $aTopic[0], 'int', 0 ) If $aConv[0] Then $aData = DllCall ( $hUser32DLL, 'int', 'DdeClientTransaction', 'ptr', 0, 'int', 0, 'int', $aConv[0], 'int', $aItem[0], 'int', 1, 'int', 0x20B0, 'int', 1000, 'ptr', 0 ) ; $XTYP_REQUEST If $aData[0] Then $aRet = DllCall ( $hUser32DLL, 'str', 'DdeAccessData', 'int', $aData[0], 'ptr', 0 ) EndIf EndIf EndIf EndIf Local $err = DllCall ( $hUser32DLL, 'int', 'DdeGetLastError', 'int', DllStructGetData ( $uIdInst, 1 ) ) If $aData[0] Then DllCall ( $hUser32DLL, 'int', 'DdeFreeDataHandle', 'int', $aData[0] ) If $aConv[0] Then DllCall ( $hUser32DLL, 'int', 'DdeFreeDataHandle', 'int', $aConv[0] ) If $aItem[0] Then DllCall ( $hUser32DLL, 'int', 'DdeFreeDataHandle', 'int', $aItem[0] ) If $aTopic[0] Then DllCall ( $hUser32DLL, 'int', 'DdeFreeDataHandle', 'int', $aTopic[0] ) If $aServer[0] Then DllCall ( $hUser32DLL, 'int', 'DdeFreeDataHandle', 'int', $aServer[0] ) If $err[0] Then Return SetError ( 2, $err[0], '' ) DllCall ( $hUser32DLL, 'int', 'DdeUninitialize', 'int', DllStructGetData ( $uIdInst, 1 ) ) Return StringRegExpReplace ( $aRet[0], '^"([^"]*?)".*', '"\1"' ) Case Else Return SetError ( 3, 0, '' ) EndSwitch EndFunc ;==> _BrowserGetCurrentURL () Func _BrowserGetDefault () Local $sDefautBrowser = _WinAPI_AssocQueryString ( '.html', $ASSOCSTR_EXECUTABLE ) If Not @error Then Return $sDefautBrowser EndFunc ;==> _BrowserGetDefault () Func _BrowserOpenWithDefault ( $sUrl ) Local $sDefaultBrowser = _BrowserGetDefault () If FileExists ( $sDefaultBrowser ) Then ShellExecute ( $sUrl ) Else ShellExecute ( 'iexplore.exe', $sUrl ) EndIf EndFunc ;==> _BrowserOpenWithDefault () Func _ControlGetClassnameNN ( $hControl ) If Not IsHWnd ( $hControl ) Then Return SetError ( 1, 0, '' ) Local $hParent = $hControl, $hWnd Do $hWnd = $hParent $hParent = _WinAPI_GetAncestor ( $hWnd, 2 ) Until $hParent = $hWnd Local $aRet = DllCall ( $hUser32DLL, 'int', 'GetClassNameW', 'hwnd', $hControl, 'wstr', '', 'int', 4096 ) Local $aRes = StringRegExp ( WinGetClassList ( $hWnd ), $aRet[2], 3 ) For $i = 0 To UBound ( $aRes ) - 1 If ControlGetHandle ( $hWnd, '', $aRet[2] & ( $i + 1 ) ) = $hControl Then Return $aRet[2] & ( $i + 1 ) Next Return '' EndFunc ;==> _ControlGetClassnameNN () Func _CursorDisableChange () If $iDisableCursorChange = 1 Then $iDisableCursorChange = 0 TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) RegWrite ( $sRegKeySettings, 'DisableCursorChange', 'REG_SZ', 0 ) Else $iDisableCursorChange = 1 TrayItemSetState ( @TRAY_ID, $TRAY_CHECKED ) RegWrite ( $sRegKeySettings, 'DisableCursorChange', 'REG_SZ', 1 ) EndIf EndFunc ;==> _CursorDisableChange () Func _CursorSet ( $sCursorFilePath, $iCursorType ) Local $aNewCur, $aRet $aNewCur = DllCall ( $hUser32DLL, 'int', 'LoadCursorFromFile', 'str', $sCursorFilePath ) If Not @error Then $aRet = DllCall ( $hUser32DLL, 'int', 'SetSystemCursor', 'int', $aNewCur[0], 'int', $iCursorType ) If Not @error Then DllCall ( $hUser32DLL, 'int', 'DestroyCursor', 'int', $aNewCur[0] ) EndIf EndFunc ;==> _CursorSet () Func _Exit () DllClose ( $hUser32DLL ) DllClose ( $hWINHTTPDLL__WINHTTP ) TrayTip ( $sSoftTitle, 'by wakillon', 4, 1 ) Sleep ( 2000 ) TrayTip ( '', '', 1, 1 ) Exit EndFunc ;==> _Exit () Func _FileIconUrlIsTypeValid ( $sFileType ) Switch $sFileType Case 'image', 'icon' Return 1 Case Else Return 0 EndSwitch EndFunc ;==> _FileIconUrlIsTypeValid () Func _FileIsIcon ( $sIcoFilePath ) Local $hFile, $sHeader If Not FileExists ( $sIcoFilePath ) Then Return SetError ( 1, 0, 0 ) If FileGetSize ( $sIcoFilePath ) = 0 Then Return SetError ( 2, 0, 0 ) $hFile = FileOpen ( $sIcoFilePath, 16 ) If $hFile = -1 Then Return SetError ( 3, 0, 0 ) $sHeader = FileRead ( $hFile ) FileClose ( $hFile ) Local $sString = StringReplace ( StringTrimLeft ( $sHeader, 2 ), '00', '' ) If StringLeft ( $sString, 3 ) = '010' Then Return 1 EndFunc ;==> _FileIsIcon () Func _FileIsImage ( $sFilePath ) ;~ Images : 'png' = '89504e47', 'jpg' = 'ffd8', 'gif' = '47494638', 'bmp' = '424d' Local $hFile, $sHeader If Not FileExists ( $sFilePath ) Then Return SetError ( 1, 0, 0 ) If FileGetSize ( $sFilePath ) = 0 Then Return SetError ( 2, 0, 0 ) $hFile = FileOpen ( $sFilePath, 16 ) If $hFile = -1 Then Return SetError ( 3, 0, 0 ) $sHeader = FileRead ( $hFile ) FileClose ( $hFile ) Local $sString = StringReplace ( StringTrimLeft ( $sHeader, 2 ), '00', '' ) ;~ ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sString : ' & StringLeft ( $sString, 30 ) & @Crlf ) If StringLeft ( $sString, 8 ) = '89504E47' Then Return 1 ; png If StringLeft ( $sString, 8 ) = '47494638' Then Return 1 ; gif If StringLeft ( $sString, 4 ) = 'ffd8' Then Return 1 ; jpg If StringLeft ( $sString, 4 ) = '424d' Then Return 1 ; bmp EndFunc ;==> _FileIsImage () Func _FileNameClean ( $sString ) Return StringStripWS ( StringStripCR ( StringReplace ( StringRegExpReplace ( StringRegExpReplace ( BinaryToString ( StringToBinary ( $sString, 4 ), 4 ), '[*?\\/|:<>"]', ' ' ), '(' & ' ' & '+)', ' ' ), @LF, ' ' ) ), 7 ) EndFunc ;==> _FileNameClean () Func _FilePathFindFree ( $sPath ) Local $i, $sNewPath Do $sNewPath = _FilePathInsertBetweenNameAndExt ( $sPath, $i ) $i+=1 Until Not FileExists ( $sNewPath ) Return $sNewPath EndFunc ;==> _FilePathFindFree () Func _FilePathInsertBetweenNameAndExt ( $sPath, $sStringToInsert ) Local $szDrive, $szDir, $szFName, $szExt, $TestPath $TestPath = _PathSplit ( $sPath, $szDrive, $szDir, $szFName, $szExt ) Return $szDrive & $szDir & $szFName & $sStringToInsert & $szExt EndFunc ;==> _FilePathInsertBetweenNameAndExt () Func _FilesInstall () If Not FileExists ( $sTempDir ) Then DirCreate ( $sTempDir ) _Bluelinkcur ( 'Blue Link.cur', @TempDir & '\ISC', 1 ) _Bluelink3Cur ( 'Blue Link3.cur', @TempDir & '\ISC', 1 ) _Shortcut1Ico ( 'Shortcut1.ico', @TempDir & '\ISC', 1 ) _006C_0003Wav ( '006C_0003.wav', @TempDir & '\ISC', 1 ) EndFunc ;==> _FilesInstall () Func _Icons_Bitmap_CreateSolidBitmap ( $iColor, $iWidth, $iHeight ); by Yashield Local $hDC, $hMemDC, $tRect, $hBitmap, $hBrush, $tRect = DllStructCreate ( $tagRECT ) DllStructSetData ( $tRect, 1, 0 ) DllStructSetData ( $tRect, 2, 0 ) DllStructSetData ( $tRect, 3, $iWidth ) DllStructSetData ( $tRect, 4, $iHeight ) $hDC = _WinAPI_GetDC ( 0 ) $hMemDC = _WinAPI_CreateCompatibleDC ( $hDC ) $hBitmap = _WinAPI_CreateCompatibleBitmap ( $hDC, $iWidth, $iHeight ) _WinAPI_SelectObject ( $hMemDC, $hBitmap ) _WinAPI_ReleaseDC ( 0, $hDC ) $hBrush = _WinAPI_CreateSolidBrush ( _Icons_System_SwitchColor ( $iColor ) ) If Not _WinAPI_FillRect ( $hMemDC, DllStructGetPtr ( $tRect), $hBrush ) Then _WinAPI_DeleteObject ( $hBitmap ) $hBitmap = 0 EndIf _WinAPI_DeleteObject ( $hBrush ) _WinAPI_DeleteDC ( $hMemDC ) Return $hBitmap EndFunc ;==> _Icons_Bitmap_CreateSolidBitmap () Func _Icons_Bitmap_GetSize ( $hBitmap ); by Yashield If Not _Icons_Bitmap_IsHBitmap ( $hBitmap ) Then Return 0 Local $tObj = DllStructCreate ( 'long Type;long Width;long Height;long WidthBytes;ushort Planes;ushort BitsPixel;ptr Bits' ) Local $Ret = DllCall ( 'gdi32.dll', 'int', 'GetObject', 'int', $hBitmap, 'int', DllStructGetSize ( $tObj ), 'ptr', DllStructGetPtr ( $tObj ) ) If @error Or $Ret[0] = 0 Then Return 0 Local $Size[2] = [DllStructGetData ( $tObj, 'Width' ), DllStructGetData ( $tObj, 'Height' )] If $Size[0] = 0 Or $Size[1] = 0 Then Return 0 Return $Size EndFunc ;==> _Icons_Bitmap_GetSize () Func _Icons_Bitmap_IsHBitmap ( $hBitmap ); by Yashield Local $Ret = DllCall ( 'gdi32.dll', 'dword', 'GetObjectType', 'ptr', $hBitmap ) If Not @error And $Ret[0] = 7 Then Return 1 Return 0 EndFunc ;==> _Icons_Bitmap_IsHBitmap () Func _Icons_Bitmap_Load ( $sImage ); by Yashield _GDIPlus_Startup () Local $hImage = _GDIPlus_ImageLoadFromFile ( $sImage ) Local $hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap ( $hImage ) _GDIPlus_ImageDispose ( $hImage ) _GDIPlus_Shutdown () Return $hBitmap EndFunc ;==> _Icons_Bitmap_Load () Func _Icons_Icon_CreateFromBitmap ( $hBitmap ); by Yashield Local $Size = _Icons_Bitmap_GetSize ( $hBitmap ) If $Size = 0 Then Return 0 Local $tICONINFO = DllStructCreate ( $tagICONINFO ) Local $hMask = _Icons_Bitmap_CreateSolidBitmap ( 0, $Size[0], $Size[1] ) Local $hIcon = 0 DllStructSetData ( $tICONINFO, 1, 1 ) DllStructSetData ( $tICONINFO, 2, 0 ) DllStructSetData ( $tICONINFO, 3, 0 ) DllStructSetData ( $tICONINFO, 4, $hMask ) DllStructSetData ( $tICONINFO, 5, $hBitmap ) Local $Ret = DllCall ( $hUser32DLL, 'ptr', 'CreateIconIndirect', 'ptr', DllStructGetPtr ( $tICONINFO ) ) If Not @error And $Ret[0] Then $hIcon = $Ret[0] _WinAPI_DeleteObject ( $hMask ) Return $hIcon EndFunc ;==> _Icons_Icon_CreateFromBitmap () Func _Icons_System_SwitchColor ( $iColor ); by Yashield Return BitOR ( BitAND ( $iColor, 0x00FF00 ), BitShift ( BitAND ( $iColor, 0x0000FF ), -16 ), BitShift ( BitAND ( $iColor, 0xFF0000 ), 16 ) ) EndFunc ;==> _Icons_System_SwitchColor () Func _IconsCacheDelete () TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) Local $sCachePath Switch @OSVersion Case 'WIN_XP' $sCachePath = @UserProfileDir & '\Local Settings\Application Data\IconCache.db' Case Else $sCachePath = @UserProfileDir & '\AppData\Local\IconCache.db' EndSwitch If FileExists ( $sCachePath ) Then If MsgBox ( 262144+4+4096+48, 'Confirm ', 'Explorer must be stopped and restarted to permit Icon Cache deletion.' & @CRLF & _ 'The IconCache.db file will be rebuild at next Windows start.' & @CRLF & @CRLF & 'Continue ?', 12 ) = 6 Then While ProcessExists ( 'explorer.exe' ) ProcessClose ( 'explorer.exe' ) WEnd Do FileDelete ( $sCachePath ) Until Not FileExists ( $sCachePath ) If Not ProcessWait ( 'explorer.exe', 4 ) Then Run ( @WindowsDir & '\explorer.exe' ) EndIf EndIf Else MsgBox ( 262144+4096+16, 'Error', 'IconCache.db file Not found or already deleted !', 5 ) EndIf EndFunc ;==> _IconsCacheDelete () Func _IconsShortcutDirectoryOpen () TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) Local $sIconDir = @TempDir & '\ShortcutIcons' If FileExists ( $sIconDir ) Then ShellExecute ( $sIconDir ) EndFunc ;==> _IconsShortcutDirectoryOpen () Func _InetReadHeader ( $sFileUrl ) ConsoleWrite ( '-->-- [' & StringFormat ( '%03i', @ScriptLineNumber ) & '][' & @HOUR & @MIN & @SEC & '] 1+2*Int(StringLeft ( $sFileUrl, 5 ) = https)+8+16 : ' & 1+2*Int(StringLeft ( $sFileUrl, 5 ) = 'https')+8+16 & @Crlf ) Local $sData = BinaryToString ( InetRead ( $sFileUrl, 1+2*Int(StringLeft ( $sFileUrl, 5 ) = 'https')+8+16 ) ) If StringLen ( $sData ) = 0 Then Return SetError ( 1, 0, '' ) If StringInStr ( $sData, '' ) Then $sData = StringMid ( $sData, StringInStr ( $sData, '' ) ) If StringInStr ( $sData, '' ) Then $sData = StringMid ( $sData, 1, StringInStr ( $sData, '' ) + 6 ) Return SetError ( 0, 0, $sData ) EndFunc ;==> _InetReadHeader () Func _InternetConnectionIsAvailable () If Ping ( 'www.bing.com', 1 ) Or InetRead ( 'http://www.google.com/humans.txt', 19 ) Then Return 1 EndFunc ;==> _InternetConnectionIsAvailable () Func _InternetShortcutCreator ( $sUrl ) ; The easiest way to look inside an .URL file, is to open it inside Notepad. If Not _InternetConnectionIsAvailable () Then Return Local $sTitle='', $sFavIconUrl, $sInternetShortcutPath Local $hTimerInitToal = TimerInit (), $hTimerInit $hTimerInit = TimerInit ( ) Local $sHeader = _WinHttpGetHtmlHeader ( $sUrl ) ConsoleWrite ( @ScriptLineNumber & ' TimerDiff WinHttpGetHtmlHeader : ' & TimerDiff ( $hTimerInit ) & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] 1 StringLen ( $sHeader ) : ' & StringLen ( $sHeader ) & @Crlf ) If StringLen ( $sHeader ) = 0 Then $hTimerInit = TimerInit () $sHeader = _InetReadHeader ( $sUrl ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff InetReadHeader : ' & TimerDiff ( $hTimerInit ) & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] 2 StringLen ( $sHeader ) : ' & StringLen ( $sHeader ) & @Crlf ) If StringLen ( $sHeader ) = 0 Then Return SetError ( 1, 0, '' ) EndIf $sTitle = _WebPageGetTitle ( $sHeader ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sTitle : ' & $sTitle & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sUrl : ' & $sUrl & @Crlf ) Local $aCrackedUrl = _WinHttpCrackUrl ( $sUrl ) If @error Then Return SetError ( 2, 0, '' ) Local $sIconName = StringReplace ( $aCrackedUrl[2], 'www.', '' ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sIconName : ' & $sIconName & @Crlf ) Local $sIconDir = @TempDir & '\ShortcutIcons' If Not FileExists ( $sIconDir ) Then DirCreate ( $sIconDir ) Local $sIconPath = $sIconDir & '\' & $sIconName & '.ico' If $sTitle Then $sTitle = $sIconName & ' - ' & $sTitle $sTitle = _StringAscIICodesRemove ( $sTitle ) $sTitle = _FileNameClean ( $sTitle ) Else $sTitle = $sIconName EndIf ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sTitle : ' & $sTitle & @Crlf ) If Not FileExists ( $sIconPath ) Then $hTimerInit = TimerInit () $sFavIconUrl = _WebPageIsFaviconToRoot ( $sUrl ) If @error Or Not $sFavIconUrl Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff WebPageIsFaviconToRoot None : ' & TimerDiff ( $hTimerInit ) & @Crlf ) $hTimerInit = TimerInit () $sFavIconUrl = _WebPageGetFaviconUrl ( $sUrl, $sHeader ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff WebPageGetFaviconUrl : ' & TimerDiff ( $hTimerInit ) & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFavIconUrl : ' & $sFavIconUrl & @Crlf ) Else ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff WebPageIsFaviconToRoot Ok : ' & TimerDiff ( $hTimerInit ) & @Crlf ) EndIf ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFavIconUrl : ' & $sFavIconUrl & @Crlf ) If Not $sFavIconUrl Then $hTimerInit = TimerInit () $sIconPath = _WebPageGetFavIconByGetfaviconAppspotCom ( $sUrl, $sIconPath ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff WebpageGetFavIconByGetfaviconAppspotCom : ' & TimerDiff ( $hTimerInit ) & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sIconPath : ' & $sIconPath & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] FileGetSize ( $sIconPath ) : ' & FileGetSize ( $sIconPath ) & @Crlf ) If FileGetSize ( $sIconPath ) = 1051 Or FileGetSize ( $sIconPath ) = 1150 Then ; if default icon ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] default icon ! ' & @Crlf ) FileDelete ( $sIconPath ) EndIf EndIf ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] FileExists ( $sIconPath ) : ' & FileExists ( $sIconPath ) & @Crlf ) If $sFavIconUrl Or FileExists ( $sIconPath ) Then If Not FileExists ( $sIconPath ) Then $hTimerInit = TimerInit () InetGet ( $sFavIconUrl, $sIconPath, 1+2+8+16, 0 ) If @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] InetGet @error ; ' & @error & @CRLF ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff InetGet : ' & TimerDiff ( $hTimerInit ) & @Crlf ) EndIf Select Case _FileIsImage ( $sIconPath ) ; convert to icon. ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] file is image' & @Crlf ) $hTimerInit = TimerInit () FileDelete ( $sIconDir & '\tmp.ico' ) FileMove ( $sIconPath, $sIconDir & '\tmp.ico' ) Local $hBitmap, $hIcon $hBitmap = _Icons_Bitmap_Load ( $sIconDir & '\tmp.ico' ) $hIcon = _Icons_Icon_CreateFromBitmap ( $hBitmap ) _WinAPI_SaveHICONToFile ( $sIconPath, $hIcon, FALSE ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] >>>>>>>>> TimerDiff Convert : ' & TimerDiff ( $hTimerInit ) & @Crlf ) Case Not _FileIsIcon ( $sIconPath ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] file is not icon and not image' & @Crlf ) FileDelete ( $sIconPath ) EndSelect If Not FileExists ( $sIconPath ) Then ConsoleWrite ( '>->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] No Favicon Found !' & @Crlf ) EndIf EndIf _TrayTip ( $sSoftTitle, 'Shortcut was Created for' & @CRLF & $sTitle, 1 ) If FileExists ( @DesktopDir & '\' & $sTitle & '.url' ) Then $sInternetShortcutPath = _FilePathFindFree ( @DesktopDir & '\' & $sTitle & '.url' ) Else $sInternetShortcutPath = @DesktopDir & '\' & $sTitle & '.url' EndIf ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sInternetShortcutPath : ' & $sInternetShortcutPath & @Crlf ) Local $hFile = FileOpen ( $sInternetShortcutPath, 2+8 ) ; Write mode erase Local $sString = '[InternetShortcut]' & @CRLF & 'URL=' & $sUrl If FileExists ( $sIconPath ) Then $sString = $sString & @CRLF & 'IconIndex=0' & @CRLF & 'IconFile=' & $sIconPath & @CRLF & 'IDList=' & @CRLF & 'HotKey=0' & @CRLF & '[{000214A0-0000-0000-C000-000000000046}]' & @CRLF & 'Prop3=19,2' ; & @CRLF FileWrite ( $hFile, $sString & @CRLF ) FileClose ( $hFile ) EndFunc ;==> _InternetShortcutCreator () Func _KeyIsPressed ( $sHexKey ) Local $aRet = DllCall ( $hUser32DLL, 'short', 'GetAsyncKeyState', 'int', '0x' & $sHexKey ) If @error Then Return SetError ( @error, @extended, False ) Return BitAND ( $aRet[0], 0x8000 ) <> 0 EndFunc ;==> _KeyIsPressed () Func _LzmaDec ( $Source ) ; by Ward Local $__LZMADLL = @TempDir & '\LZMA.DLL' If Not FileExists ( $__LZMADLL ) Then _Lzmadll ( 'LZMA.DLL', @TempDir ) If @error Then Return SetError ( 1, 0, $Source ) If BinaryLen ( $Source ) < 9 Then Return SetError ( 2, 0, $Source ) Local $Src = DllStructCreate ( 'byte[' & BinaryLen ( $Source ) & ']' ), $Ret DllStructSetData ( $Src, 1, $Source ) $Ret = DllCall ( $__LZMADLL, 'uint:cdecl', 'LzmaDecGetSize', 'ptr', DllStructGetPtr ( $Src ) ) If @Error Then Return SetError ( 3, 0, $Source ) Local $DestSize = $Ret[0] If $DestSize = 0 Then Return SetError ( 4, 0, $Source ) Local $Dest = DllStructCreate ( 'byte[' & $DestSize & ']' ) $Ret = DllCall ( $__LZMADLL, 'int:cdecl', 'LzmaDec', 'ptr', DllStructGetPtr ( $Dest ), 'uint*', $DestSize, 'ptr', DllStructGetPtr ( $Src ), 'uint', BinaryLen ( $Source ) ) If Not @Error Then Return SetExtended ( $Ret[0], DllStructGetData ( $Dest, 1 ) ) Else Return SetError ( 5, 0, $Source ) EndIf EndFunc ;==> _LzmaDec () Func _Lzmadll ( $sFileName, $sOutputDirPath, $iOverWrite=0 ) Local $sFileBin = "0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000D00000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000A343B8DAE722D689E722D689E722D689643ED889E622D689883DD289E522D689E722D789F422D689693DC289E622D689E722D689EF22D689693DC589E322D68952696368E722D6890000000000000000504500004C010300448DAF4B0000000000000000E0000E210B01050C00600000001000000080000090E100000090000000F000000000001000100000000200000400000000000000040000000000000000000100001000000000000002000000000010000010000000001000001000000000000010000000C8F000007000000000F00000C800000000000000000000000000000000000000000000000000000038F100000C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000555058300000000000800000001000000000000000040000000000000000000000000000800000E0555058310000000000600000009000000054000000040000000000000000000000000000400000E055505832000000000010000000F000000002000000580000000000000000000000000000400000C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000332E303300555058210D090208106E62B27EE4412138C300008351000000A4000026030030FFFF77FFC800010053B28CB9060088C82C01516A0859D0E8730230D0E2F85988FFFFFFFF840DFFFEFFFFE2E68B5D088B4D0C8A451085DB7413E3118A1330C20FB6D23284FFFFFFDB15001DFF43E2EF5BC9C20C005589E5FF750CE80300974283C4045DC3FDEDC8650F48C81062536A058F45F8DDFEFFBF4E0C833B0A73088323006A0758EB5A832B0AC745F01D004BDBDB6DB306F45B8D0D50503C1C6A0009F8EDCBB275080802181410538B4536DB7FFFEEC00A505647FC8945FC83030A9C45148943052D6A6BDB76F70953E82A92884309722C15FC9876FD9C6C65145DECF0836D14DD6EFFBF344D108B550C8B0239410573058B04890269EC509EEDB6BB03F45045055108145069105273FF67E77E6D670CC424837DF4027505B659F2CC7D5D5FC9E553817BAEFE777BDBCA381F8B8DEB0F686B016EFFFDFFC2CD3C31C05B02435243204572726F720D0A00CCAE61738F0055B80192435D4090008CBDBB734EE1C7000515C74024000604C9C9D69D2CD9FF06201CC9C9C9C91814100C0FDFDEC908283E7C908D7426A4567F2F2C6CAF55311ACA0F88EE7B1A8B423DF6EEFF0485C0752583FB050F8F8C118D4C1B0E96D3E089B2BD5FBB1A8DB43514BC27062B08E7F97CB73815010A0CFE0010963FCB9FE7721485F6CB4A1885C9A9ED32F67D5A1C6F8E2B207867746DFBB79B240ED1F9178D41107502D1F86B241B1582B59B2C2B5B5EAD7636E81EBABF96060F95C048250CFE150493E977EB885D54022CCF90096FB8021880B50905754B433FDE601FDAC76D3DEB900FBB426B7763EF3E01FE8DB65FDBAD95C3899F536BFF72F66E906F9F83E0E08D484089C217D76E98ED631404F3F089DE100AE57BDB585710730B4DBBC22097C10B420803376F1BDF7F23A4E583EC3C8975F8B9248B4B8985EEDFF87DFC8D7DC860C8F3A5890424E88AECF125CC2EB7CC18F88B89ECB86FB7FB6EEF55BA664357BFDB563F53BB110D0BFFEDC606024601019089D989F84349A9C1C2DBFF6FBAEB0690881C32404239C872F743B2157EE109F962C7DC5F51E98DBF4F8E18BDF1B799897310895DF48B460F1F39D87BBBD02EF589C30A5F5C241A44240495DBE51D6F0CA0BF60295E08015E1A1F6B7C97B98B2DAA764F575052351ECE7D1CBB4848A73A5CC1F76F6FBF210881C280C33C05102C0489142481C718BD0877AF8B39575125B9312A894C2492452E772BC80B04587425B9BBBF93B000528248191B870897C9EDEFB680CF8FF042C1E3058D343B0190A37DB7B74EB583AC25288D930589CCDBB22C4BB789410508080C0CCBB22CCB101014141818BFB6B92D1C2F8C27411C3E088D8E17027BDDE401CD8605413BDBE9B75AFFAD1D" $sFileBin &= "F00B0F8E67760C03427BF709F08D9F640981C60C2906AF77EBBBDB74DAB8801883EE80891C4DEB80EC7B6BFD4808FF4DF079E0972F97640538C8C8F7B7812C918784010B3088C8C8C8C8348C3890C8C8C8C83C944098C8C8C8C8449C48A0C8C8C8C84CA450A8C8C8C8C854AC58B0C8C8C8C85CB460B8C8C8C8C864BC68C0C8C8C8C86CC470C8C8C8C8C874CC78D0C8C8C8C87CD480D8C3C8C8C884DC88E09C384EC7F8C8050C2B2DB9E42144EF4663605CCF31F02B2C1919D9CA48060BF44CF81C19191950FC54002C323232F258045C0839323232600C643819C8C8C8F3F8963CFC40979F91E7009744048AA0BCB8009D8E3F743AD3E68B91A825ED1C913608B2BA54291CB373226958AF5F102CD353026480C35A05649E4E03A45F5665892A7D84745F0301FB179636687056DC14531486454A81F40B5F50BD91DA3B5F08476E86058C2C43255F5DB7C329765B80E4BEE4F25832B29DDAEF640B8830323232328C34903832323232943C9840323232329C44A04832323232A44CA85032323232AC54B05832323232B45CB86032323232BC64C06832323232C46CC87032323232CC74D07832323232D47CD88033323232DC84E0884C96CCD65587875874A719416A416E5E56C791CE7824D5896B8B9AD191EE34D28B6589710B5091919191F854FC58232323CF002C5C0460089F232323640CF8963819798E8C3CFC3C009740D3E91919044417675C891348A56A5E89F65FC2C4480C9F4C048D4874749F6EB81B83189038895DA8B8A54D8FC142B71BF90822C991C483FAFD347FB6040BBD75C883FEB145BC3D6BF9CCCD062587A30A40989FFE7DC9F483009EB5DC89BB040845D083F857B6F8DD33868F251101BC76060D2FE1B62630BE6B8993984ABA6FB85FBF04398B9427B39C05FECC000FDB75BFB7941D83A4BC43D4850AEC36740F50BAC4ED65D8017E4C04037FC6C289E776044E6FBB7145E056E0BC9CCD456B3F16C70EF80989435F2FB80FD43A16BF7811BF0B8B7AEBB472F421CC0E2F8B5020ADA391ED395B0D060C007D767DC606011314C6406A5018CEC9168C7D062C30E8B2782F384F8F5D856EB150FD93758E70308E521BD9B674795D8C759011FC3C8E75A3F18B53B329C68DF587FE7783FF1239F07407C7433009C2D2017328D1B2ADBE932011532C04183B05BAD896EF6110D970058E5AE1BBFEA6FE76308B48DFB97EFF568BB52942C05F6E4B1483C20183D176B56CED00C1E6610E8989A0C4106F15728F4B2FFAF48845F76DBBDBDCEB09182A0C21004DF7741817876D77FF55F788104039431C7B7441C622FF4CFF36EC1B2CFFA509D075CC6550236B93FD89F0C1E8186788536A1D1078C789D86B0C7CEBB6FF89D7365A0BF3C20C4C8086F051ABFF1723890B74458B034E89F1D1E8960DBFF0AD94F255F0D3E8E401F7D821D00F43FDAEC085080C0C812BEE0077CEC165F083EDAC2BA725035CDC3E755F61241B246F0C2DF091E9C60D89C613213835BCFD37FF0FB71A89F9C1E90B89660FAFCB382B2BB4DD2C5F08CA29D8CF05775D4B18FFB781F96C66891876328916508FFB7EF7AD4EF8D811560C2B89FA29C329CA8DD13103DBD025A1E119890E36D3E163BFE9A96690FFC75689D60194B765386081CBA93F5789DA36DDDA6D5607FAC1EAB11456AC01DBB7B6D0150FE70E00FB5FE376DC9B188C210F573B56BEC1634BB9A13C4A084231C9BA851768EF4B1FDE63C9EB0356B4B7F6DF413D3C77F64A79EC619C83C31060D82DD76D80C85307326A76C853B7B3C5B64FD15198C97FC6536887BD5652489FC89D5B68EF6D3E144608A65DA325438742DBFA31C2C1418B483D0812D2AC75A7D488A66F86D79EC55F5C31FFB6070AD6150AAF049F441FECC89FE90CDBEE21F26501D0FF30596D50EECE5400CE70033C90EF330A07FBC8F7D021C676BD5A2E02381763081F6DD26008F0C6035185C655EC746F9460578B064FEC4FC118F8666B106E06D3EB83E30169326E1722722809D82E75D9560EDC72584F1C0C45313CECBB12B82910753955E85F7D34ED7FB624CF5F1C89FE83E601D1EF60AD8DB91BB23424635BFF38BA8009ECDC09F0423B7CD6CA1D8EC3482F2F31B45684FF80C231F6E0C6E309C3EB2856F80BBBC22BADD1EA230457F7DB81E30B1B5B701AD931C6F8521C19AF6DFF8101DE89D383FB01BF5BC85B7FE4DA77807AC4081DB347032FD88585D2511D2ACADB4BC3F6F183E153EE777801FFF7A4CFAD50480873E4A62E69214BEE4B75D4D96F081D6D81025B6166176A0405ED0DB6BF000444500406425D7F76F31B986B4DDB90B90B00238C1484155C1630CAED5F1F025AB660D881FAD1D2EA5FA34BF34D3FBC2055800415F686AD90CF944DDFEC8D0413B6BD6DEEFF17C1E00689CE8D8438044B14E811C281F26F8E8DEDC008D24604F7C1818B0C6DCE6CB7910E57021EE4151286C2B6DD96242101C819E0139673FA49E2A588894DDC5F3B75EC0F8307228D706BC80867CAB1B1F0F18D443B0407CCCEE4B88BD1DB4BDC0C04B246460776CE040F773D03EC1CCE76A3163F736514B5B5D26C46F83BDFA83A01E6DCC122F1414DE03F80418F3DFC3D0F76CC33318D9F11903AF0BA08E49BB9262D3577DCF0E862973072D63F480C0964C3BDCE848F08095F2081522B021FA8E524C12E18F8D639F32360731B26B75FEF536FDA436A8311DC1F72EC1BD813020DEB0D90004FC9391E18286AC32C4B7734F8D8DE589A106B4548A3DD602A6438967756C756C3B70D4C3A8911F5897CCFC1E2F13BDD0B29541A041D031B100CFBDD5DC06BA77416" $sFileBin &= "228B8493CF488907A44B5837157A915501156CA10D7080286ACFB6972DE7026B8D4797446E941A5DC2DE0F82EB8C903C27100803EFB03D472E938131CB21D8366913CE7F96E87928198703AED887EA28AF6EBAE930C111617504C97F0190342FB7A00141548E4018FF51140242C06816FF3F1568AF1D365726AA2A4D77F7F62B53628398068C839C10444443714325227439C67419B45B28B6FE85940D942039BBC64A6C3A7C15741ABB76F81896101E61322D41DB5DB864103D48FF5C13983A8B9367B5E950E9407FC423772A6EB1E1B6092B0639D7B773B224040733DCB6975C0F75A9CF471273A2041262C2EF0774EFEB94BA33EBCF1FAB52A9B94ECA53D051DBA506C74D6D016FE9041284BE4FEDCF538C948B9C0E06818483095B78181835C6CF0F0CCD420B060541892E7CD79CDB26039C0675465594485BAE0E4A6D3E0CAAF5EACEEFF47C574635CB559C860D5C17DB5C9606408B4CA4C8EED00CAC46003048447607DB0A93013374344C4E5C3D45E440949E292561761B9ED3814E74004DBE37ECEB96336A7F8C170B4BF274CBDF9FCB51814AFC9F37C73E931BE3C396E3A54307CB348DF40D469D487803F2F0EE15C16118BD54330C1A304E136D205F4B5210EA8D023BE4045B0EE08430A0CBE17EFCE078144F9E880B178F36B6E1991E01F0D7059015E4216A6078D31453568D0C7F58B2D310C8DD79829C18A00DF3BD1BA60E9082B4512F18BBBB2957267BE7840E741581C17005B3DD04EFC273034431140610BD91BA5B184F7F89E3EC74321FB58D56BC3B8B7A1897EBEC08DEDD8E1B395A142E85656A8B86B83E5782D73AB1020A6B5F05D096C5235856EF6FA8016E9480FCB2E5C6418B82D8ED4EA5730B0939AD980BB8BF5716E0B1A7BC051418B995B0309F018AF49F0FA193752F092EEBBAAF8DB09FDF17B8A80FB7014D98F488E08B574B3DC976BBD84F38FBA1D7ADE84B79F6097CB7AE5998D68F1517E1B0A417B4D714CD9F4DB79C362A1C2C7021D68678F83BEB29161370E8D8A397214CF0B0DA0CBC9457DE14E30BCE1A87D9975BAD579CFDF5A060891287A0604F0DF01604D283BF57003D8901B700B3DE446EC21CD4F06DBA9D46137C1406B83F5E977D8D3D5C717A7E10FA1A9A5DC3184FBA8D032F0D9C04DD811C790FF02B5CE118BF1F2B83720F8F8D802B538D193538BDBEAFD00A56030F68A7CB0B18FAC8F0C283632F849E4C04B95D1B14F1FCDFF9BE8C0D7F236C08815F585381EC5ADE0E8634F48DB585DCFD90EDAA6BDC97941EBEA6D05995D481AD16D8128D780CE2B0CAE0A946C77EF9D3E28B8D120456580B68F3FD5A0C32050AD54CD92973075B5A7B0C70FA949DE81D947B3BBC85B2AA8D862ACD4C1D0368DF16A9A6D8B870B71910E4DD4BB98FFDBD90B589898DE00D83D8B7458BF8C504955F8B10DCE183D88B3507BA8067674BEF24C5951CE6933E42B35FFDB1890F39D077C3BA0EDDF80E1195B664DBEB2440E04CDA83BDFB3DDB3AC66D416F398E3E77DA7F71F86F6D8B134E8F4183F90376F4B91802A76121FF1F0E1FAD366BDF8DDE03792DE49750E8A9BFADA28081C3A381CC26C75FC15929DA0F891F10EC70D261C786F05E81C47392761F1D31189F40C783E58DCFF712EAB39C01FA2000ED346C8EF858F0BC8D43208C8E8C89B3834FEAF1EC8D75C81B018CB4850AFC90EED96B49A22A039C0D0EC7CF35F70EEC8667EB0718BD275B9404CA400F6F2830BCE8CA54049314CB70D3D94F3CEE2FC37408441BA44541CA5514AC1F513055F34FFC5DD989B92D3159D70427040F18BDC61A1A03C7E49E238EC12349F019B0DF7B08C3600FF4108910F483C5E0D016D4FEECE00EB27B0BD701006D6C60750FD2A17940161C3C8B383C89D70A9D75571C0CDECACEC1902D6FF84DBC8223DC60C85C69365BEDDD88321C0F4B04A5942964B073AE3BFFE13F490DFC3E51008008EB55B0511BB07089D78B96F486743B02FC4163C48BF8227E861A6663F1F2464A1628158E580674F13DF9CFDF60EB0A1C15074FC045E876F5457B059669A4ACE845A89DEC06CF1309C1019E00505608C08E6DD02E1508AC3C184C787787527B8D55C41476271A14BC8984402BC49DA0135337C05960836B055732B659C09C3A86341CA1200CA1D51BA1189E12E85C4B876DD8740896D420C0BEBF57720E6D573E9CFF8E31FF3D7B2DD7B0280179A389BD305CB7EA2236845A0B7FCC7C07DA5F8215786DDB499CDF0D9806719C08949C4F6C23BC72986A45C0F44BE12E76A0BAE724A0010F8673B1F614ED84095B0721081463DB61AA0C0F986CBE763BD2F66DC90E94E258FFBD40FF98444BDDCDB08885AB0590E78EFE5803F8E6DA29F1128D7AFF3A42FF5418ABDC91820426DC69E0F67EB4639E613995397BEF08D076A399AC879F766F1CBCDCFE5FA221907C93FC763F8B4493F0403BBF75354BD02059CFEBA83B146FEB6F17F476218D42FEAF02D52BF18DADC530836D4D9C760BAF352845F7658339C874D45002FDE2D4FE3BA7FF7F0F97C285D07411B903D72EDB120F74945A8BD067D2EFCEF50F831A6A0C83C0020E93C2F5ECEDE6DA81A0313EC085D085FB011E66920119037FDCD9FE42063FD40F96C08AA0DE85087F96C209D0A801730ED3098686A5183BFBA48B1C63ACCB1AB66F972521C72CA401750A05C035F12D0A1286F8C25458688B1926E333AF3F8CDA25D9721A2B030F4689D9B0479A312ED6D865BB645645A8C0A603292CC9810C00441E3D723B5AE0DC01F26BF36CEFC2F8980F95AF0C1451058C192FE3F8A0E0F290573AECED8BE429D0" $sFileBin &= "890A01688317E2F1C1425EBEBD001A83C4A1ED81BEEB7FC4D7827A42BA8D910F0CBE06A474638B2E015F6A165DC54DB029D82A84066E54821BAE052C1136C77346EBB2F9DDB2C8BC72C0BC4D0899033719D9DC5D0B1396D4050BB8BCFF0DA0BB05002065D2CD39DA770E0F82B6FC86335B07D2C807AE62313296A9858DA87F4011ADB5ED227B1DD67A980DC1EFDCD7AD94D6C04A0E8C0B18204C8B8EA312AE47394117FAB254B91D55849B28031C490B50EA739C501C1F6CC02CC46847D029CF6CFE7D81E0F88246550F9590914B68968696930119398686BEB42108957C8D7583EA11A1B3B02A14B7959AD04A75D50A838DF82F0845289FB8694402AB9C06E61B697BB1B39681171C10A4C532F06A6D07860A35EBB44C4610D50410FB2E165CB1D7445B38C02D0B152016FFED00295898DDB6D71A0D46B5048F101B66AD16AE748D1E3D14A143A5C30EDE455FD562DFE00D86919191CD950B3C4038BCB1709D3CBF1A891474F1483F3A212B3D8686EDFA38D20C261426B8AABA108E6F66435F1D67E347013843B0DBCE35D571FB1390DE4FA039097356686FB6201B42027517FF0D3113DF5003CA55B5E2043A38041AC77AD6DB74E9DB9039BDB1231B0839C7C746CB6D0A284879187D0A28E4C3E11F3A9B8E5874277C03523CA0D2250F9C9214427AE3D6AC1C21BD99FFD2843605FF5C4C0BB38021FA0255E55B92E91A74CD49039670259C107D9E83D8B11FF8A10E46968C2A0D22FDAFBEF5FFC0B92E29C1C1E91FF7D983E1C4C106D3E8F16D45365784B44828E002274E2C54BC694E450EBD5ABB111EBA071BF16052AB9D3E07111E0783D3DCC797048EC48D7C15E70D1C84CAB88B9EF2DC60A97C8C80BDDE00808386821C803BFFC12DD52D31B87837483B74E44212C2E90F5F84BE4BBC466F9517ED05A4BD70B7068DD89E5D08855433FFA235EC15FF385D7225734CBDC8476DEF8D064FEDC68BBD519530DEAEF1F63E5C1539C30FF7AD3B85A1C36F43380642955C4186264FD5BD0BB15CFAD88B83560960E2FDBBA083BD2B01888D5B264B0ABC25762338C14A5A0E6848EC76D011567416E47711B4193C1C285B454B2D360BAEAD92AC763F4821C30F7E3FDA13A0279D74999E944DBDDA041B70BE0588D98C66DB019F7841FFB9B229D922A83D186EADD3E8ED0C520259F81FB8E04FE7D0C1E109E86001DC9AEC82D9B4FF062A15043B528DF795B2E62A85A457BDEF76813BC8E8203C8D3C03BBAB1F5E8783519EE8BDE53FBECCE616720FC5D865BED40A6B609710B368048455E442BCD8684305275E2C85B37D068C01CA878D6711BA9FBB642B388D5A84FD166F959DFC6EFB182D8B5495C821700939CA7306898DC80D5EE17905B887B10C1C38BCA25A900F0C3546048DCF838260D25D21F6DD83E70F28C001633DA9CD9675070B09690D04F386BFC9EE18BB44235CE8198C0B216E74B155CFEC61F84AA8FC7C10735B4A046F194E9CD2E5308A57E30433A3908412F278AC2596274A14E1F9E5BF5DB88D5B0DE52991B60740BF2B60C0F5780C00F288185FE295F21452DB0901DA833B1B83E7C606AAB8FE05089D401DE0EF341A517FFFB8A418B985474C98B41C7FF536E277950C01FF798D095F6B850B5721FA975EAF4F8D6171B2505AD8DB37C50A75636931D8564C2021754679B23AB3C04947048B9D8343B5412E3D10657BFCCF3BF5732A5DE04907B0B93842B61B431A98BDF61415873116BA0BFCD14C5F1374E589A01812395C8D74919A4BE8833989C06526BB214348755C2324F2D9FA06069910E6C6B8ABF13B0DF249258512A5B2756AD81780A3F80AAE49FDC176563B4D872CF6DE187D8C3B39FB0F9237FD7533048D17FB4239D1BC6C0786517BB487E9A6F26747EA6B8CCB970E0D0239D82A0D586D22C6C20C5AAB9D54908E888B37ECFD5A52AF8C0991D34588833CA94997946613D9DB39783C478B99C9285226ED1656A6BF9C19295A63FBE52823B0F28D531EDFB991C38A159114BEACD70791BDF4B6CF1F2DDBE3B744272016C5F80F0D1C9A74D5BA49D944484D87C282FCBE511C4A1D076211082C69D7051A385B57E4AC89C3CCC608B8BC0A96EF307048C19285785B9F1E58FA0DC704404BD63055F19ECB05068B6A2807B370A1BEFAC8DC01F03A9031D8CD3DE326A37D115EED06ABC598A182339A46E12D0974BDC2C801D1F40B85CD966860760397C59D2CBC6A7BBA4703951A4CDF023F7EA1BD5C8E1FEBDF850F02BD7EEC6BF3108B0C391C8272E87FB79A9DEE25148DACED8F04E7DB5E73A8185D6348188DC8C06E7BBABFD8850C301BADF9606B7804694433037787F72CCDD67BFEF5487FAB950C6C36B0F0C1E7072C17504C1D8D44F08162273C8B38B98D88B658E1FB4339B80576B60789487536B381AB41180608E16E36FBC9411CBECAC4740643B08E950EB02C6C502E1C75EC88BDC72877859CFE290580C8021193A36C1864C9D0CB6F5EB4397223D19D632F3C4B881BA94B1616A084E76C9C60DF57173A4B5953181761DE4366FB36C10C4A09970F0B102940613BB1F4837B14031006114F38931522D41D3F101F3C762EFDF56CF6128B059E3CBD8A4839D06C7E939A1BD662BE027B0C80D9D95AA90AB334CE96ECBDCA344D7752B8C55A946270A470690EBCD162FCB68F20F4EDE0D8771B5FFE6F06DF18971C894495D84276F383FAEA225DAB039D11200D761E9A22D685B5F61C31435996AD35073E0520DC24BF5E9665E028E42C8B1B1A9D2C1F8B3378252CBE2F4D848D50ACD7360D691421F9B50735A0858BEF1B29D09F96A4F79A9FD58D34" $sFileBin &= "FF1AD6741DC13286C4ACEE40B6D89E6601D33984782860F0E2417776792E62C48373EB6C2E8C70175F01C1832006D2960132566C2C511B6A3644CEC313321A01852897BDA7C77E16F77F3C308B143987CCE78E19B1BF9F057628890D596AB5C6B3455B43891C09D99BACE18CFB1CD68BE8DC2C6561B60A2C8FE78B91B6D2D35138722491614BD93956241E2052ECC8581C8D1B911A940C8F1462F498FF8EBB677661160AC431409485409DE14E4640E6A38040295293363E2D466F5BAFB320356906B8641AED94D446790F6D0C48025A7290810FFD33DF96E954680EF2E244D893789B63E3E0A91C966C649CF07B934E0A04060C232E2D7428158295816E973376860E30E11B2F77D9C0344B484DB32D090A26D8D3D84A77E9884B86ACC560E07CC41BC4C6528BFE578039C7642C19784D3516801268847787AC4894C038954F950E2CC4864D85D0440B8636F1DFF63024142A7DD84129F8083B8D072956F850762A07697322A2FB676C3600F2384701751442120F94EA07EB221A13043A74EC4A9E2A94966D903DB12FADA4EDAE7738BA094121D9BD100D3219318E8BF80BBCB273C676FB57102A7E1EC7469B102B240254D0468D31F85C100139BA73D39BE0A17623DC7F890852E71CA3C2E9C83704BAC0301DC5B319C52F72E9B08B0F750362945231D231F0748D352E16AC295B0CFD5B1681C809CC90D2E68F8F7DEF2B0C53868911C7421C0079A0B2049D8D9901BDAA5493AC40957404DAA99B2D57AF853035E4E948A7850C47852786757B4213FCFEFC4EAC251B99843880EF7188153B8D3B8F86164C6D3D748D82DACA18007D1706017E07EA6305AB0C682DF02225050BC4E8318363D02F1476521CE707852041399C45B482137143650A73219951E258474F9D5CE78D526F5BD802DE6E7C93F8722BB4E6803CE17D0E3E890C82AB119DDC624E068F41748255F917952458BD1610D3131F91690C16185AE4D66CC9628988F0FA3B28418D42C248CE9549D2E1B516CF2F77E9E0597F036BF1636FE04DB4393BEB1D902B10CDB138EC02E93031E0FE0C6CAC592CE22D278B39600EF9D84F8B5C9F04DC5612182A8C7DA1F0D832BC33B2C2D876B688DD9CB888EB7A8B375F07186B67712AD177E3F871CA1859EAAC406176221E275E9B57293DB1566A34982C2D5A9F7083507A8D913D8F99852CF0CABF98CC3C9374750AA4346887AF85738D63791B3A55B0EA1B72FF040D9E4D17E447DCFE867EC1B63A7B74CB0689188633D0EAC09C9611911BC98FA6C26625D8010C9E071F082CAB54434D9C62D65481A648D4A378F15A8D28761F910BAD6F59ECC250ADDA685850DB8EC562370FC373594BD4F675AB271163443AC2443B7B0706B076420FFF4F3716597826D021BAD4198B2C5B6F05A4149DC6D16C6B7674CB14E8488DF408C3D86B775B18F63B5DB44AF0F9B831A1F6B35C7C9FC18271E1B94EDB17A3FE238C11C6AD4929F907040283C0C317670996068CD5AD487485CC64841B8B352C842105C8AF129D0B91CBB2852AE2DA945667C0C8A5EA1D9C96D9AE8D82859387C4188D14888E615DECC6B6C01521C833E01B8EDFB1E05C39AB2B8D1BD3FB7EF86D8F07886D34A85CE009BA8109AE913290B60C1F9E0517AFEB2F5AC8BD593B76F66BBC21A801C7D0AAA4664160D7D040DAC99444FF8CCF94819434F123F94ECE130287E7ACD7B6CE2B93F469A48B4305086690EF83422C046215C9A10EBC09BC92CF6BCA40040ACC50D0DBBC401688D5CF38F8FD92C06C08C98DCF904A6F9078016B7308F534D240D901108C425D9E6003A73695694790FA3CE4095C38697D14FF96D1389F473B7DBEDFE0F41285B0401F74E5E5B2CD6AF5D6F2F9FD80A77B011BFB130684C1C61366290877DBA408167BCC924CFE7CFE0A6CF508CC0C9EF1206AD6DC8A9F04FF09E2AC17635B133938FC5A1620D620946A54172DD19DD6F726431FB1710C9D2D95CE5A9A4F3358A525EACDA01EA1967BDF36830B077506F805F86A8E142830569CC2F9BB9E4B2F587307CC95F8468375C2D93E082ABD0A1976D8BB341F29FF422A1B244BC3B2B1509D2A551939E9F5668D74556B8490F14A469F9E7DCCE8F8C88725B495803508C604A7AFF37DA5F43985B0F00D48C3849186C22C269CF2D4C8D98B2ABDD9EED03B102906FF1A1E4DA7D8D2C3ECFDB9C307E9D4226D17F0BD11E1C1644A3A5B1FE8C7E8690C1E31883509D581F4260DC9FEC7D3398BB59069B98EC13699A4BFAA4221CABEF470CD5656BC0854BD9034E121BC01DFF5E37081188426CFBE9D948E21238D36F8CC03CE70408692843972DB13F1DA530BF0BC959524BD5284E3C8DCCBD27B4B4E10F78AAFD1844E115A02CAA5D0A78FB4CB5A10897AC833791A10A3876641FCFD6526956403481C7D01AE7E84FC394318730B0D904B7AD8D656F36A3472386F0718798C8B95D06BA0822CF36287D1330B2F439A4C200601614B020842BB07A76C30363F01ACBE271C607E2741F77E8657EE9B504389061188D7B1E032F7FA89FA11645B067182AA9864309B215A07B346501280C749538C9AD9EF8511FE5A241E0311396C7610334F96630731D2B4B8B80DDD19F166A44B83E90428C8C12B598D71E4F68B9514957295C4805FC06ADCD93D562996B5C6A547CCC17830CD31AA407B8AEC8CA3DCDB59818C0C0F83F71582C60C1B056345701A55D6B53D6DDCECDE88438C111009C59775D48C8FDC3B8238EC49386120442DDA235D76D4908CB0E1E886CC30BFA7E0EE64E8F0BED4DD3181A698A44A9F8D55C053948A5946AF75012BCC809161D4A1" $sFileBin &= "6291ADB4AE3C34A2AAFF0B189E763C24EBBD894DC06710805640452D901DA080148FCF40ADE254A620F55126E285E46843D10CC15D54F18D86021CB9887607EC2C89D92E34EE584842BFE811CF0F66C7B59FDF93EE0004098C2776E3B8048A009D00F1BAF69BF96C2C45B80C8C5E440794EE4CE5CE5E5C1C0B750B7697DA946BB3C535478A86986EB1E0FF74C1D3E239D37311C36604581D8076DB46431072F5202C0B2C9DC3B866174240A03F09E1BEDB76F44AEA80C3E6DADF80477EB37B6B0C2B7176ED16AB9E1DBAE1117C380A5A39992C2AF00F625590EADD989C252C29541829222750C2792002DF5C04A689D1498928872814598C98CDA4401308D05B5E4F1802BA8227475DF4428F5FC4837F93C9745A8B87DA908DD5C61B81B71E8F7C574858C4630BE9BC6887147412F7DEA760FC132C2413C70A2EB88238DAD3E37AB38AD64335BC23E8B343357809068CEB968751BCACDF31C9612C896037417F9000BD83E50274835C26AC1A77091F5DD0B7D339C277F25510040953F0201C46D1AB2B7805871742D2AE2B5E812C08CF43790A36008DEC0137F85B406B41496F571CB00B2605466385D2DDCE3A585F7405C24E1EBE9883078FF6F8CA2616BA84100DA8C50D2FFE7E6F38932D0C39BEA051849B5D4D08BB61A870A25013CC832D22025E0EE3E07BED411C450821A145113D1B65194D0C599685BD2E80CFC9537464482D010F08D24444C86ABC820BAA89D09E22EE0D7B85901C541FC61488BD151174D9051C951CB663377141BB899D8B56CA8E50880DB011B8F9340F97FFD04498651981483B45F072772A042C10817FEBEAA0FB895F8D5E205E10B9149E0972B3F30D2AD591DB4DAA8A978F7C7249227E6DC763035E185A337EB8DC968CBC65DB3F4C2173E609DB40CC8BE8A39EECCDCBBBB90DD41329C8FC5C75817E55F620269EB281906D78E56D9CFB7FDEFE841A06B4E1824C01432C2FBA204323BF2E2F88ADB5E6203F0E2B11059B905D9714085D9F415CB934B56F837203F011102B5522446C36B3350C0F14C390689388937F451482BB15E90BDAEE1C8B105778FF280CA0C143EC8D833B2341AFAB72837AD0754DA04AA70C1E7EC7F80D24EA81EFAC501C162D6283E603766E8803C7DA205AA7912C06D00238B24F109C8058BC059A09C74611CA109D2DA1562DB905B0ACC9A189D8067659444DB66F24C2B5AD234820EDB834815A368F4E357E4D12D893755929925B729715BF2CFD9DD8301CA88560444A141C446FEB1AAFE90214E447DDA1EA68FD00876607F47C5AA222A787B6756E2A5A311C3D2A46797BF0F8C99F3001564D1C8DF1B59845D27C1B01B534D69BFF8C4F1D69C26D8677AFB9302B29D88901DAAEE00132F4AC270BE4B8F154C71B46A902437A6DA045E573EDEB88BF8DC181F881D1D0437595140F888428E82F7703ADD9E00F7EF3E37765C71E0ECA5E868F451C903B20C3893FCE2581C4A559157B506E671551BCB314AB5CB5F8EE50DA31755F9E0A9E5585FF74D66105012BD1CE2CA2695A200C10F13F8A500CCA7FFF17EC211577808ABB0A19446C8DCD4848D440EF0381E151CE02F0F1EB8DE2085647538B9A3283390F7C542F5168C701FF82E28BE00D8DD4B298C1806604C00282013D7C7A1ABE83BA0B2807101B069EAF88D1AB9032D16E62ECA50A27B11E7EE5FD47DFC0F9E60CD5D0E8884417019BD86042E17EEB8396ACDBA3F038A9EF3070524A703696F475104F61E870B271EB7C118B065BF4F0666DA7EA85C3082825BECA572A9D0610D10C416A5F93893D8D4315D104B05043C2BF06A24CC8D22906F43099463AA4BF38D72CEC20D8CE30F83C1C81C68AE70C4F57742A65AC5503F055BC5E0B260AB4E76401CD3008FCC57DB191545F3AA10892E6F3ECC24146DC75BE1CA49B6C6F20D9D618DD14839C6CE710420C084749AA76B56C403348361FAA2E44971040488F483D0675A3EE8777788B3A4B245F1B61F8873F43388B73145422C8B6D6C1F639D0726310308E17065B7B5503BAD0F83229F834D5BA9BA1343B18EB031329377794A35A47787E48EB20FDB6B51955DA42C82C3B4DEC73054BD4D8A00B69F82C848888DA97E804314169FF75E089719FAC0B41707CEB993F688B702406AA89788730EC94201CB80DDF523078216DFBA05E92855E0A7B29185191B5A5D8B6597DDA8E76E3161CD916DABB915DB4301C9FB836F00AED585788B08B4934F1BB6E893AD0A880044D1BF6DB76AF3C9724494017D83640441AA120D4F5D48B4AAFD0554F36B46CDD194917CC044C8B0ADB5608D81CC86E3D2813C4772B7000A0D07DAC4F49AAEDC25996791C80A8CFC476CBB575348FED21F30AE4B726477D5F818B374639A40FDB856FFFB7107714C165A8083CACC1E7081A014152AC54FB26E00945A8E40B0FAFC2390AED553DB1FEE904C7424C5BD52B144A4946D095BA7DF481C66C0E22035F900B8A6D6BADBDEFA474414292249E5574DEDAB6F675C021DABC59B80FBC518D44330C259A5B070D089183CD54DB098F19C4998C42BF4D82028992837DE0060FD7F68D858BBDFDBB75EBD38388B5C6C7AC7875BD00A5EA5B72044A01C910856AB675585C68A4D3D1B2ED64B04ECE7506E475CEEDD7DD1E72B4290429C734894F29C24C047AD66E358D4C7A4E76B11F7189AE0D6CBDC0721A426D6BBBEE6B0C555BE0FFEC49B85E015A087629A1604439BBE219D55A1508178586D30261E603925DE5C0B0BDB9059A897B1C51B0141C85F6044373181447FCAD5158004953E8120B354C868E34F3395C1A18BC6DDBB2202CD01A3C0E" $sFileBin &= "400B44720348558372FED872D443F5E348BC407224C37F7AB606779A7A183BF90B7E4297A5705167D2A52E3D122DB17510A90A4BF0A74822046BE90B0468F51DA1150C111AE61D5A5C1668C030E690E02F56964A701765918031687784606CEEFE0458C90C3BBF029ADE1648813FA705D6D1863D3160DE8E115619503900CA05111786F1B259E3041CCB1304657A006C63022B7966636123BA1F8242B049367ED35101CBB0395DB0734F42B09241AE9271B1B073AF5DE0713D3601294E1E0471331B5BDE98CCB03386D38AC1B747C40CF80376058653CD5AE4E4CB711DB2A1746299600D5A5A6203037330015C1BD3D239C281BEF95B620311B003205D70E082064DC307C114E2A7047301F695C9CFA604195D4A0343895D9B90964CA7AF724A1900B9AC5D9573401420AF00D90561E329E4720583EE40F303EF04D0E263A899F27A56F9ADA2148CCE0283FA0DD468C73AC6DAB89401F8E4D31D03DCADB5813644055E17627F807DD30BEB1DD16594AA5A01DB497493B10F8451D9587713AD4591C03244B3EA06D4E182A43AA75833CCB7BEFB8D5C1B016509D64975AF69D48D5E01960C38D8F4DC73C913D4725B9BD8F6D8F25DDCC9119A8B3B5ED94FB408CD1319C0D7C9540962FD6740DAD5ADBE71B002A4B83975E8F5F204F0128D582BF81239C3766E57CB5599CED729C1070DBE09032B7D45BC01C1018B2DA8356DF2191E3B0D3075B7AD18AAFBCE7EC0019FB82CABAD2D0B1A2133C67FE212F0466F1688022975F5B675CDED3F52AC247258DC6689E2652A07B75F73065C5B54838EB0C9B95746140D42F817D1E59C2A55A0EB244C6D02FF61C9AB03F7D621759CEF85DBB6D0A219690DA0479C5C9CF82D362CA06E21DE2601C88D1C424C254C5865136E6A99B0DB83814E6613EB14DD22B295F7913E0B558332BD521EFCEF16EE2A299862F53E2C5B024DBCBECC0EF04E430517CBC1315511456E954DBA5858E0BB57168ADBAE013D29D654C1EEF1168632D2196054E0B86A74948706DFC05D25C0A1A1A34C0FE800DD88CB47DB6162410B1707890D1AC7B230CBFE0B7F1331094709320025129FE2252263F7C34BA68DE0615C724D11E05102212307C00CAB0008456CAE1C8CC8554286C140D8554D2690D70148071183D5B05264CAE07372CDB0407938DCCC750275D80E0BFD64577E30E8680AED4CCE608F4F37B210D0BBA7F9E83355B7F081C1D5A92B6402D9FD15582CB4499FB0A66402E4C83BC8D839DA46D48AD86F655397617D66C8ABE017A043E95D916E3B912555D0EBBFBAE2C6269703A611410D1646801C2DD5446ABCF8D8B841D03DDBC14BE7FA453A94B96E2475BADBB23B7165AC70541B4E6D6C23E3154F99411B71850C64874E370378272E794EB8BEB01DAD0A7C919A1C221001889421D782EF3635A432217D0CC648FB6690CA55FA87426BBE2990D1EF297DA8ABB7B619F7541FF6697001218DDE82055A0D83CB15C1E60421070B0E12FE44F30E0029F7398993460FA12F96031953E4B90E49383708EA83431530023900724BE300ECC0C0D47682484A2D01D8A9737D4691524B8C909372FF711AA306E635F98FCA6D820362357159CFE30E6109735D8704E64BE4C076079F2256C61E02D3E432A67F05B9CBC877163628015390413403EC921C081A570F90317BEA694148F643F0430A890F1819CF6F3430B14075506D70A2207540894D004B081079436D22684B74531B8259B050DC0057D53C4B2C3982C6AE418821CA088D3C74061C40658B9A4B0C388142B42BAB7BEC6118695939F028EAF05A41B0CFA06500F009C78678361EA14662C139C74410C6804BD002E76C81C22D157061DA04FEC2A7DE0C8A1FBF4B04637DC00560037F0BBF43249E60096E9C4DC49903BD14B441800D1848DA2B17B8E50702D8DC837DE46B4BD0D4E1533EEB109F82C60A168E4405775424DC9A87FD9DF1C553771EBEE5045D5FE61E491CBFB872BB8D6785168554F7348648767B0B4BA8B79F0AE06C5717CA213C770F19556D731244A31A048A22C10E2A607F95C43404D34B425F565160840FF07357FB8C58804663013D3758E12E32D85CC62FD860653A7902E3DCDCC84E080F0B7721A1738ADE70C8C836598FCCDCE1B0DD115B5C020412D0674C051E260CCF4F3B970F63B0C3734243F51D089B039003612548C2C68781DD4172BEEBF0CC88C2109586B9034F5E896A941EE8AD48BDDA443527958410BB6D6BEDCCE0870D7E82253F234A5E209C40D113033B84DF1BBA848CEBB4295D3AA695B9665D5C4E3A58369423C2598AAF996B90FDA201712C5D587589D63E4B374B39C205404B28D2C056D1688DA516AA66569A70D0182208C7BDA5DE363A189008D4C1F7D2210F6A0CCEE8817DD41FB9C0D8049B30517E2B3121DA09933D2AC8D5D9486195E022793902A0C3E5D8C4EBDB6177EB9725E198CD885966523CBC91FDE266957725FF8C160F4C642DC4F965729835D78E2A4DE826EC55DD908CECB950E05C070F3DA0216B462839EE3A3C3CD76A12A1625C3CEF61AFE9CF5BDCB2594B02A88B0C33613AB3D6A21CC8C8A901089C4C1E48CF765A07795B75D919B05FF37676ED8229B21793BDEBE943A293CE41C6991F7779E3D08C9AC40CB9B6DA420E19DFFBB588D3FB47D8901D5D0075A9295CEFC2F782440CED8601EB87372A4C5F588283EA407101A600D70F42E18A8ED1D248588E3A88D9745094DED683C80270A0E8499A010B68414B8D60980D9D0B83FDFAB141C6603D5077197A8BAD381B4DD2C186BBAFCCA8E12C45F734D0FEC39266DBC1AD5A0E96FB5DE5" $sFileBin &= "A164AFE02D135D057B57A0DD5ED1EED2621F4821F0418B37B750FAC9B940639000FB24824FC36D4D5E24EFEDFD48B52F85C9C7404CD4068C88CFC84800587415AA55AAB32524505D2C82605B46070D8F8782070425742605B8082259BB3002BE289154B289E251705EECB6CF562253255FFD609C81E0B9F15FE23C8A1B1A2976759D1C817E5588CE66492001A03A824F7C7690CB484CD99C2BE256C696F00A6702912D24E0725058773C0FF1835017F675E5108844165C1405F702F08946587D5AC0E7D94A103B9F5676D3FBF76E2F59807A5C6B855A14840883C65C3C5E60E97656010346024F18A01009C2B04164EB0B030808344191118E45E6414C4441BB5FB46A1A7A7531F6D739507A1325FA24722C89C19BD60B8B7920667BAC236241601885F60A26BBD3354155DDEBBE758B595A823680508C5BA6106B100F14A0DC49ED9D6854F786970536070E4AA7882DE0D08C4F9F516EEE02252E9072F5378644014E4ECE4640063C383477B02ACEA25052425877CAF048C08A467DF0132B091C408DAF11FD36E806501409DA5AECAA0FB1DA21599E478956FBFD286705D4E3495C3F2E01B209E0823B7D20CF4118677033DC62069D1029CE63817A869F638BC32544CC25412005957B17800950C7069440E2102A4E16F6316C5BA18DFD13BB87C0933BB00434A0DFB72A9C0158C04BE10346872F340537EF43473688D383FB13DC26EA7DB1C0297A75E0C9C1B9CAC5136B7F5D8C84EB00BE59588D715C886116073BDB462F71C534C3756EB98D6A1F5570B9F703C452DBEE36A37FA412013E01D4295A1AADC7F769976158C3512D34AD3AB4D7CEFD04C8A0EC8FA8A37E1E83909CF2E05BB72DD557CCA56ACD0283857B748B90B9B584702B0202F7F1C35C430DFDCA6C317C857A9042D8756CFC5424968CDD7889A1EB8A6C02AE7DB3114504990D14B009373828DC623B4D272A83C05CDE90280CAFFDBCB6B5179E761C01580130458E033D7BA6574A6F966D6046000329E2750F6D816233FF38180D12839B196A0255C90B2E0A9F11B163D85FD089D34772D4DD178539F87206688D1C3EFECE51A5ADCB8DAAD70A8E6010B80C83612267EA0815525F6C946060A3B58D36011E843EEC26E06F0FB7AD582429F301D6FEB8DFE9DC29DF36320CCF015D4B084A9B7676E80149753F32ED53406BEEFF04977525298DB7B17A430624492839D6867CA559A75DAB9F9CB64CC3260B2805B0E80A8B602001AF0A930057EF5D773D736350B4D2FF52F90C4014A65AD8815B0F2F8B432D39B0142B140F118C248AFFC40720217CD6641CF690001793D1EBA396776372816FB804990456925B9FE25753DD8692D942029A4ACBF7EA9E01C10C03AC080418BD89A5289D0FEC6F894E0CD0D8FEEE422E1A80FBE0775B6608D3F62CD48003B4063C01DE622B2AC088089688C8C0B6AD7DD70D1DD100C828C306E2062695E2063079012889C2FA25778374C0EA7663460888D0C05CB4759BA1D02873C10E04FE848623D8ECB986BA1FACD305B1AF18D9A91E4244F18B328C786D347101F1794B2BB0E548C37F2984053973547427897C111CA01D613B3C2478365617891C95023EA41F107402E5C89545D056D0DF28334270F28D5DE8443F1C49089ABE57AC790A3BD743221EA16D656C22E14C7454E3AE068AD934B76CCEA3EE05F40C33E8B1322414BF386F02BB8CA0D8681475B50612C5F4FF2AD064CEDF7976E27F637FC119B4270A5E28741989FA1B64BB66708F4C252B04201D29899191672BA1D8DCE011869D91E4F4614C201CA49334B8EB667E9F72EF7B7C81ECB862B914AF9F8886446772C23EAD0CC58B589989925BAC42F1D91306763501189CED04F0288DAC0F88219F8D01BF1CFD18891485A4A0E665DC104FB38876B23D08894DF621010FD645A0223C893E1D304940D720100C210896F58E059B8D853AF2BEE904B45569BB24833A03749625FBBAC49CCB02A38EBF33F73A5AD8898F8CBBD6EBCDC09DBBB090008B2DB70333C0B58DE24D7F683CFF152310117B6427107CC31F8B4CFD89C8D09A8CD4055AFD8BB57651520301341A1C508901ECC93AD87B682C0DC35F6AFF5021275D617614C30F765F06508C2DBB7C2E8C04C38F13CCD63DD09A13F9068212446DC25F77183B07203C5EC3A99A860E2C6B09CF8FA9D84D446B149629C050519FC9205B371C1A049F02045BBEBB2D5E4C186A015119FC0C4DDB7D832DBF0091693408C32F37394A2E005CEFB6646C6C08518120EC4C2FC20A996C1F2425C5DC48481F0FEF590239CC73E8284F64ECBF770C1F33508B0251507900BFF796AD2FEFD3EF6A1CD9F91C20016A4CAF4BC0C647558BEC0E6816808FF4877704977064A1C15064892587EC085349140BF1565789651BFC7C141EB9B39F2C1096D58D7FB652332C0D5F5E5B8BE5D6C55E2C18A633220F8041B29425AFCF8D9841C74C5406C2D088250706DC3061108D316F5DB27FA338B429A60C5DB4AF8A30112B844DC13650F4FE29C83FA42985152CDB500802040CCFBAADE3B28F38D96089680659B6BF6E0D343F53043F0329D1093053DB680B5043FCD050FF169B8B7845F874395D11348463130AD7F819AF391FE6DAD66D6DF8D71E330C2E4215077E89AD1EC1083B434476B4CF8423D566D5E242EBF10F278813312F14A2EED5DA53406439827AD07BDBC92F374330720A408C16B19DEC6C034766EF4A30F23C29476F0B370A3D3B4244EE04E16BB397FF1F1BDC0D15C119DC0E392173065F5D002D017E306BACCF9E6C119E6DC7468606202C2023B70344B01B48044C1C817827" $sFileBin &= "5406CFDAB94049C04015FFFEFF02B076E2644AF7D281E22083B8ED31C24979EB96A58017339E6C43D300CE2F524227D51FEFE2203990202008B42F5C790374B8F6F084C06C915DED6D3C198B2C01E86780E61C908F1DBC8F1CC9D38186D0186337C452817F78F9D1E9128023C3036D0F2F98146F454194EDADF0C58D8C087A08DE5D68AD8838A38C01F21B53448D34C2AF231ABD4CD70D41733CC82DD68AF8488D7701B63FBDE04BC5915CF9026D74328D576C835CBD2B47B80206EEF7E5E40408D1EA81CA3781FA83E9EEFE96010B515328423D7607814904A149F3EC030B00010418A5D61C819E097C7BB12D50A97B8FFD603860B811B4A1B904735006020140ABD8BAD764AB02F5048E9A3A2755F1DCC1019AEA71F291C716F11EC1B73D8D0CB5B583E0BB01DDC8A639DA96008A205B28E696B8595B363B825314019A6B2493246F099BCA05D6C96DCDA6D90F3D8817773C741C5BE81D0C878622AF10016EAF237C89247FC6FE00B1EC97C5D06D6C31C95B82BBC2EF5FFA740723616E51BA37D929E6CF098E4CC212302E8C8AFF0C212816C045AD9904E8AD36E5BF4FF3F75BC239DA04DD78A9A7D38B790E414444B7412C4DF2CD0BE2094DB66123A102201D1C22DA96C00C8E10F91E78C29D61605E8B56E3667A48C5A31F014B60E132963A731AB120DFC730D4854854D14077F348D17698C62309681CF06B89CE38AD18394304DAB9229E30AC5A1ED76F8CC409D1C8EF1F100389762F855339F275731D2F4FB7CDFD049139D8770E9508421F72EF6E2979A870BFD80DEBF096FF18DA58DAD1D483786D7440466DBF5DCE2D465E042B394644742F0C183D723CB407145FF84F9F96D5599A8EFB14568F2650CC166172FE818EB5451BC2EBBCFF58588B5660F0B316167C647A4BE681E300FC5E562FD9F74620706CB46B8C25D483EC5070C02CEBB19F01682C22AF08E170D8000D5E3C8205A276D45F494E29F9828490DE535CEAAC4DE68387280C29DD5E60098FCB0F8D1487181476CC06BBD64118930C8B3A33248F5D468A4C2475B70E023803F70D76C675AD18135F452502221EB5B7FF06423B55F075EE393073898904536EB476A839073B0141FFA339FA8F26F083C204397310EE0B16D07361FF20C14F900986359F55450DE843D9724F808256FCE9B76DD18D58049EA08D98D07B0673247FE30D1AD375DFF3837DFD746E3B5D2073FB5670A66945CBBA0C1C8D3CC2D8EE9A6BB04D201B090757E429D91C758BD8A8E8E076034B77A65E2217B60C329BC73238C16DEBA8DB7465037349C775634F6CE5DCAEDC4DECE2077F04676DC8B9932DB80C6D759224D4B20D12CC07C728D114D6B5F7600F6131B27D02366CAAF6338B07B9FB726C2B0874C20BAD1D3A79883D0A74453785A5CAF62C73512E2C4B432CE0D6B9ED1683C67C06042889127449F175BB86405DA40C02351A44BFBFDD73CEBFB740474475BB5675EB9E6D10764A72B59F5D35751AC2042DF6233584C856DFD6D0A18F47620113FDAF513C2B064F4D101E4C90E35923AC7A506A51C150378A131B06638CBADC614F0629F1C78E8556C57E6A607365598E051CCB55C8546EC25741C3E1965DD809746E3BCE0E4B1B3B7BB619578845DADD9A80DB7A3806746C04733F0DB70005646B4FA64139C25D808D7D7604756A91A83DAC666975960F7BD03262C276377A02D7ED8043C05B75E8E416C7ED3D0E3BE473EE8FC66B787BA51CED751D4187AFDC49D837AC0BAA01AB02441B7691916D74E4A01C5D44743CB6A2A6846FC29640D6E2522BFDD304407AA33D8BD6E04204693E5770AC4B07F2153F387715FE61C027E80177168C74EC4E5775036A674F206427D78136031314C0D52A62D40CA9085B966E1BD9BF2420152C061C18C91F60691814CB4724895C49D107B83526F023BB7BD73D723CFF27C341FF0729C321C1FB02B74280966547470F704BE8E6DEA2C315EBE81F68854C60CF02A917BBB551025302CCD8CDA290DB6087D6CAE51000201376E7DF02141F1A63FF4C4B4610E6E0E34F40E80F86E5E83E0EC18BC834DB07C4578673103F0C71E1FF74CA4702D44D206A90C6EC310CF1776FFD56282104202B1C8A8B8C82B7B1B716B9B9A02DE4899C0F76BCDF05561C828B4E18BBF87176122E754B1CAB66C26638E7848E586A6A1EEF5C5D890C839A0F261A45F58AEFF21CC920CBC98B46467C4670885FB863135DE8E81176CBF3F5467D062229FBF5C846599646461DF44C72115AD4668BC5102D1F040B64BD70DA059468674F3B51D16F4DC3681C0F173BA9750743EBDC73BB421975F1FFCAC5AF4812DE26F7B4891A1008E30E774EBB6C72F2C5B0BE100CB7F740B8E846DF94E4B67158736673BC13B4AC0A5A16EC8B234BB29910CDD2B0045FBF7D4703B1B69A23F5011708E075282C978512C2415C97D813978D23947FC25DD8A551E208D8721B9731B7F2D7DC23A34FD32CDC584244AE89CED00557C2DB87CB57349AC675F0172BB49AC811B1ED21CF04448C06118ADBCB38A9225DE436500582DF8CB22531F63D0FA99ABA6239576BB581741BCF43ECA539C076168B9CFA015DE8A2184596D1BFA29DA0417725E72259784368A2037FCF820B4BFCE52EEE041E5CB0F862854E4EC67A212414100C0F001F742EE07447B55C1B0975251320432CB6601882EDE365786FE7607A84393629CA79AA07314696C835F0C4EC080DAF44480E09ADBE9A388C6F3C7929836E7705BB03CE4D8397C8EACBB1C1AABA1E3DAC57C8C475E4C067062CE7A4AAC775221903560990C71BD12717C66B95CFF8DC0907C50C7C" $sFileBin &= "9087E45AA9C46D4863B2046DC3DD12E0C3FAB04CFAF0EBB56FC8858C115F3CCB32944C059333170F915C9D7567FF931C87860E2A57D1E4AEDEC864343836971F39E99531AB857F3CC33D989047C9577B891C13198F1109B22FDA4D8E17932C4C552B35A3E102C9716CA43835C983900B3C7BAC0A89B32B8F7C132F6A16FA9696178B5F20E64800AEB5152C7BAC5485AF12EDC483317034F32EA38473C88B1C0E25B420B807050D9E096104B20807FFD283EDCC1C3BEB0AC64E74750ECBC1363101CC76EBC342010A086CE62261B3A3D8032CC7118975978B0CAA133C4E75900FDF63C860239F0E89AD3CDF6181B6A302E79C2797D050E002645CD957654B70BC67B3839223EC248090AF2CA29D01B9B1EC96949066E97E0252872C0C75B0530FAE0254795BBCAAE75794B26A8121912D27F081C9F5D100B96C4CC9ECCC362C1617CD0D5E04B285A40FDF2C3AB31C72D103E8C21138DA062498C2EE2822671B904F9B55F0CAEEECC39148129D9B21D8B42B532436F28386ED3A6BEF32B68C93F8550C932A1512E40A84581F05E8C09B900B3F380D6D8EB0203FFF0CEB7FB26C9B0A5FDF7728E81040BD9535CD4CC80FE7DF7021C9B6EBDAE220D50421F8101BBBE8B481E29406D59499D3916847E614811F3934906C129FBEDD17B44042B017D123FF724BC4A58A287F1027798DD81D66BD851575EA6116064D58E3D41FA45E99CBBF4C9FD252276D8F438915743BF2D56F60A60E3491CF918F0B98A77B8E8C1F1205B04047326088EED80DB04093BF45B850E5701A311600BE6B59059BADD9080880060C50757E506D2868077AE02F811097823E292F8B52482E741839566805A60421788023C79C19805F1275107D44478E95E00F76C07F30411503827F5FC9C9D9907B1006141881CEC9C91C2024DFA8C8570B5E10FB150DEAD96E4B495E1809EA9C6C6F0422060C08F2CDE24FBF69AC8D461CF80A1459BECD0D8C1D383015CC24C5D99E3D6A7C3397545A2CE622552F8D8D65F89F2D1D62EED70E5AFF781946202669010CC0CE3D6C48501D80907F9616006E27E07EDC5E489D74E5B6AAA5F4041D6DCF7425800F13562CA35D20C161CB0C7E6BD5CCB0A27EBB5D433B9174298D7E24EF9E2D3B1B3C898B332875E52A21C5D957040FD9649BB0FF46EC04E32DB04DBCC19A841DBFB614DBCE353E46108214B854094DB667DD28067D8269DC4D18C9205CF20A1C20388C482B6B718CC48C557136778AC786BC08604F168E0375349510689C0764B9ECD8BC7C7483C24E2821E9C106CF968CEBC2AFE06A5950BF71A22BC0CB9058F94E11C23F96B9A7930F4330BE0CFC217BD65D9C24178284AC2CBAC318E1C743286F437D7CBAD3409601D90E18C41C0EB03968B56F1220DEA2C569CE16EC9EF5A10DD876391C24188563D367B3C01472B823109D119427685C730308D98FE02672859BFF8480D88932466F180474B07C1C7585F875A3F1EB2EB489CF6280569789433BC641C72B9A8037F72B3C905138B475CD1140C70A7F4E930D56BC799775D0A3664F0CCDD1B33C4D5D40CA319EF80F9420BF0133148789DF8E4161BB131786EC43905C142161B0618D0CECBEFB5FDE480EE404485D6CEE1FC45826418B04874D680514D09682202B52EBDA12DD570783C74089091E4367B294141CB6588FCF6CD902B94971D8316400E410B58F5F35240F3C95080552C4224CC481C257AF6EC63A13A2164010DC83C25C0931762B75055810E45F10CCEA80B71436AF5E41C0A00C36C283805BC17A08B4858D3CDB3DA8E50C85D66FB078459AA321D19AB2598C86E8F547E239ECA4C548F4DC0D0A7E4CDDB013353AC37B11A029B0DE7705DD291A299A18516399C3C65A1742140DF0106C089E8C84734C65F402AE8020C8A5622AEE3A1B8E8C093DFFDF44CD229A70994E746B512D8F5EA4058AF814A96FFFF6E707C1E70F7701CFC707F7DFB6686B0C3248DB4F138D5B0181C06B00E0FBFE1FF5BB06135F6D2D2514386C138D728D18790869285C904713C251B46BBB019B1BDC068A1DFF9074011F586DA95CF4EE1EA3CDF70CDA746C65887C4F5E58B1E801B144299A588D076FD6BDA05C40505D92766E16BD60C9653E894316800F39108A424811C085A4EFB0238C595BBF93F06C40BE04285B830187871B9B8370C48B0A2ED085124B0BE00D7983FC425D24000A1A0300177AE5EF8993088D5002173881045246C36C1B04F47F40538029DF1D4060300238CAB786B5F619F1A9C301C0291F11B45534E23FC20539CB5EAB6A773E61AF7D67407432FC3D867C39BEBD6FA108ECAAA9964AC6D88BBE14D1A2D771D6964A93ABF8ADC0BB48FB8B8E1C014F4AC018F1770397895EDEE66E85221A73031F4E203F2C59EBA8F3D4161585B6A02F1AE6F9E4F7FF4E76F3DC6ED90018EB2090150E0102DC6BC39C684AA25D19A219B8DB7C0986280D34454D485E24F3016FFB07201124264ED4AAB3353E7C4C481708DCB3456CE1F947721055F0BD08B61F8B2B0C90B7406C0A42BCE26CD29FA2B2D55699EDC1BD01E0BA919A92862A13C240C361667ACCBC100F824A1AA22148803B3C8B9E30AB4F106DED843EF84946F03D8A98DBEEDC399D28E987ADCB44A02755AA964E8133B709205465FEEBAC05235C9C0A8164B64EBAA54AEB9E808A90BEC2E157C418B901F8F2FB555C88303B2872FBFD028F5A3063618B10575D9D1D888B4C41914A18D9B316DB9575DE772081D08C3F2F407504606F16BEEE377DF402470F3E3083E33FC1E31098A2D70ED201C3648A9C6AB1A29ADDB641BF87775E2B86A243C2492F" $sFileBin &= "580F59685991B747EBA89366C266861F5A00753D2161492989D36DC097553322D8029F292037A8083F2F8D63EA5B26487F7B408D5F2C17A66A3B3C474405288FE021874004B6ECEB2A81461385FAFC32881598C5522CEA46E1DD96ACD6AC17892908F7CF01EB8750E973488D8726E0B02D8BEC7E568F0F472B580F1F5116B19533FAAC5783C32C78822212AFAB1920E90ADF09C1BB8C9F833086205601227B80328A0987876F6F3BB4ACE7080CB74390A2DAA159674E1B08921D10F2EB943FAA428F3D8825881CC9172EA20D8C8F0E4143C133456B6F5F430E966478FE368DFC4BC01B087FC1188700EF5BAC7889A45720BA05CFA20D16782440026F3F0086D736846920D3566DD98A32366D20C603825CC48311460B442457E157FFF7050F0E7C6904C9E6706B3859577422ADBA078F30151C5E9D90BEBCC50061F86CFE857437B56C20279397441C8A3FD8007774D6A6E347398FB9F2DD7014A2A7BB40505C8DE0C5BE6450554F36008784046F2F1D8EC1E16190198BB3004E01C4C0172D3B24F192FA06088E6FFCECCE02B680792096402313502A0596E0138DC041D8B951EDD4458D89AC830E08195946961C0C481004D946B6671406101814081C0365641918202C67503029809E03DA63E12FC52C7EB3EF842209C40FE3F1501D5A7E28682039D3C1546BF081A74859C1E3A08A3FC42692F1ED793C43746696260A5A363F0EFBF44D14825C30817B10FEBF243ED110F70C345308316958C15BFC770A59661C839871A45B913CEF8F0E8260296F06125BA968587F405A6F31D8B35A4B917C159057865506BFBBB51B811CB9254932502F8DB65F7D308B5818C75024360E96DC101D9746048A8625388B0C83D0880D6E8E833BD872175DFD12B07BCA6E29DA380416EFF8132A352429EF3F17A92E531A904823232480993928254F6CCFB972148F89988948B354B76D11789140891E20561E550A5C9890234A80213EA9FC149925083D3B294C4388BC063C990EDCCDD5FB39FEBC720DAE50182AD3DB29F9AC0E7449AFF5F625CC5482B52455D1216A80CCFA37102102BA43105A2BF096EAAA6A6AC710022B0451E0005810F3FDCF41D797D01848C79B38440E0274199DDBDC8B3BFC693E086C4172A15850899003B899728D2CFA08EB84EF4A1A86165D518B57EF292A01B0F025F18B31FF4F6FC17B296A6F25320189173B178B010FCDED169A7F040309C3040C095E7829700771E5FF47C6F0FF07A126A400BF0C3F6D0168DB02574401132AB889566E4C44101147D6754F1B0FD58D398D42CD478E0F660DAB60414A84E46A84A17E8B1D1B45A22A1F94E2C6B7FD9873291D2A29C65BC1FE8FF031F2B987B9AE3453043734D0C24B081DC2CFB549FB172BB8064B0907EE0275E795102CEB74EBA29F5DA5B67DC9D733EB1BFF4B5C43498B5AA02EB4FFFB1B01CA114EA44B4B44649F3B5975E0027A81B537272F2A75D5C0215E412F175F58962D259F705D463791A569038856050F47579C0AC056105E08055D17C45B8D13FF4610D4062C8B7E03BAC53C82CB404BBC742F3B460C0AD4842E315658B4C85CF71658B6294C04342E7A76487175D18D34BEEBC427CD944DFF8F554657273D014D0B880AD1055641051C9310A502D98A469BAD21F2B68801B20C99AD0CC8612F25CF02982EAD0A12C95A9FCC95EE3855B3DCFE9080C71555D100B8069220FD5DA266FBD091F0060CE06B74342068D0AE0B98942097DB881DDCCE4954AB87B0C70508210CB0C07283250AA3B86C5D3FD0291495E0D00BB23BC49B2286901B591238F694E04C93D04F3965B625DF4028E0445064EC56F1FFFF88A050054C64646464480C0804766C2C7640CC000B3405380000005B5104031162A62007322403C80A00082403C8400B00ADB24032093FD334CD950B010203042FB0254D0506330203419EB3ED0405060207000A0040A0BB99FF056AF103F7540564290811A00A1905FEFF97675CA00152656C6561736553656D6170686F7265DBF67F5B4C0F7665437269746963616C1763076FEBA6E4B76E15456E746572443D742C00DAB62B47144C5474F66DBB3DF20D57611E460853696E672DDAB737F74F626A2514436C6F7548616E64126D6BDBE60C776146457664413D96EC8B95530A9C730B236E6E976CA727496E7675697AF634DBC880DE694866296BDBB6B95F336C6E630770274AB1FFE76C661E345F6578636570745F6888EEAEDDDC72332A606D6F711A6265672D673CD6BA6876642518637079B28F6FDBFFFF0757076DF09A17F03505F0F902F06901F0D402050B7204196DEDFFFF35F0B90261BBF00705D1F0D302ECF0B101C2181C193DFDFFFFB61F6228FE03F0B31C3522453982204733730528F08B170709FDF6DFDD011B070C05F0340D65F03F06070A0D0D090D070F4BFF63BF0210050D0D06000C06F00C0A040050453D4CCDFF43FE010300448DAF4BE0000E210B01050C0098081B699A27801110B0100B6E166C19020433070CC0CEDC92D01E341007CB66E9D906A0B3D66E8CB15040B21C24C0F01706B26EA7581E2EF9787436B0C176077C979098C40267DBF87220602E726424611B0E7317D27DFB06279C40022763939B636510B32A01FCA2CDED376527421B34B2103EC1B7000000700400240000FF00000000000000000000000000807C2408010F85B901000060BE009000108DBE0080FFFF57EB109090909090908A064688074701DB75078B1E83EEFC11DB72EDB80100000001DB75078B1E83EEFC11DB11C001DB73EF75098B1E83EEFC11DB73E431C983E803720DC1E0088A" $sFileBin &= "064683F0FF747489C501DB75078B1E83EEFC11DB11C901DB75078B1E83EEFC11DB11C975204101DB75078B1E83EEFC11DB11C901DB73EF75098B1E83EEFC11DB73E483C10281FD00F3FFFF83D1018D142F83FDFC760F8A02428807474975F7E963FFFFFF908B0283C204890783C70483E90477F101CFE94CFFFFFF5E89F7B9D40100008A07472CE83C0177F7803F0375F28B078A5F0466C1E808C1C01086C429F880EBE801F0890783C70588D8E2D98DBE00C000008B0709C0743C8B5F048D843000E0000001F35083C708FF963CE00000958A074708C074DC89F95748F2AE55FF9640E0000009C07407890383C304EBE16131C0C20C0083C7048D5EFC31C08A074709C074223CEF771101C38B0386C4C1C01086C401F08903EBE2240FC1E010668B0783C702EBE28BAE44E000008DBE00F0FFFFBB0010000050546A045357FFD58D87EF01000080207F8060287F585054505357FFD558618D4424806A0039C475FA83EC80E9272EFFFF00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005CF000003CF0000000000000000000000000000069F0000054F00000000000000000000000000000000000000000000074F0000082F0000092F00000A2F00000B0F0000000000000BEF00000000000004B45524E454C33322E444C4C006D73766372742E646C6C0000004C6F61644C69627261727941000047657450726F634164647265737300005669727475616C50726F7465637400005669727475616C416C6C6F6300005669727475616C46726565000000667265650000000000000000448DAF4B000000000EF10000010000000300000003000000F0F00000FCF0000008F10000E2100000411100006B10000017F100001FF100002EF100000000010002006C7A6D612E646C6C004C7A6D61446563004C7A6D6144656347657453697A65004C7A6D61456E6300000000E000000C0000009D3100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" If Not FileExists ( $sOutputDirPath ) Then DirCreate ( $sOutputDirPath ) If StringRight ( $sOutputDirPath, 1 ) <> '\' Then $sOutputDirPath &= '\' Local $sFilePath = $sOutputDirPath & $sFileName If FileExists ( $sFilePath ) Then If $iOverWrite = 1 Then If Not Filedelete ( $sFilePath ) Then Return SetError ( 1, 0, $sFileBin ) Else Return SetError ( 0, 0, $sFileBin ) EndIf EndIf Local $hFile = FileOpen ( $sFilePath, 16+2 ) If $hFile = -1 Then Return SetError ( 2, 0, $sFileBin ) FileWrite ( $hFile, $sFileBin ) FileClose ( $hFile ) Return SetError ( 0, 0, $sFileBin ) EndFunc ;==> _Lzmadll () Func _LzntDecompress ( $bBinary ); by trancexx $bBinary = Binary ( $bBinary ) Local $tInput = DllStructCreate ( 'byte[' & BinaryLen ( $bBinary ) & ']' ) DllStructSetData ( $tInput, 1, $bBinary ) Local $tBuffer = DllStructCreate ( 'byte[' & 16 * DllStructGetSize ( $tInput ) & ']' ) Local $a_Call = DllCall ( 'ntdll.dll', 'int', 'RtlDecompressBuffer', 'ushort', 2, 'ptr', DllStructGetPtr ( $tBuffer ), 'dword', DllStructGetSize ( $tBuffer ), 'ptr', DllStructGetPtr ( $tInput ), 'dword', DllStructGetSize ( $tInput ), 'dword*', 0 ) If @error Or $a_Call[0] Then Return SetError ( 1, 0, '' ) Local $tOutput = DllStructCreate ( 'byte[' & $a_Call[6] & ']', DllStructGetPtr ( $tBuffer ) ) Return SetError ( 0, 0, DllStructGetData ( $tOutput, 1 ) ) EndFunc ;==> _LzntDecompress () Func _MouseIsOverAdressBar () $sControlText='' $aMousePos = MouseGetPos () If @error Then Return DllStructSetData ( $tStruct, 1, $aMousePos[0] ) DllStructSetData ( $tStruct, 2, $aMousePos[1] ) $hControl = _WinAPI_WindowFromPoint ( $tStruct ) $hAncestorWindow = _WinAPI_GetAncestor ( $hControl, 2 ) $hRealControl = $hAncestorWindow Do $hWnd = $hRealControl $hRealControl = _RealChildWindowFromPoint ( $hWnd, $aMousePos[0], $aMousePos[1] ) Until $hRealControl = $hWnd $sControlClassName = _WinAPI_GetClassName ( $hRealControl ) $sControlClassNameNN = _ControlGetClassnameNN ( $hRealControl ) Local $sProcessName = _ProcessGetNameByWinHandle ( $hAncestorWindow ) ; control or text can only be found for IE or Chromium familly (Chromium, Chrome, SrWare Iron, Comodo Dragon, Yandex.Browser). Switch $sControlClassName ; for other browsers you need to copy the url. Case 'MozillaWindowClass' $sControlClassNameNN = 'UnknowClassNN' $sControlText = _BrowserGetCurrentURL ( 'firefox' ) Case 'OperaWindowClass' $sControlClassNameNN = 'UnknowClassNN' $sControlText = _BrowserGetCurrentURL ( 'opera' ) Case 'SafariEdit', 'TTBXToolbar', 'TTBXEdit.UnicodeClass', 'Maxthon3Cls_MainFrm' $sControlClassNameNN = 'UnknowClassNN' Case 'YandexBrowser_OmniboxView' $sControlClassNameNN = 'YandexBrowser_OmniboxView1' EndSwitch If Not $sControlText And $sControlClassNameNN <> 'UnknowClassNN' Then $sControlText = ControlGetText ( $hAncestorWindow, '', $sControlClassNameNN ) Switch $sControlClassNameNN Case 'Chrome_OmniboxView1', 'Chrome_AutocompleteEditView1', 'Edit1', 'YandexBrowser_OmniboxView1', 'UnknowClassNN' ; Chrome_AutocompleteEditView1 is for old version If $sControlClassNameNN = 'Edit1' And $sProcessName <> 'iexplore.exe' Then $sControlClassNameNN = 'UnknowClassNN' If $sControlClassNameNN <> 'UnknowClassNN' Then If $iSearching = 0 Then If $iCursorSet <> 1 Then $iCursorSet = 1 ;~ ConsoleWrite ( StringFormat ( '%03i', @ScriptLineNumber ) & ' Blue Cursor ' & $iCursorSet & @Crlf ) If $iDisableCursorChange = 0 Then _CursorSet ( $sCursorPath1, $OCR_NORMAL ) _CursorSet ( $sCursorPath1, $OCR_IBEAM ) EndIf EndIf ElseIf $iSearching = 1 Then If $iCursorSet <> 2 Then $iCursorSet = 2 ;~ ConsoleWrite ( StringFormat ( '%03i', @ScriptLineNumber ) & ' Red Cursor ' & $iCursorSet & @Crlf ) If $iDisableCursorChange = 0 Then _CursorSet ( $sCursorPath2, $OCR_NORMAL ) _CursorSet ( $sCursorPath2, $OCR_IBEAM ) EndIf EndIf EndIf EndIf Case Else If $iCursorSet <> 0 Then $iCursorSet = 0 DllCall ( $hUser32DLL, 'int', 'SystemParametersInfo', 'int', $SPI_SetCursors, 'int', 0, 'int', 0, 'int', 0 ) ;~ ConsoleWrite ( StringFormat ( '%03i', @ScriptLineNumber ) & ' Reset Cursor ' & $iCursorSet & @Crlf ) EndIf EndSwitch EndFunc ;==> _MouseIsOverAdressBar () Func _PathSplit ( $szPath, ByRef $szDrive, ByRef $szDir, ByRef $szFName, ByRef $szExt ) Local $drive = '', $dir = '', $fname = '', $ext = '', $pos, $array[5] $array[0] = $szPath If StringMid ( $szPath, 2, 1 ) = ':' Then $drive = StringLeft ( $szPath, 2 ) $szPath = StringTrimLeft ( $szPath, 2 ) ElseIf StringLeft ( $szPath, 2 ) = '\\' Then $szPath = StringTrimLeft ( $szPath, 2 ) $pos = StringInStr ( $szPath, '\' ) If $pos = 0 Then $pos = StringInStr ( $szPath, '/' ) If $pos = 0 Then $drive = '\\' & $szPath $szPath = '' Else $drive = '\\' & StringLeft ( $szPath, $pos - 1 ) $szPath = StringTrimLeft ( $szPath, $pos - 1 ) EndIf EndIf Local $nPosForward = StringInStr ( $szPath, '/', 0, -1 ) Local $nPosBackward = StringInStr ( $szPath, '\', 0, -1 ) If $nPosForward >= $nPosBackward Then $pos = $nPosForward Else $pos = $nPosBackward EndIf $dir = StringLeft ( $szPath, $pos ) $fname = StringRight ( $szPath, StringLen ( $szPath ) - $pos ) If StringLen ( $dir ) = 0 Then $fname = $szPath $pos = StringInStr ( $fname, '.', 0, -1 ) If $pos Then $ext = StringRight ( $fname, StringLen ( $fname ) - ( $pos - 1 ) ) $fname = StringLeft ( $fname, $pos - 1 ) EndIf $szDrive = $drive $szDir = $dir $szFName = $fname $szExt = $ext $array[1] = $drive $array[2] = $dir $array[3] = $fname $array[4] = $ext Return $array EndFunc ;==> _PathSplit () Func _ProcessGetName ( $iPid ) If Not ProcessExists ( $iPid ) Then Return SetError ( 1, 0, '' ) Local $aProcessList = ProcessList () For $i = 1 To $aProcessList[0][0] If $aProcessList[$i][1] = $iPid Then Return $aProcessList[$i][0] Next EndFunc ;==> _ProcessGetName () Func _ProcessGetNameByWinHandle ( $hWnd ) Local $iPid = WinGetProcess ( $hWnd ) If $iPid > 0 Then Return _ProcessGetName ( $iPid ) EndFunc ;==> _ProcessGetNameByWinHandle () Func _RealChildWindowFromPoint ( $hWnd, $x, $y ) Local $aPos = WinGetPos ( $hWnd ) If @error Then Return SetError ( 1, 0, '' ) Local $aSize = WinGetClientSize ( $hWnd ) If @error Then Return SetError ( 2, 0, '' ) $aPos[0] += ( ( $aPos[2] - $aSize[0] ) / 2 ) $aPos[1] += ( ( $aPos[3] - $aSize[1] ) - ( ( $aPos[2] - $aSize[0] ) / 2 ) ) Local $aRet = DLLCall ( $hUser32DLL, 'hwnd', 'RealChildWindowFromPoint', 'hwnd', $hWnd, 'int', $x - $aPos[0], 'int', $y - $aPos[1] ) If Not @error And $aRet[0] Then Return $aRet[0] EndFunc ;==> _RealChildWindowFromPoint () Func _RefreshDesktopAuto () If $iRefreshDesktopAuto Then $iRefreshDesktopAuto = 0 RegWrite ( $sRegKeySettings, 'RefreshDesktopAuto', 'REG_SZ', 0 ) TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) Else $iRefreshDesktopAuto = 1 RegWrite ( $sRegKeySettings, 'RefreshDesktopAuto', 'REG_SZ', 1 ) TrayItemSetState ( @TRAY_ID, $TRAY_CHECKED ) EndIf EndFunc ;==> RefreshDesktopAuto () Func _ScriptGetVersion () Local $sFileVersion If @Compiled Then $sFileVersion = FileGetVersion ( @ScriptFullPath, 'FileVersion' ) Else $sFileVersion = _StringBetween ( FileRead ( @ScriptFullPath ), '#AutoIt3Wrapper_Res_Fileversion=', @CR ) If Not @error Then $sFileVersion = $sFileVersion[0] Else $sFileVersion = '0.0.0.0' EndIf EndIf Return $sFileVersion EndFunc ;==> _ScriptGetVersion () Func _Shortcut1Ico ( $sFileName, $sOutputDirPath, $iOverWrite=0 ) Local $sFileBin = "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" $sFileBin &= "P8Lj62k9gc7Z7xxGs9gd1GnaULS72rBbPEncCPsu/tFllBQtk4qCAwZ50no4XpRJTnQzTCnyZoGXx2xcj+obuvjnoZVBCUDVyPnuTad6Y9jfFesW778HuzbTN0ER/f2sWip1mIvFKikVNwTwi79UUTEs+45mAHs01nH5fr16MsVpCbhBb4gojzO5zbyi+BLEz04tnshVkWIl2H95i/QygIBZFxmqlCjTti6hXIxKPHt6iq8nmX9CsmIAk39ynxCr9KxcwS/EeXBAs/Be7hgpYLgdXc1+anrASB6w1RPk1HR3bZRbi03t4DiLcFj4WhWqDzn5X8trOZFUyiuy6UpUuKG48JfWtWTD+0wvo0p8vR/GyGyY7zMgL6Aw0roiQWWSiQvdoEKGIVYQFIwh95MhKvXyyAYfeVfCsP40QlW7i3gzuHq92pi1+yY2EU2ZI4nfEfCy+8kC+qU2NR50d/N42d20xCXUSZw3zNDP61e0k2fSwmFVnGPbMpur0Qu4gpF/DQp195niGLgqdGKSP+GhH/7Lx7+IZkTZeWCti+4/B6ILw9kK0mH2MY17kbPeLNEM66wao39VVJUslpVobe/WQgAB4AZyy680f/UqgoqOAsunYyzS17oAEH0rejPID+/6pv9jfraM2HH0mOBMew/SLBAkungWJKXV5ATp6z9BJY26XWZmTxrkgAD8vWh5eR5R+G/0l0w0qbfJ1rpZtqj17fhAggWI47hoCg10qXOjG5GWLNZMJ2ihFqzBWgR4ZovNBmCAr/9BdcXvZzr+TBtKKQBIc9ubmwg3U5hwMYBg2ShvkO9M+6WHC4TYtHVI41UT7AN1WP0Aju/mDY/ugsb/AMwuxG8WFNL+gd9vffoUzrHkAsoi7fdeVg8PV1kmpm6dPY2MQ4lpzlbdeg63Z8K+AZNbzK3y5yhWCM8lzrQK8qAumqXCcff/+ABDypkL+Z116Z86Ft1ggC9cB4kq7qWOWkWAjpH4bnxv+Yi9oN2RFjh1Qk4JQh9m9mOio14lI8HN7IRnaQWRqrxDrrLwYyG03Jsvl9FHd/4fuO52go1MCSoNhKeUC1wuvia5v9VqImRTwd8/BcFER9WXvuCthjc8sohunmGKQLE9JEI92gG0nA50IGJoowRDF6pVP6vB3ohL2yQ+RwVsy/LONiKsSIEXXHcvpAt5dhBAcgBO4qoVQWMxlw0/0xJOIPbjkzoBnBMEacqTxaKbre78aSzT40+DYNnyLM22WrEM5jdSJyT4hthKkCJ/XtTODxbwNS1jy5iZe2nFbGDrhimvsSUAbczG+UX7f1fSHuz8GKO2LKYxzKwQRbkmyQsnmzuDIvslToWIM7Geb1Bh0OkTlVzBqMZL60MVCA15UhcWUlJxvdhSyjCoz/CQqflUIOPveKx3HJAGM/Tz+KLxbj0bE/O1i5CekoJ/XwaF3cD6mzdp9/ikE5HUfskGQHGi7keQ1Bzh4OSCaFu223lQeepPFNvCUMg17g8Qtm+cISQEmGXQLSgmNkGE9LZQ8NbXyux23iwmGMxn9CLZ8nawGIOhHYHhNDyROgAtY3CQPEAC2Pdg8czlDJa0+V+N6ihpWJ7Z5d9OOJyWTVpjE+fiELx9o/oH9GthCas1yyKoLitYPqvVdaCX1xvud0WK1zhx8NVg1/9gmm3AbN5E9hs4tduxEza7Zfag9JBRNieJXoOoZQgNmz4leKXdrrvYlAaqzlg3XkqJINjgPGPGClSwJOiNUNUOdMwMAyg8GRcx4XuZ4vSeD/0uNrZAaaHJ5CIRo3WraDFYn1D8d8lZgASXaH06E3H4FOVIZgdsvIays5rwLVnqKApdzSw+PHCyB/mRKm6xSEWqpCEE7WLkGfG2oUUzm5HczKAPe+BWy+PY14iogFRcF+lj6j19Eh7y0VKpaKnSNMEKtYiyO1jbhkuF07+h4YoruSr7z6Bpuy9TUZDKZ0AmSD85mQPWRHP8s/aJqm+K9PfQYEii5IGtD8giKZC4ktJXPHwbOdYXwEgQbNniZHxZYkw9wkMU9kbUB80Hfwle55ovJ7wGnEN5w/0o1iTWkP7FCONW8zU5OXoMwz1yAr6eNmelRxXXTFlVcoPZ2iw8NaVv3FwdtPWS926mcuGESystXzcj4VcyG8vw2jESUb/gn6dKTX1ckE4k/tapcd+FSgN6TDst7m80klgkmksAY4fjeZqsIKeDIhNDJgFZLzNaksJlLCZup2LFp26PcGQClUpVG4F/ZSxbb3Qa5kN3CWMHeztSWWlOUGTEBgyrAIyApicwUGBtMf9gxluQuVW//94gHQiQHUeuqu/62L7rw+DlCp8eYGkFNL63vrV9N16Eo8Zv8UUVbqGRwEN/jTG3i1Se4ekjqIguqbLUz2NFE0kqWsbeopmtplXXdQpUVgwfAm3zZPTRqguJe9OCigKy2V1wRKwgNG4KXqaLgZVvDKaYfO5EhgMelrzeH4EC2EFr4gasseqOlZUXDwvOExk1npjFQmaYSQ3gB7jUKcUlwrayMPSpfxd3qpwUJhwspIH1PxmIpQ7w1jIoGh6UE98ghmteR5Cm4zTLiUzbpiGNyDuHY1sQWN52qhJwhJYMe4NLHTLbfJBIR5sVODwQ/uCInXlx9xxCZ452Jg5d5gSez/OWhDkjvGCnGd86dhIglRhT2yltJ15Q+vcQ7mdKphitJ5Q0oYjufGX5SSeXjXhAq0/Q8eCSX55mXYNBOyNk7hhnkKDt0IMVIaQOmQLGMvqgNnOKZXD2j44pUFyHppSdEROzE/2sJfU1ZYXu+PdlikexQ5tFcuf5Wd0Byd4N/34IpSCuU0Ts9eUAquFLVERC2NgEgOdpuYdMVDIYcIFQgpnL8XJxPouXCNCD1BJYOgoza333PwrFru4nsFPBwMi7xrNc1tL14SAT7pVBED0uCp5jvtWP43iy+XNga9I4SSGCvEwO0HPJa5ni1hcEB3fuWkc4gei91ZsmKbVxoXp9es+l8mwX6/CCuEsBVYAdiXh7Nz+Jigi8NXOYPCRaxY0nPClap0rLtnKi91s7DTk3d3dSSeuUk42bX2t5lz5kTwThck9fLNAg4loKlFR6V5stRf2iPhJg8TzFZyliex4Z98D6R1Bp07t6ne2Y+6lhJOHrPmbZ97ymLQwxrfIdpYybEHDqbVto3K5rHbI6SfaPMs+hG6tBEshwv/Glx6JtM1Jo5VGPL+pv3jJavWZ4uqgbF5nigLMf97g7Gp+n3k3ScEfhd534h9Eab/roASdJlLG+vYjLihDK+incmOmiFWEqZjoRN2t90LyHMynZwuJJbQ62id2tXnbJNXA0tSNoHmT1mN2YsuMfAMVtegoTQjWExfACicKP8DIC/ocJvSEzEYEkqKOrZWW6uN4f89f25dZjQyvIVtF6OAwMAOlTRg6DGmjQ1faav9+orl9xGjzyd3AVNtc9gZkBdlqOchlKanKZZ1Z5cTkrkuV+Z4juUb2xGO4oa3/6OOn7gE3S3IS+Z7uOxpEQgR7Mwq3Xjt/yFwZjVphH2uNU+5JKbmAAvAEqtEKnn/djN53HBkWoNlLXYm/Qgkrp2exO2SIaHes/FbsOb31didKPPZXyMrDpQ4ATh3UG3MIF0RYF05R2e8nLlBElrkeyjrd3DvlICw26c0JdPqgiIwHlxXANjk+Jds7E9h0KV0QMGo5i939vnvJD0nM6OliaoWT3nYcEFt3LWY21ZaQ2KqVlTitrSenlzUO8FDcE/5Yo+UxoUWJqT4x+c8LnrOpcY0RAaNcAAE3tiGMqr21CS5dGeLr81FHLLnwTFXiHRKb2to/w2yqeoVY3cORBAqTuPgz2SxxwLOKIOsH5Uh0acAm1YQkTTGLt3p0IclMUhBWBfVmwJHePaKqctYQ51d5xEstmPGV6Y+LDQwbTX/ciwxTtohZVCSVmC+CuNNw8rC0V6583HV8ey0KReeBYYLNk3qXzzoRJNX1uBUe8cQOEjNPc/JjB3FQzCBh1mi4uaTRDB341iiDzOeW/" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin &= "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" $sFileBin = Binary ( _Base64Decode ( $sFileBin ) ) $sFileBin = Binary ( _LZMADec ( $sFileBin ) ) If Not FileExists ( $sOutputDirPath ) Then DirCreate ( $sOutputDirPath ) If StringRight ( $sOutputDirPath, 1 ) <> '\' Then $sOutputDirPath &= '\' Local $sFilePath = $sOutputDirPath & $sFileName If FileExists ( $sFilePath ) Then If $iOverWrite = 1 Then If Not Filedelete ( $sFilePath ) Then Return SetError ( 2, 0, $sFileBin ) Else Return SetError ( 0, 0, $sFileBin ) EndIf EndIf Local $hFile = FileOpen ( $sFilePath, 16+2 ) If $hFile = -1 Then Return SetError ( 3, 0, $sFileBin ) FileWrite ( $hFile, $sFileBin ) FileClose ( $hFile ) Return SetError ( 0, 0, $sFileBin ) EndFunc ;==> _Shortcut1Ico () 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 ;==> _Singleton () Func _SoundsMute () If $iMute = 1 Then $iMute = 0 TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) RegWrite ( $sRegKeySettings, 'MuteSounds', 'REG_SZ', 0 ) Else $iMute = 1 TrayItemSetState ( @TRAY_ID, $TRAY_CHECKED ) RegWrite ( $sRegKeySettings, 'MuteSounds', 'REG_SZ', 1 ) EndIf EndFunc ;==> _SoundsMute () Func _StartWithWindows () If @Compiled Then If TrayItemGetState ( @TRAY_ID ) = $TRAY_CHECKED + $TRAY_ENABLE Then RegWrite ( 'HKCU\Software\Microsoft\Windows\CurrentVersion\Run', $sRegTitleKey, 'REG_SZ', @ScriptFullPath ) _TrayTip ( $sSoftTitle, $sRegTitleKey & ' is added to Windows Start !', 1 ) Else RegDelete ( 'HKCU\Software\Microsoft\Windows\CurrentVersion\Run', $sRegTitleKey ) _TrayTip ( $sSoftTitle, $sRegTitleKey & ' was removed to Windows Start !', 1 ) EndIf Else TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) MsgBox ( 262144+4096+16, 'Error', 'Script must be Compiled !' & @CRLF, 5 ) EndIf EndFunc ;==> _StartWithWindows () Func _StringAscIICodesRemove ( $sString ) Local $aString, $iAsc, $sChr Local $aAscIICodes[246][2] = [[34, 'quot'], [38, 'amp'], [39, 'apos'], [60, 'lt'], [62, 'gt'], [160, 'nbsp'], [161, 'iexcl'], [162, 'cent'], [163, 'pound'], [164, 'curren'], _ [165, 'yen'], [166, 'brvbar'], [167, 'sect'], [168, 'uml'], [169, 'copy'], [170, 'ordf'], [171, 'laquo'], [172, 'not'], [173, 'shy'], [174, 'reg'], [175, 'macr'], _ [176, 'deg'], [177, 'plusmn'], [180, 'acute'], [181, 'micro'], [182, 'para'], [183, 'middot'], [184, 'cedil'], [186, 'ordm'], [187, 'raquo'], [191, 'iquest'], _ [192, 'Agrave'], [193, 'Aacute'], [194, 'Acirc'], [195, 'Atilde'], [196, 'Auml'], [197, 'Aring'], [198, 'AElig'], [199, 'Ccedil'], [200, 'Egrave'], [201, 'Eacute'], _ [202, 'Ecirc'], [203, 'Euml'], [204, 'Igrave'], [205, 'Iacute'], [206, 'Icirc'], [207, 'Iuml'], [208, 'ETH'], [209, 'Ntilde'], [210, 'Ograve'], [211, 'Oacute'], _ [212, 'Ocirc'], [213, 'Otilde'], [214, 'Ouml'], [215, 'times'], [216, 'Oslash'], [217, 'Ugrave'], [218, 'Uacute'], [219, 'Ucirc'], [220, 'Uuml'], [221, 'Yacute'], _ [222, 'THORN'], [223, 'szlig'], [224, 'agrave'], [225, 'aacute'], [226, 'acirc'], [227, 'atilde'], [228, 'auml'], [229, 'aring'], [230, 'aelig'], [231, 'ccedil'], _ [232, 'egrave'], [233, 'eacute'], [234, 'ecirc'], [235, 'euml'], [236, 'igrave'], [237, 'iacute'], [238, 'icirc'], [239, 'iuml'], [240, 'eth'], [241, 'ntilde'], _ [242, 'ograve'], [243, 'oacute'], [244, 'ocirc'], [245, 'otilde'], [246, 'ouml'], [247, 'divide'], [248, 'oslash'], [249, 'ugrave'], [250, 'uacute'], [251, 'ucirc'], _ [252, 'uuml'], [253, 'yacute'], [254, 'thorn'], [255, 'yuml'], [338, 'OElig'], [339, 'oelig'], [352, 'Scaron'], [353, 'scaron'], [376, 'Yuml'], [402, 'fnof'], _ [710, 'circ'], [732, 'tilde'], [913, 'Alpha'], [914, 'Beta'], [915, 'Gamma'], [916, 'Delta'], [917, 'Epsilon'], [918, 'Zeta'], [919, 'Eta'], [920, 'Theta'], _ [921, 'Iota'], [922, 'Kappa'], [923, 'Lambda'], [924, 'Mu'], [925, 'Nu'], [926, 'Xi'], [927, 'Omicron'], [928, 'Pi'], [929, 'Rho'], [931, 'Sigma'], [932, 'Tau'], _ [933, 'Upsilon'], [934, 'Phi'], [935, 'Chi'], [936, 'Psi'], [937, 'Omega'], [945, 'alpha'], [946, 'beta'], [947, 'gamma'], [948, 'delta'], [949, 'epsilon'], _ [950, 'zeta'], [951, 'eta'], [952, 'theta'], [953, 'iota'], [954, 'kappa'], [955, 'lambda'], [956, 'mu'], [957, 'nu'], [958, 'xi'], [959, 'omicron'], [960, 'pi'], _ [961, 'rho'], [962, 'sigmaf'], [963, 'sigma'], [964, 'tau'], [965, 'upsilon'], [966, 'phi'], [967, 'chi'], [968, 'psi'], [969, 'omega'], [977, 'thetasym'], _ [978, 'upsih'], [982, 'piv'], [8194, 'ensp'], [8195, 'emsp'], [8201, 'thinsp'], [8204, 'zwnj'], [8205, 'zwj'], [8206, 'lrm'], [8207, 'rlm'], [8211, 'ndash'], _ [8212, 'mdash'], [8216, 'lsquo'], [8217, 'rsquo'], [8218, 'sbquo'], [8220, 'ldquo'], [8221, 'rdquo'], [8222, 'bdquo'], [8224, 'dagger'], [8225, 'Dagger'], _ [8226, 'bull'], [8230, 'hellip'], [8240, 'permil'], [8242, 'prime'], [8243, 'Prime'], [8249, 'lsaquo'], [8250, 'rsaquo'], [8254, 'oline'], [8260, 'frasl'], _ [8364, 'euro'], [8465, 'image'], [8472, 'weierp'], [8476, 'real'], [8482, 'trade'], [8501, 'alefsym'], [8592, 'larr'], [8593, 'uarr'], [8594, 'rarr'], [8595, 'darr'], _ [8596, 'harr'], [8629, 'crarr'], [8656, 'lArr'], [8657, 'uArr'], [8658, 'rArr'], [8659, 'dArr'], [8660, 'hArr'], [8704, 'forall'], [8706, 'part'], [8707, 'exist'], _ [8709, 'empty'], [8711, 'nabla'], [8712, 'isin'], [8713, 'notin'], [8715, 'ni'], [8719, 'prod'], [8721, 'sum'], [8722, 'minus'], [8727, 'lowast'], [8730, 'radic'], _ [8733, 'prop'], [8734, 'infin'], [8736, 'ang'], [8743, 'and'], [8744, 'or'], [8745, 'cap'], [8746, 'cup'], [8747, 'int'], [8764, 'sim'], [8773, 'cong'], [8776, 'asymp'], _ [8800, 'ne'], [8801, 'equiv'], [8804, 'le'], [8805, 'ge'], [8834, 'sub'], [8835, 'sup'], [8836, 'nsub'], [8838, 'sube'], [8839, 'supe'], [8853, 'oplus'], [8855, 'otimes'], _ [8869, 'perp'], [8901, 'sdot'], [8968, 'lceil'], [8969, 'rceil'], [8970, 'lfloor'], [8971, 'rfloor'], [9001, 'lang'], [9002, 'rang'], [9674, 'loz'], [9824, 'spades'], _ [9827, 'clubs'], [9829, 'hearts'], [9830, 'diams']] For $i = 0 To UBound ( $aAscIICodes ) -1 $sString = StringReplace ( $sString, '&' & $aAscIICodes[$i][1] & ';', ChrW ( $aAscIICodes[$i][0] ), 0, 1 ) Next $aString = StringRegExp ( $sString, '(&#\d+;)', 3 ) For $i = 0 To UBound ( $aString ) -1 $iAsc = StringRegExpReplace ( $aString[$i], '\D+', '' ) If $iAsc > 255 Then $sChr = ChrW ( $iAsc ) Else $sChr = Chr ( $iAsc ) EndIf $sString = StringReplace ( $sString, $aString[$i], $sChr ) Next Local $s = '', $j For $i = 1 To StringLen ( $sString ) $j = AscW ( StringMid ( $sString, $i, 1 ) ) If $j > 32 Then $s &= StringMid ( $sString, $i, 1 ) Else $s &= ' ' EndIf Next $aAscIICodes = 0 Return $s EndFunc ;==> _StringAscIICodesRemove () Func _StringBetween ( $s_String, $sStart, $sEnd, $iCase = -1 ) Local $sCase = '' If $iCase = Default Or $iCase = -1 Then $sCase = '(?i)' Local $s_pattern_escape = '(\.|\||\*|\?|\+|\(|\)|\{|\}|\[|\]|\^|\$|\\)' $sStart = StringRegExpReplace ( $sStart, $s_pattern_escape, '\\$1' ) $sEnd = StringRegExpReplace ( $sEnd, $s_pattern_escape, '\\$1' ) If $sStart = '' Then $sStart = '\A' If $sEnd = '' Then $sEnd = '\z' Local $aRet = StringRegExp ( $s_String, '(?s)' & $sCase & $sStart & '(.*?)' & $sEnd, 3 ) If @error Then Return SetError ( 1, 0, 0 ) Return $aRet EndFunc ;==> _StringBetween () Func _TopicOpen () TrayItemSetState ( @TRAY_ID, $TRAY_UNCHECKED ) _BrowserOpenWithDefault ( 'http://www.autoitscript.com/forum/topic/151072-internetshortcutcreator-v1015/' ) EndFunc ;==> _TopicOpen () Func _TrayMenuSet () TraySetIcon ( $sTempDir & '\Shortcut1.ico' ) TrayCreateItem ( $sSoftTitle ) TrayItemSetOnEvent ( -1, '_TopicOpen' ) TrayCreateItem ( '' ) TrayCreateItem ( 'Open IconsShortcut Directory' ) TrayItemSetOnEvent ( -1, '_IconsShortcutDirectoryOpen' ) TrayItemSetState ( -1, $TRAY_UNCHECKED ) TrayCreateItem ( '' ) TrayCreateItem ( 'Delete Icons Cache' ) TrayItemSetOnEvent ( -1, '_IconsCacheDelete' ) TrayItemSetState ( -1, $TRAY_UNCHECKED ) TrayCreateItem ( '' ) TrayCreateItem ( 'Refresh Desktop After Shortcut Creation' ) TrayItemSetOnEvent ( -1, '_RefreshDesktopAuto' ) Local $sRegRead = RegRead ( $sRegKeySettings, 'RefreshDesktopAuto' ) If $sRegRead = '' Or $sRegRead = 0 Then $iRefreshDesktopAuto=0 TrayItemSetState ( -1, $TRAY_UNCHECKED ) Else $iRefreshDesktopAuto=1 TrayItemSetState ( -1, $TRAY_CHECKED ) EndIf TrayCreateItem ( '' ) TrayCreateItem ( 'Disable Cursor Change' ) TrayItemSetOnEvent ( -1, '_CursorDisableChange' ) Local $sRegRead = RegRead ( $sRegKeySettings, 'DisableCursorChange' ) If $sRegRead = '' Or $sRegRead = 0 Then $iDisableCursorChange=0 TrayItemSetState ( -1, $TRAY_UNCHECKED ) Else $iDisableCursorChange=1 TrayItemSetState ( -1, $TRAY_CHECKED ) EndIf TrayCreateItem ( '' ) TrayCreateItem ( 'Mute Sounds' ) TrayItemSetOnEvent ( -1, '_SoundsMute' ) Local $sRegRead = RegRead ( $sRegKeySettings, 'MuteSounds' ) If $sRegRead = '' Or $sRegRead = 0 Then $iMute=0 TrayItemSetState ( -1, $TRAY_UNCHECKED ) Else $iMute=1 TrayItemSetState ( -1, $TRAY_CHECKED ) EndIf TrayCreateItem ( '' ) TrayCreateItem ( 'Start With Windows' ) TrayItemSetOnEvent ( -1, '_StartWithWindows' ) If RegRead ( 'HKCU\Software\Microsoft\Windows\CurrentVersion\Run', $sRegTitleKey ) <> '' Then TrayItemSetState ( -1, $TRAY_CHECKED ) TrayCreateItem ( '' ) TrayCreateItem ( 'Exit' ) TrayItemSetOnEvent ( -1, '_Exit' ) TraySetClick ( 16 ) TraySetState ( 4 ) TraySetToolTip ( 'InternetShortcutCreator' & @CRLF & 'Press middle Mouse Button Or F10' & @CRLF & 'when over Browser adress bar' & @CRLF & 'for create a Shortcut on Desktop.' ) EndFunc ;==> _TrayMenuSet () Func _TrayTip ( $sTitle, $sTexte= '...', $iIco=0, $iDuration=4000 ) TrayTip ( $sTitle, $sTexte, 10, $iIco ) AdlibRegister ( '_TrayTipClose', $iDuration ) EndFunc ;==> _TrayTip () Func _TrayTipClose () TrayTip ( '', '', 1 ) AdlibUnRegister ( '_TrayTipClose' ) EndFunc ;==> _TrayTipClose () Func _WebPageGetBaseUrl ( $sString ) Local $sBase, $aBase $aBase = _StringBetween ( $sString, ' _WebPageGetBaseUrl () Func _WebPageGetFavIconByGetfaviconAppspotCom ( $sUrl, $sIconPath ) INetGet ( 'https://getfavicon.appspot.com/' & $sUrl, $sIconPath, 1+2+8+16 ) If Not @error Then Return $sIconPath EndFunc ;==> _WebPageGetFavIconByGetfaviconAppspotCom () Func _WebPageGetFaviconUrl ( $sUrl, $sHead ) Local $aHead, $aFindAll, $sRet, $aRet, $sFullUrl, $sFileType If $sHead = '' Then Return SetError ( 2, 0, '' ) $sHead = StringStripWS ( StringReplace ( $sHead, "'", '"' ), 7 ) $aHead = StringSplit ( $sHead, @LF, 1+2 ) If @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] @error : ' & @error & @Crlf ) $aHead = StringSplit ( $sHead, @CR, 1+2 ) If @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] @error : ' & @error & @Crlf ) EndIf Local $aCharToSearch[4] = [ 'rel="shortcut icon"', 'rel="icon"', ' icon" href="', '/favicon.ico"' ] For $j = 0 To UBound ( $aCharToSearch ) -1 $aFindAll = _ArrayFindAll ( $aHead, $aCharToSearch[$j], 0, 0, 0, 1 ) If Not @error And UBound ( $aFindAll ) > 0 Then $aRet = StringRegExp ( $aHead[$aFindAll[0]], '(?s)(?i)href="(.*?)"', 3 ) If Not @error And UBound ( $aRet ) > 0 Then For $i = 0 To UBound ( $aRet ) -1 If StringLeft ( $aRet[$i], 4 ) <> 'http' And StringLeft ( $aRet[$i], 1 ) <> '/' Then $aRet[$i] = '/' & $aRet[$i] $aRet[$i] = StringMid ( $aRet[$i], 1, StringInStr ( $aRet[$i], '.', 0, 1, StringLen ( StringMid ( $aRet[$i], 1, StringInStr ( $aRet[$i], '/', 0, -1 ) ) ) ) +3 ) Switch StringRight ( $aRet[$i], 3 ) Case 'ico', 'png', 'gif', 'jpg', 'bmp' $sRet = $aRet[$i] ExitLoop 2 Case Else ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] StringRight ( $aRet[' & $i & '], 3 ) : ' & StringRight ( $aRet[$i], 3 ) & @Crlf ) EndSwitch Next EndIf EndIf Next ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sRet : ' & $sRet & @Crlf ) If $sRet Then If StringLeft ( $sRet, 4 ) <> 'http' Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sRet sans http : ' & $sRet & @Crlf ) If $sRet Then $sRet = StringReplace ( $sRet, '../', '' ) $sRet = StringReplace ( $sRet, './', '' ) $sRet = StringReplace ( $sRet, ';icon-uri=/', '' ) EndIf If StringLeft ( $sRet, 2 ) = '//' Then $sFileType = _WinHttpGetFileType ( 'http:' & $sRet ) If Not @error And _FileIconUrlIsTypeValid ( $sFileType ) Then Return 'http:' & $sRet EndIf Local $sBase = _WebPageGetBaseUrl ( $sHead ) If Not @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sBase : ' & $sBase & @Crlf ) If StringLeft ( $sRet, 1 ) <> '/' Then $sRet = '/' & $sRet If InetGetSize ( $sBase & $sRet, 1+2 ) Then Return $sBase & $sRet $sFileType = _WinHttpGetFileType ( $sBase & $sRet ) If Not @error And _FileIconUrlIsTypeValid ( $sFileType ) Then Return $sBase & $sRet Else ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] No Base Found !' & @Crlf ) EndIf ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sUrl : ' & $sUrl & @Crlf ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sRet : ' & $sRet & @Crlf ) $sFullUrl = _WinINetResolveRelativeUrl ( $sUrl, $sRet ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFullUrl : ' & $sFullUrl & @Crlf ) $sFileType = _WinHttpGetFileType ( $sFullUrl ) If Not @error And _FileIconUrlIsTypeValid ( $sFileType ) Then Return $sFullUrl Local $aUrl = StringSplit ( $sUrl, '/' ) ConsoleWrite ( '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] UBound ( $aUrl ) -1 : ' & UBound ( $aUrl ) -1 & @Crlf ) If UBound ( $aUrl ) -1 > 4 Then Local $url = $aUrl[1] & '/' If StringLeft ( $sRet, 1 ) <> '/' Then $sRet = '/' & $sRet For $i = 3 to UBound ( $aUrl )-1 $url = $url & '/' & $aUrl[$i] ConsoleWrite ( '+->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $url : ' & $url & @Crlf ) If StringRight ( $url, 1 )= '/' Then $url = StringTrimRight ( $url, 1 ) $sFullUrl = $url & $sRet ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFullUrl : ' & $sFullUrl & @Crlf ) $sFileType = _WinHttpGetFileType ( $sFullUrl ) If Not @error And _FileIconUrlIsTypeValid ( $sFileType ) Then Return $sFullUrl Next EndIf Else $sFileType = _WinHttpGetFileType ( $sRet ) If Not @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFileType : ' & $sFileType & @Crlf ) If _FileIconUrlIsTypeValid ( $sFileType ) Then Return $sRet Else ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFileType : ' & $sFileType & @Crlf ) EndIf EndIf EndIf Return '' EndFunc ;==> _WebPageGetFaviconUrl () Func _WebPageGetTitle ( $sString ) If $sString = '' Then Return SetError ( 1, 0, '' ) Local $sTitle, $aTitle $aTitle = _StringBetween ( $sString, '', '' ) If Not @error Then $sTitle = StringRegExpReplace ( StringStripWS ( StringLeft ( StringStripCR ( StringReplace ( $aTitle[0], @LF, ' ' ) ), 100 ), 7 ), '[\\/ :* ?"<>\|]', ' ' ) Return SetError ( 0, 0, $sTitle ) EndIf Return SetError ( 2, 0, '' ) EndFunc ;==> _WebPageGetTitle () Func _WebPageIsFaviconToRoot ( $sUrl ) Local $aCrackedUrl = _WinHttpCrackUrl ( $sURL ) If Not @error Then Local $sRet = $aCrackedUrl[0] & '://' & $aCrackedUrl[2] & '/favicon.ico' Local $hTimerInit = TimerInit () Local $sFileType = _WinHttpGetFileType ( $sRet ) If Not @error And _FileIconUrlIsTypeValid ( $sFileType ) Then Local $iSize = InetGetSize ( $sRet ) If @error Then ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $iSize : ' & $iSize & @Crlf ) Return SetError ( 0, 0, $sRet ) EndIf ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $iSize : ' & $iSize & @Crlf ) If $iSize > 100 Then Return SetError ( 0, 0, $sRet ) ; 43 EndIf If StringLen ( $aCrackedUrl[6] ) > 1 Then If StringRight ( $aCrackedUrl[6], 1 ) = '/' Then $aCrackedUrl[6] = StringTrimRight ( $aCrackedUrl[6], 1 ) If StringLeft ( $aCrackedUrl[6], 1 ) <> '/' Then $aCrackedUrl[6] = '/' & $aCrackedUrl[6] $sRet = $aCrackedUrl[0] & '://' & $aCrackedUrl[2] & $aCrackedUrl[6] & '/favicon.ico' $sFileType = _WinHttpGetFileType ( $sRet ) If Not @error And _FileIconUrlIsTypeValid ( $sFileType ) Then Return SetError ( 0, 0, $sRet ) EndIf EndIf EndFunc ;==> _WebPageIsFaviconToRoot () Func _WinHttpGetFileType ( $sFileUrl ) Local $sData, $iError, $iStatusCode ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] [_WinHttpGetFileType] $sFileUrl : ' & $sFileUrl & @Crlf ) Local $aCrackedUrl = _WinHttpCrackUrl ( $sFileUrl, $ICU_DECODE ) If Not @error Then Local $hOpen = _WinHttpOpen ( 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)' ) _WinHttpSetTimeouts ( $hOpen, 100, 3000, 3000, 3000 ) Local $sHostName = $aCrackedUrl[2] ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sHostName : ' & $sHostName & @Crlf ) Local $iPort = $aCrackedUrl[3] Local $hConnect = _WinHttpConnect ( $hOpen, $sHostName, $iPort ) Local $sFileName = $aCrackedUrl[6], $iFlag If StringLeft ( $sFileName, 1 ) <> '/' Then $sFileName = '/' & $sFileName ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sFileName : ' & $sFileName & @Crlf ) Switch $aCrackedUrl[1] ; internet protocol scheme, 1 : http, 2 : https Case 1 $iFlag = $WINHTTP_FLAG_ESCAPE_DISABLE Case 2 $iFlag = $WINHTTP_FLAG_SECURE EndSwitch Local $hRequest = _WinHttpOpenRequest ( $hConnect, 'GET', $sFileName, 'HTTP/1.1', $sHostName, Default, $iFlag ) _WinHttpAddRequestHeaders ( $hRequest, 'Cache-Control: no-cache' ) _WinHttpSendRequest ( $hRequest ) _WinHttpReceiveResponse ( $hRequest ) If _WinHttpQueryDataAvailable ( $hRequest ) Then $iStatusCode = _WinHttpQueryHeaders ( $hRequest, $WINHTTP_QUERY_STATUS_CODE ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $iStatusCode : ' & $iStatusCode & @Crlf ) If Number ( $iStatusCode ) >= 400 Then $iError = 1 If Not $iError Then $sData = Binary ( '' ) While 1 $sData &= _WinHttpReadData ( $hRequest, 2, 32 ) ; 0 - ANSI, 1 - UTF8, 2 - Binary If Not @extended Or StringLen ( $sData ) > 20 Then ExitLoop WEnd EndIf Else $iError = 2 EndIf _WinHttpCloseHandle ( $hRequest ) _WinHttpCloseHandle ( $hConnect ) _WinHttpCloseHandle ( $hOpen ) $hRequest = 0 $hConnect = 0 $hOpen = 0 $sData = StringReplace ( StringTrimLeft ( $sData, 2 ), '00', '' ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $iError : ' & $iError & @Crlf ) If Not $iError Then Select Case StringLeft ( $sData, 8 ) = '89504E47' Or StringLeft ( $sData, 8 ) = '47494638' Or StringLeft ( $sData, 4 ) = 'ffd8' or StringLeft ( $sData, 4 ) = '424d' Return SetError ( 0, 0, 'image' ) Case StringLeft ( $sData, 3 ) = '010' Return SetError ( 0, 0, 'icon' ) Case Else Return SetError ( 0, 0, 'invalid' ) EndSelect EndIf Else ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] Error $aCrackedUrl : ' & @Crlf ) EndIf Return SetError ( $iError, 0, 'unreachable' ) EndFunc ;==> _WinHttpGetFileType () Func _WinHttpGetHtmlHeader ( $sUrl ) Local $sData, $sHeader, $iFileSize, $iError, $iStatusCode ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sUrl : ' & $sUrl & @Crlf ) $sUrl = StringRegExpReplace ( $sUrl, '\A(http://|https://)(.*?)/?\Z', '$2' ) $sUrl = StringReplace ( $sUrl, 'www.', '' ) ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sUrl : ' & $sUrl & @Crlf ) $sUrl = 'http://webcache.googleusercontent.com/search?q=cache:' & $sUrl ; using google cache is faster for some slow website's server and by the way avoid timeout. ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $sUrl : ' & $sUrl & @Crlf ) Local $aCrackedUrl = _WinHttpCrackUrl ( $sUrl, $ICU_DECODE ) If Not @error Then Local $hOpen = _WinHttpOpen ( 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)' ) _WinHttpSetTimeouts ( $hOpen, 10, 3000, 3000, 4000 ) Local $sHostName = $aCrackedUrl[2] Local $hConnect = _WinHttpConnect ( $hOpen, $sHostName, $aCrackedUrl[3] ) ; port Local $sFileName = $aCrackedUrl[6] & $aCrackedUrl[7], $iFlag If StringLeft ( $sFileName, 1 ) <> '/' Then $sFileName = '/' & $sFileName Local $hRequest = _WinHttpOpenRequest ( $hConnect, 'GET', $sFileName, 'HTTP/1.1', $sHostName ) _WinHttpAddRequestHeaders ( $hRequest, 'Cache-Control: no-cache' ) $hTimerInit1 = TimerInit ( ) _WinHttpSendRequest ( $hRequest ) ConsoleWrite ( '!-->-- [' & @ScriptLineNumber & '] TimerDiff WinHttpSendRequest : ' & TimerDiff ( $hTimerInit1 ) & @Crlf ) $hTimerInit1 = TimerInit ( ) _WinHttpReceiveResponse ( $hRequest ) ConsoleWrite ( '!-->-- [' & @ScriptLineNumber & '] TimerDiff WinHttpReceiveResponse : ' & TimerDiff ( $hTimerInit1 ) & @Crlf ) If _WinHttpQueryDataAvailable ( $hRequest ) Then $iStatusCode = _WinHttpQueryHeaders ( $hRequest, $WINHTTP_QUERY_STATUS_CODE ) If Number ( $iStatusCode ) >= 400 Then $iError = 1 ConsoleWrite ( $sChr & '->-- [' & StringFormat ( '%04i', @ScriptLineNumber ) & '] $iStatusCode : ' & $iStatusCode & @Crlf ) If Not $iError Then $sData = String ( '' ) $hTimerInit2 = TimerInit ( ) While 1 $sData &= _WinHttpReadData ( $hRequest, 0, 1024 ) ; 0 - ANSI, 1 - UTF8, 2 - Binary If Not @extended Or StringInStr ( $sData, '' ) Then ExitLoop WEnd ConsoleWrite ( '!-->-- [' & @ScriptLineNumber & '] TimerDiff WinHttpReadData : ' & TimerDiff ( $hTimerInit2 ) & @Crlf ) EndIf Else $iError = 2 EndIf _WinHttpCloseHandle ( $hRequest ) _WinHttpCloseHandle ( $hConnect ) _WinHttpCloseHandle ( $hOpen ) $hRequest = 0 $hConnect = 0 $hOpen = 0 ConsoleWrite ( '-->-- [' & StringFormat ( '%03i', @ScriptLineNumber ) & '][' & @HOUR & @MIN & @SEC & '] $iError : ' & $iError & @Crlf ) If StringInStr ( $sData, '' ) Then $sData = StringMid ( $sData, StringInStr ( $sData, '' ) ) If StringInStr ( $sData, '' ) Then $sData = StringMid ( $sData, 1, StringInStr ( $sData, '' ) + 6 ) Return SetError ( $iError, 0, $sData ) EndIf ConsoleWrite ( '-->-- [' & StringFormat ( '%03i', @ScriptLineNumber ) & '][' & @HOUR & @MIN & @SEC & '] @error $aCrackedUrl : ' & @error & @Crlf ) EndFunc ;==> _WinHttpGetHtmlHeader () Func _WinINetResolveRelativeUrl ( $sBaseUrl, $sRelativeUrl ) ; http://msdn.microsoft.com/en-us/library/windows/desktop/aa384355(v=vs.85).aspx Local $iBufferLength, $tBuffer, $aResult $iBufferLength = ( StringLen ( $sBaseUrl ) + StringLen ( $sRelativeUrl ) ) *3 + 1 Local $tBufferLength = DllStructCreate ( 'dword' ) DllStructSetData ( $tBufferLength, 1, $iBufferLength ) $tBuffer = DllStructCreate ( 'wchar[' & $iBufferLength & ']' ) $aResult = DllCall ( 'wininet.dll', 'int', 'InternetCombineUrlW', 'wstr', $sBaseUrl, 'wstr', $sRelativeUrl, 'ptr', DllStructGetPtr ( $tBuffer ), 'ptr', DllStructGetPtr ( $tBufferLength ), 'dword', 0x10000000 ) If Not @error And $aResult[0] Then Return DllStructGetData ( $tBuffer, 1 ) EndFunc ;==> _WinINetResolveRelativeUrl () Func InternalChrChange () If $sChr <> ChrW ( 33 ) Then $sChr = ChrW ( 33 ) ; ! Else $sChr = ChrW ( 43 ) ; + EndIf EndFunc ;==> InternalChrChange ()