- Offizieller Beitrag
Ich habe mir eine kleine "App" gebastelt, um mal schnell eine Web-Seite aufzurufen, etwas zu suchen oder auf einer speziellen (hinterlegten) Seite zu suchen.
(eine weniger umfangreiche Variante hatte ich irgendwo gepostet, aber nicht mehr gefunden :))
- Direkt aufgerufene Links werden abgespeichert und können aus einer Linkliste wieder gewählt werden.
- Link direkt eingeben od. aus Liste wählen - anschließend Suchbutton klicken
- um auf einer speziellen Seite zu suchen: Suchbegriff eingeben und Seite aus der Liste wählen (Bei Start bereits vorhanden: AutoIt-DE, AutoIt-EN, MSDN)
- beide Listen können in einem Konfigurationsfenster editiert werden
- - Doppelklick zum Ändern, Übernahme Änderung mit Enter
- - Doppelklick ins Leere: neuer Eintrag
- - Kontextmenü: Eintrag löschen
Das Tool "taucht ab", wenn es eine Seite aufruft und kann über das Tray-Menü wieder OnTop geholt werden, bei Bedarf auch dort versteckbar.
Einstellungen werden in einer INI im User-Verzeichnis gespeichert.
Edit: Da es wohl bei anderen Systemen Probleme beim Auslesen des Default-Browsers gibt, habe ich diese Funktion jetzt etwas verändert. Sollte nun funktionieren.
MyWebApp.au3(1.1)
#Region - TimeStamp
; 2011-10-15 21:52:55 v 1.1
#EndRegion - TimeStamp
#NoTrayIcon
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <ListViewConstants.au3>
#include <StaticConstants.au3>
#include <StructureConstants.au3>
#include <WindowsConstants.au3>
Opt('GUICloseOnESC', 0)
Opt('TrayAutoPause', 0)
Opt('TrayMenuMode', 1)
HotKeySet("{ESC}", "_close")
[/autoit] [autoit][/autoit] [autoit]Global $bData[6] = [5]
; String mit den Binärdaten von: web_search_22x22.ico
$bData[1] &= "0x0000010001001616000001002000200800001600000028000000160000002C0000000100200000000000200F0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000100000001000000010000000100000001000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000070000000E000000160000001A0000001D0000001F0000002100000021000000200000001F0000001D00000019000000130000000B0000000400000000000000000000000000000000000000000000000100000007000000190000003100000047070200641A0B0086372411A04E3A27AD53412FAC4435279C1B0F05810500006300000050000000400000002700000010000000030000000000000000000000000000000000000000000000050000000F0F0500313A230E905A4127DE66482CF9674626FF6E4E2FFF5C3815FF5D3B19FE5E4126F53E2308D12512007C050500300000001A0000000B0000000200000000000000000000000000000000000000000000000071543F245A3D1EAE866C54FBB09C89FFB9A692FF9B7E61FF7D552EFF683B0DFF5B2C00FF76522EFF7F6347FF462302F1442609863F2F1F1000000000000000000000000000000000000000000000000000000000836A5A1F664729C05E3812FF9F8368FFC2AE99FFC9B5A2FFC0A891FFAB8B6CFF835527FF74410FFF6F3D0CFF7C542DFF572D03FF4B2502FB4C2E118F3F1F1F0800000000000000000000000000000000000000001C00000964492CA05C350EFF623101FF98734EFFC5AE97FFC5AC93FFCCB49CFFD7C4B1FFC4AA8FFFA7815BFF84511FFF875A2DFF704113FF623911FF573615F75C43296900000000000000000000000000000000000000003E1F0051623F1EF56A3C0EFF784512FFA8835DFFD2BCA5FFD1B9A1FFD2BBA3FFD3BBA3FFD0B79EFFC4A587FFAC845BFF9C6F42FF8C5F33FF916D4AFF6A4521FF5D3F23D83A1D002300000000000000000000000033330005442000AB6C441EFF8A5F34FF966738FFBA9774FFD6BFA8FFD5BCA4FFD5BCA3FFD6BDA4FFCCAE90FFD1B69BFFD1B79EFFBC9977FFB18E6BFFB79C81FF957759FF765A3DFE5539226E0000000000000000000000003F170020583310DF7B5128FF9D734AFFB0875FFFD1B79EFFDFCCB8FFD8BFA5FFD9C0A6FFDAC1A7FFD4B89BFFD7BCA2FFD0B397FFCEB297FF76695DFF5C5147FF61564AFF5A4E44FF3F3329DD0000000500000000000000006A52353E684320F473410FFFAE8863FFD2B9A1FFDAC3ACFFA79786FF9E8B7AFFA89582FFDDC1A6FFD6B493FFDBC0A5FFD9BFA5FFD7BEA5FF5F5346FFA58B5CFFCDB572FFCDB470FFA28556FE564333A20000000000000000A496864C724C27FA794612FFB48E68FFE0CDBBFF786C5FFF655B52FF61574EFF6D5E4FFF886E53FFD6AF89FFDDC0A3FF917D6AFF6D5E50FF8C7554FFE4D28CFFFFFFFFFFFFFFFFFFFFFFFFFF7B654CDF0000000000000000AC9D924478522FF67F4B18FFAB7D50FFDECAB5FF70604EFFA89269FFB7A06FFFA1885FFF786552FFE4C9AEFF716150FF7B6C5DFF685C51FF796652FFD1BD97FFFFFFFFFFFFFFFFFFA09685FF443F3BF90000000000000000998579287D5C3AE682501EFFA57442FF594A3BFFD7BA72FFFFFFFFFFFFFFFFFFFFFFFFFFA28859FF676058FF776C61FFAC9A88FFCEBBA8FF6A635BFF403F3CFF585755FF70706DFF6C6A69FF414141FE181818DB000000007F7F660A745436BA885D32FFAD8053FF77624EFFE4D2A0FFFFFFFFFFFFFFFFFFDAC89BFF706146FF615A55FFB2A394FFCCBBA9FFC9B6A4FF897C6FFF333230FF494948FF686868FF707070FF4F4F4EFF232323CA0000000000000000614323666B4015FBA87D53FF7B6147FF8A7358FFB39B76FFA38D69FF7B7362FF585655FF474543FF958D84FF796D62FF887869FF817567FF433F39FF3E3E3DFF5E5E5EFF707070FF5B5B5BFF2E2E2ED5000000000000000050352813542E08BB8B5D30FFAC7947FF534435FF3E3E3EFF5E5E5EFF757575FF636363FF3E3E3EFF696158FF675543FF735C46FF594C3FFF3A3530FF333231FF535251FF6C6C6CFE646464FE373737E300000000000000000000000041230533704B27D7926130FFB5824EFF4E463EFF4F4F4FFF6F6F6FFF6B6B6BFF4B4B4BFF393633FF322C26FF4F4337FF4F4438FF2B2B29FF303030FF454545FE5F5F5EFE595959FE434343FE00000000000000000000000000000000644B323D785531CD9B7045FF8A735CFF4B4948FF616161FF6E6E6EFF575757FF3B3B3BFF383838FF494948FF454544FF454545FF4A4A4AFF4E4E4EFE515151FF545454FF363636FF00000000000000000000000000000000000000005741242380664D95A99279E65E5954FF535353FF616161FF5A5A5AFF575757FF505050FF50504FFF525252FE444444FE535353FA696969F9525252FF303030FE121212FE0000000000000000000000000000000000000000000000003F3F3F0479685C2C8675626A4E4E4EFF6A6A6AFF6E6E6EFF676767FF4B4B4BFF323232FE4B4B4BFE373737F2000000000000000000000000484848FA2C2C2CF00000000000000000000000000000000000000000000000000000000000000000000000000A0A0A5E222222D8414141FE5B5B5BFF4C4C4CAD313131584747474F000000000000000000000000000000000000000000000000FF"
$bData[1] &= "FFFC00FFFFFC00FF03FC00FC01FC00F8007C00F0003C00E0003C00E0001C00C0001C00C0000C00C0000400C0000400C0000400C0000000C0000000E0000000E0000000F0000000F8000000FC000000FF807000FFC3FC0000000000000000000000000000000000"
; String mit den Binärdaten von: internet-web-browser-3.ico
$bData[2] &= "0x0000010001001616000000000000100800001600000028000000160000002C00000001002000000000009007000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00535755074A4E4C1B0000000A000000150000001D0000002300000027000000290804022D0000002B000000290000002600000021000000160000000B00000004FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF004B4E4C247B7F7DF16E7070FA4B4F4D910000002F4A281161683918957B441EC7844920ED884E25FE844920EE7B441EC9673818984A281166000000340000002C000000230000001700000006FFFFFF00FFFFFF0000000008484B4A66A7A9A7F8F9F9F9FF676A68F9744320C18E562EF77A634FFD6C6459FFB68762FFB98964FFB68561FFAC7953FF9F6A43FC8C542CF878421DC41D0F064A00000033000000280000001C0000000D000000010000000E2D2F2E336D706EF9FEFEFEFFC2C2C0FF7C6350FD847764FF7C7F7CFF635F59FFA66838FFA46534FFA66838FFAA7042FFAF784DFFB88862FFA06B45FB854921F2552E14730000002F0000002200000016FFFFFF000000000C0000001859554FC4D4D4D3FFFAFBFAFF606663FF757C79FFF1F2F2FF635F57FFA46534FFA46534FFA46534FFA46534FFA46534FF738460FF908B68FFB3825DFF8C532BF75C32156700000021000000145357550A5054524E4F4D48656B503BF5747774FFFEFEFEFFD2D3D3FFF6F6F6FFF7F7F7FF656058FFA76938FFA76939FFA76939FFA76938FFA66737FF3CA48DFF2CAD9AFFA07B52FFB3835FFF874B22ED361D0C230000000B53575542535755FFA6A7A6FDBCBCBBFFC2C2C1FFF9F9F9FFFFFFFFFFEFEFEFFFF6F6F6FF61645DFFAB6F40FFAC7041FFAC7041FFAB6F40FF9B764AFF2BB3A0FF29B09DFF6D8764FFB6845DFFA36F4AF8864A20A5FFFFFF00FFFFFF005E584F94757673FFF6F6F6FFF9F9F9FFECECECFFEDEDEDFFE0E0E0FFF5F5F5FF636A65FFBC8B65FFB7825AFFB07649FFB07548FFA5794CFF2EB7A4FF2BB3A0FF31AB96FFA96D3EFFBD906EFF91562FF4874A2031FFFFFF00874A2067806855FB737572FFF6F7F7FFEBEBEBFFDFDFDFFFE7E7E7FFF4F4F4FF5E6B65FFB57C4FFFBC8861FFC39672FFB78054FF968962FF30BAA7FF2DB7A4FF32AE99FFA86F40FFB7855EFFA5724DF7874A206DFFFFFF00884B21A8B68969FF8A6D55FF727270FFF7F7F7FFF1F1F1FFECECECFFF4F4F4FF6E6A62FFBB865CFFBA8358FFA98C66FFBE9E7EFF79A182FF33BEABFF30BAA7FF2CB5A2FF6F8F6EFFB57F56FFB48664FF884B21AAFFFFFF00884B21E0C5A083FFB58057FF797B67FF6B716EFFF7F7F7FFF9F9F9FFF3F3F3FF73706AFFD4B296FFC2A98BFF45C3B0FF40C8B6FF5BCFBFFF35C1AEFF32BDAAFF2FB6A3FF45A58DFFB2794DFFC29A7CFF884B21E1FFFFFF00894D23FBB3AC93FF6EAF99FF6F9271FF917156FF6D6F6CFFF7F7F7FFF2F2F2FF746F68FFD7B59CFFBAC4AEFF5CD6C6FF3CCCB9FF5AD1C2FF3AC6B3FF34BFACFF51AB93FF45A991FF8D855FFFCBA689FF8A4E24FBFFFFFF00894B21DB89AA91FF8DA78CFFAE7C4FFFC29774FFA58F7DFF6B6D6AFFD9DAD9FF746C63FFCCA07CFFCDC1AAFF7BDFD2FF3FD0BDFF4ED0BFFF4ACBBAFF35C2AFFF62A88CFF37B19CFF719879FFBFA285FF894C21DDFFFFFF00884B21A1A69A7EFF4DBBABFF49A58CFFA2B49CFFD5B297FFA1836BFF565957FF756E64FFCB9A74FFDEBEA5FFB2D1BFFF4AD5C3FF48CEBCFF76C3AEFF64B196FF36BAA7FF34B39FFF35AD98FFBA9374FF884C21A4FFFFFF00874A2062AE8160F760BBAAFF2BB3A0FF56C5B5FFC1BCA3FFD1AA8AFFA58367FFA6886DFFD4AA88FFE1C3ACFFC4C9B3FF89BB9FFFB6AF8FFFA6AD8EFF73AD91FF36BBA8FF2EB7A4FF6BA990FFAE805FF6874A2068FFFFFF00874A2025935B34F6A7C2B1FF2BB3A0FF39BDABFF7ED4C7FFBBC3AEFFD5B79CFFDAB69AFFE2C4ACFFE4C7B0FFD0BB9EFF5ECEB8FF72D2C0FF45C9B5FF37C5B2FF33BEABFF2EB8A5FFADB29AFF915A34F5874A2029FFFFFF00FFFFFF00884B218FB18C6EF872BDAAFF41B39DFF79B9A2FF78D7CBFFC7C4AEFFE0C1AAFFE3C5AEFFE1BFA4FFCDAD8BFF9DB296FF81CDBAFF44C7B3FF37C4B1FF33BEABFF74B49EFFAE8160F7894C2291FFFFFF00FFFFFF00FFFFFF00874A20078A4C23DFCDB8A2FE79B69FFFA59672FF93A483FFD0A584FFB7B194FFC4A888FFD7AA86FFC3AB8AFFB8BAA1FF5AC6B1FF7EB296FF3DC1ACFF5DB7A0FFCAAA90FF894C22E2874A2008FFFFFF00FFFFFF00FFFFFF00FFFFFF00874A20328F572FF6CBB49EFEADC4B1FF8DA385FF939F7FFF7CA587FF40AF9AFF96BEA5FFBDB89DFFD1A37FFFAAA786FF6EB89FFFA8BDA7FFC3AC93FE8F562FF7874A2038FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00874A20308A4D22DDB28869F7A9C4B3FF9BBFABFF6CBDABFF4DBEAFFF4DCFBEFFA1B396FFD6AF90FFD9B79CFFDFC4B0FFB18565F78A4E24E1874A2035FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00874A2006894C228A925A33F6B08465F3BBA187FEC3B8A2FFC1C9B5FFD7BBA5FFC6A388FEB38768F4925A33F6894C2291874A2008FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00874A2020874A205A884C22928B4E24D0884D22F18B4E25D0894C2293874A205B874A2022FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FF"
$bData[2] &= "FFFF00E301FF00E0007F00E0003F00E0001F00E0000F008000070080000600C00006008000030080000200800002008000020080000200C0000600C0000700C0000700E0000F00F0001F00F8003F00FC007F00FF83FF00"
; String mit den Binärdaten von: zoom-3.ico
$bData[3] &= "0x0000010001001616000000000000100800001600000028000000160000002C000000010020000000000090070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004C4C4CF1727272FF858585FF656565FB0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000595959D9A0A0A0FFF2F2F2FF909090FF979797FF00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000606060D9A5A5A5FFFDFDFDFFECECECFFC7C7C7FF858585FF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000696969D9ABABABFFFAFAFAFFEDEDEDFFCCCCCCFFA2A2A2FF6D6D6DFA0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000757575D9AEAEAEFFFBFBFBFFECECECFFCCCCCCFFA5A5A5FF767676FA00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007F7F7FD9B4B4B4FFFAFAFAFFEDEDEDFFCDCDCDFFA9A9A9FF828282FA0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009B9B9BFFF4F4F4FFEEEEEEFFCDCDCDFFADADADFF8B8B8BFA0000000000000000000000000000000000000000000000005656563A595959F36E6E6EFF8C8C8CFF8C8C8CFF898989FF515151FD4A4A4AD98C8C8C7F7B7B7B92ADADADFFB6B6B6FFCCCCCCFFB0B0B0FF939393FA000000000000000000000000000000000000000000000000626262C7898989FFCDCDCDFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFFB7B7B7FF757575FF999999FFBFBFBFFFB7B7B7FFACACACFF9C9C9CFA000000000000000000000000000000000000000000000000686868C7A3A3A3FFE8E8E8FFF6F6F6FFF9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFECECECFF848484FF8C8C8CFF858585C7AEAEAE3C0000000000000000000000000000000000000000000000006C6C6C3A979797FFDEDEDEFFF0F0F0FFECECECFFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDEDEDFF757575FF7575756A000000000000000000000000000000000000000000000000000000007F7F7FF3C5C5C5FFE8E8E8FFE6E6E6FFE9E9E9FFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAEAEAEFF5656567F00000000000000000000000000000000000000000000000000000000A2A2A2FFD7D7D7FFE8E8E8FFDDDDDDFFEDEDEDFFF9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE7E7E7FF696969F300000000000000000000000000000000000000000000000000000000B5B5B5FFDDDDDDFFE4E4E4FFEEEEEEFFF5F5F5FFF5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7CFE00000000000000000000000000000000000000000000000000000000B7B7B7FFDBDBDBFFE6E6E6FFE7E7E7FFEBEBEBFFF2F2F2FFF7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF858585FE00000000000000000000000000000000000000000000000000000000BCBCBCFFD7D7D7FFE4E4E4FFF5F5F5FFFFFFFFFFFFFFFFFFFEFEFEFFF9F9F9FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF909090FE00000000000000000000000000000000000000000000000000000000BFBFBFFFCECECEFFE0E0E0FFF5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFEEEEEEFFFFFFFFFFFAFAFAFFFFFFFFFFFFFFFFFFFFFFFFFFECECECFF939393F300000000000000000000000000000000000000000000000000000000C3C3C3F8C9C9C9FFDADADAFFEDEDEDFFFDFDFDFFFFFFFFFFFFFFFFFFEBEBEBFFFEFEFEFFF0F0F0FFF4F4F4FFF6F6F6FFFAFAFAFFC8C8C8FF9A9A9A9000000000000000000000000000000000000000000000000000000000BABABA6AD0D0D0FFCBCBCBFFDFDFDFFFEEEEEEFFF6F6F6FFFAFAFAFFF5F5F5FFE9E9E9FFE4E4E4FFEDEDEDFFF5F5F5FFE2E2E2FFB1B1B1FE000000000000000000000000000000000000000000000000000000000000000000000000C8C8C8D9D0D0D0FFCBCBCBFFDBDBDBFFE3E3E3FFE7E7E7FFE7E7E7FFE2E2E2FFE9E9E9FFECECECFFE0E0E0FFC7C7C7FFA8A8A85400000000000000000000000000000000000000000000000000000000000000000000000000000000D1D1D1D9D6D6D6FFC5C5C5FFD0D0D0FFDBDBDBFFDEDEDEFFDEDEDEFFDADADAFFD4D4D4FFC9C9C9FFBABABA90000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000D2D2D26ADDDDDDFADEDEDEFFD7D7D7FFD1D1D1FFD9D9D9FFD5D5D5FFCCCCCCE60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FF"
$bData[3] &= "FFC100FFFF8300FFFF0300FFFE0300FFFC0700FFF80F00FFF81F00F0103F00C0007F008001FF008003FE000003FE000001FC000001FC000001FC000001FC000001FC000001FC008003FC008007FE00C007FE00F01FFF00"
; String mit den Binärdaten von: list.ico
$bData[4] &= "0x0000010001001616000000000000100800001600000028000000160000002C00000001002000000000009007000000000000000000000000000000000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0090827180827264D0817061CD817061CD806F61CD806F60CD806E60CD806E5FCD7F6D5ECD7F6C5DCD7E6C5DCD7E6C5DCD806E5ECD827060CB7E6C5DCD7E6C5DCD7E6C5DCD81705FCC857062CB837062CD837162D19283747C94806DFDF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FFF3E6D9FF978370FD978473FFF6E6D7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E6D9FFA58F7BFF978374FFF8E9D9FFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFF3E6D9FFA4907CFF978473FFF8E8D8FFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFF3E6D9FFA48F7BFF978372FFF8E7D7FFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFF3E6D9FFA38E7BFF988472FFEDDCCBFFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFF3E6D9FFA38E7AFF988472FFF7E5D4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E6D9FFA58D79FF988371FFF7E4D3FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3E6D9FFA38D78FF988370FFF6E3D2FFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFF3E6D9FF9A8674FF988270FFEEDBC9FFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFF3E6D9FF9A8673FF978270FFEDDAC8FFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF00F2FFFF5DAFFBFFFFFFFFFFF3E5D8FF9A8573FF97826FFFF6E1CEFFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFFFFFFFFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFF5DAFFBFFFFFFFFFFF9EADDFF9A8572FF97816EFFF5E0CDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E9DCFF9A8471FF97816EFFF5DFCCFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8DBFF998471FF97816DFFF4DCCBFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF0D9CAFFF2DACAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DBCAFFF4DCCBFF998470FF96806EFFAC9B91FFAD9B91FFAC9A91FFAD9A91FFAD9B91FFAD9B91FFAD9B91FFAD9B91FFAD9B91FFAD9B91FFAD9B91FFAD9B91FFAD9B91FFAD9C91FFAD9C91FFAD9C91FFAD9C91FFAD9C91FFAD9C91FFAC9B91FF9A8572FF947F6DFFE8DED9FFE2D7D2FFE0D5CDFFDDD1C9FFDCD0C6FFDACCC3FFD8C9C0FFD7C5BCFFD4C2B9FFD2C1B6FFD2C2B6FFD4C2B9FFD5C6BDFFD8C8BEFFDACBC2FFDCCEC5FFE2D7D0FFE4DAD5FFE4DAD5FFE7E0DBFF998472FF948377E4E8DED9FFE2D7D2FFE0D5CDFFDDD1C9FFDCD0C6FFDACCC3FFD8C9C0FFD7C5BCFFD4C2B9FFD2C1B6FFD2C2B6FFD4C2B9FFD5C6BDFFD5C6BDFFE5DAD5FFE8E0D9FFECE4E0FFE9E1DDFFF1EDE9FFEAE5E1FF94857AE0A99B8CA3918071E78E7C6CE18C7A6AE18A7868E1897665E1887464E1867161E1867160E1846F5DE1826E5CE1826E5CE1846F5DE184705FE1867161E1867362E1877564E18D7B6BE18F7D6EE18E7C6DE1918070E7AC9E909BFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FF"
$bData[4] &= "FFFF000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFFFC00"
; String mit den Binärdaten von: preferences-system-2.ico
$bData[5] &= "0x0000010001001616000000000000100800001600000028000000160000002C000000010020000000000090070000000000000000000000000000000000000000000000000000A0623231874A20FF874A20FF874A20FF8D572C1D00000005000000040000000400000004000000050000000500000006000000060000000700000006000000060000000400000002000000010000000000000000A0623231874A20FFA1856CFFA1856CFF957B63FF874A20FF7C4C273F613C1E2A00000012000000120000001300000014000000140000001300000014000000120000000F0000000B00000006000000030000000200000000874A20FFA1856CFFD2B89DFFE2D1C0FFBEA691FF89715BFF874A20FF462B163A00000026000000260000002800000028000000260000002700000027000000240000001D000000120000000A000000060000000300000000874A20FFDBC6B0FFF6F2EDFF958A81FFD2B89DFFAE9075FF89715BFF874A20FF4128143F0000002B0000002D0000002E00000030000000320000003146464657919191FF7F7F7FFF7D7D7DC9787878500000000300000000874A20FFBEA691FFF7F4F0FFB6A597FF8F7660FFD2B89DFFAE9075FF89715BFF874A20FF55341B3052321A320000001D0000001F3A3A3A365252524A7F7F7FFFFEFEFEFFF2F3F3FFF0F0F0FF7F7F7FFF0000000200000000A4653430874A20FFC8B4A1FFF6F3EEFFA99381FF8F7660FFD2B89DFFAE9075FF89715BFF874A20FF714624240000000B0000000C6767673B7F7F7FFFFEFEFEFFE1E3E4FF5E5F5FFFFEFEFEFF7F7F7FFF000000000000000000000000A4653419874A20FFC3AD99FFF0E7DFFFA99381FF846D58FFD1B79CFFAC8E73FF856E58FF84481EFF6868681C797979327F7F7FFFFEFEFEFFE7E9EBFFE7E9EBFFFEFEFEFF868686FF7F7F7F3000000000000000000000000000000000A4653419874A20FFB69C84FFEDE2D7FFA4978CFF917860FFC5AC93FF826B56FF77411BFF7F7F7F307F7F7FFFFEFEFEFFE7E9EBFFE7E9EBFFFEFEFEFF7F7F7FFF7F7F7F30000000000000000000000000000000000000000000000000A4653419874A20FFAE9075FFE6DBCFFFAEA195FFAA9682FF6D5A48FF5F3315FF7F7F7FFFFEFEFEFFE7E9EBFFE7E9EBFFFEFEFEFF7F7F7FFF7F7F7F300000000000000000000000000000000000000000000000000000000000000000A4653419874A20FFA78B70FFB5A28FFF887867FF522D13FF7F7F7FFFFEFEFEFFE7E9EBFFE7E9EBFFFEFEFEFF7F7F7FFF7F7F7F3000000000000000000000000000000000000000000000000000000000000000000000000000000000A465341981461EFF733F1AFF5C3214FF7F7F7FFFFEFEFEFFE7E9EBFFE7E9EBFFFEFEFEFF7F7F7FFF7F7F7F19000000030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007F7F7F307F7F7FFFFEFEFEFFE7E9EBFFE7E9EBFFFEFEFEFF7F7F7FFF7F7F7F300000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000007F7F7F197F7F7F567F7F7FFFF8F9F9FFE7E9EBFFE7E9EBFFFEFEFEFF7F7F7FFF663E1FFF2A190D3000000000000000000000000000000000000000010000000000000000000000007F7F7F309E9E9ECC7F7F7FFF7F7F7FFF7F7F7FFFB5B5B5FAF8F9F9FFE8EAECFFE7E9EBFFF5F6F6FF7F7F7FFF6D4222FFB4B4B4FF814F28FF4F3019300000000000000000000000000000000000000001000000007F7F7F19878787EFCACDCFFFF7F8F8FFF8F9F9FFF7F9F9FFF8F9F9FFE7E9EBFFE7E9EBFFF7F8F9FF7F7F7FFF7F7F7F19462A15308A552BFFE4E4E4FF9B5F30FF8D572C440000000000000000000000000000000000000000999999D3E6E7E8FFEFF1F2FFE9EBEDFFE8EAECFFE7E9EBFFE7E9EBFFE7E9EBFFF8F9F9FF7F7F7FFF7F7F7F190000000000000000835029309F6231FFF8F8F8FFA26332FFA36433FF9C6030300000000000000000000000067F7F7FFFE4E7E8FFEAEAEAF87F7F7FFFADADADFFE2E3E3FFE8EAECFFF9FAFAFF747879C87F7F7F3000000000000000000000000000000000A0623230A46534FFE3E3E3FFCBCBCBFFA46534FFA465341900000000000000017C7C7C827F7F7FFF7F7F7F830000000000000000BBBBBBFFEAEBEDFFF8F9F9FF7F7F7FFF000000000000000000000000000000000000000000000000A46534FFFFFFFFFFDEDEDEFFD5D5D5FFA86F44FF0000000000000000000000017F7F7F3000000000000000007F7F7F197F7F7FFFE8EAECFFF8F9F9FF7F7F7FFF000000000000000200000000000000000000000000000000A4653430A46534FFFFFFFFFFCCB19BBCA46534BC00000000000000000000000000000000000000007F7F7F197F7F7FFFF6F7F8FFF1F2F3FFD7D8D8FF7F7F7FFF00000000000000010000000000000000000000000000000000000000A4653419A87953FFA46534A40000000000000000000000000000000000000000000000007F7F7FFFE8E9EAFFF8F9F9FFD7D8D8FF7F7F7FFF7373734B000000010000000000000000000000000000000000000000000000000000000000000001000000020000000000000000000000000000000000000000000000007F7F7F7F7F7F7FFF7F7F7FFF7F7F7F767F7F7F4400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E3"
$bData[5] &= "FFFF00C1FFFF0080FFFF00807F8E00803F0600C01E0600E00C0F00F0081F00F8003F00FC007F00FE00FF00FF81FF00FF01FF00E000FF00C00C7F00801E1F00803F0E008C3F0600FC3F8600F83FCF00F07FFF00F9FFFF00"
; erstellt im TEMPDIR die Datei/-en aus allen vorhandenen $bData Variablen
Global $bDatanames[5] = ["web_search_22x22.ico","internet-web-browser-3.ico","zoom-3.ico","list.ico","preferences-system-2.ico"]
For $i = 1 To $bData[0]
Local $sFile = @TempDir & '\' & $bDatanames[$i - 1]
Local $hFileOut = FileOpen($sFile, 2+8+16)
FileWrite($hFileOut, Binary($bData[$i]))
FileClose($hFileOut)
Next
; registriert die Funktion "_DelBinaryTempFiles()", damit die temporär erstellten Dateien bei Beendigung wieder gelöscht werden
OnAutoItExitRegister("_DelBinaryTempFiles")
Func _DelBinaryTempFiles()
For $i = 1 To $bData[0] - 1
FileDelete(@TempDir & '\' & $bDatanames[$i - 1])
Next
EndFunc
Global $sBrowser = _GetDefaultBrowser()
Global $sPathINI = @UserProfileDir & '\MyWebApp.ini', $aSection
If Not FileExists($sPathINI) Then
IniWrite($sPathINI, 'search_site', 'AutoIt-DE', 'autoit.de')
IniWrite($sPathINI, 'search_site', 'AutoIt-EN', 'autoitscript.com')
IniWrite($sPathINI, 'search_site', 'MSDN', 'msdn.microsoft.com')
IniWrite($sPathINI, 'search_str', 'Google', 'http://www.google.de/search?q=')
IniWrite($sPathINI, 'search_str', 'Google-On-Site', 'http://www.google.de/search?num=100&hl=de&newwindow=1&safe=off&q=site%3A')
EndIf
Global $sGoogleSearch = IniRead($sPathINI, 'search_str', 'Google', 'http://www.google.de/search?q=')
Global $sGoogleS_OnSite = IniRead($sPathINI, 'search_str', 'Google-On-Site', 'http://www.google.de/search?num=100&hl=de&newwindow=1&safe=off&q=site%3A')
Global $oSearchSite = ObjCreate("Scripting.Dictionary")
$aSection = IniReadSection($sPathINI, 'search_site')
For $i = 1 To $aSection[0][0]
$oSearchSite.Add($aSection[$i][0], $aSection[$i][1])
Next
Global $fSwitch1 = 0, $fSwitch2 = 0
Global $icoSiteSearch = @TempDir & '\' & $bDatanames[0]
Global $icoBrowse = @TempDir & '\' & $bDatanames[1]
Global $icoSearch = @TempDir & '\' & $bDatanames[2]
Global $icoList = @TempDir & '\' & $bDatanames[3]
Global $icoConfig = @TempDir & '\' & $bDatanames[4]
Global $oList = _ObjAListCreate()
Global $iCountLinks = 0, $aSection
_oLinkListLoad()
Global $hGuiCfg, $cLVCfg, $hListView, $currentItem[2], $currentOpt[2] = ["none"], $EditBox, $hEdit ; == für Konfig-Wnd
Global $inBrowserPath, $btSelBrowser, $rLink, $rSite, $mnuLV, $delLV, $iIndex
$hGuiCfg = GUICreate("Konfiguration Web-App", 400, 360)
GUICtrlCreateGroup(" Editieren mit Doppelklick - Übernahme ENTER ", 10, 10, 380, 340)
$rLink = GUICtrlCreateRadio("Gespeicherte Links", 50, 30, 121, 21)
$rSite = GUICtrlCreateRadio("Suche auf Seite", 243, 30, 97, 21)
GUICtrlSetState(-1, $GUI_CHECKED)
$cLVCfg = GUICtrlCreateListView("Key|Value", 20, 65, 360, 275, BitOR($GUI_SS_DEFAULT_LISTVIEW,$WS_HSCROLL,$WS_VSCROLL), BitOR($WS_EX_CLIENTEDGE,$LVS_EX_GRIDLINES,$LVS_EX_FULLROWSELECT))
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 80)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, $LVSCW_AUTOSIZE_USEHEADER)
$mnuLV = GUICtrlCreateContextMenu($cLVCfg)
$delLV = GUICtrlCreateMenuItem("Lösche Eintrag", $mnuLV)
$hListView = GUICtrlGetHandle($cLVCfg)
GUICtrlCreateGroup("", -99, -99, 1, 1)
_setConfgLV('search_site')
$EditBox = GUICreate('', 200, 30, -1, -1, BitOR($WS_POPUP,$WS_BORDER), $WS_EX_TOPMOST)
$hEdit = GUICtrlCreateInput('', 5, 5, 190, 20, $SS_CENTER)
$hGui = GUICreate('Web-App', 378, 30, @DesktopWidth-389, @DesktopHeight-65, Default, BitOR($WS_EX_TOOLWINDOW,$GUI_WS_EX_PARENTDRAG))
$cDummy = GUICtrlCreateInput('', 8, 6, 1 , 20)
$cIn = GUICtrlCreateInput('', 5, 5, 248, 20)
GUICtrlSendMsg($cIn, 0x1501, 0, "Bitte Web-Adresse oder Suchtext eingeben")
$btLink = GUICtrlCreateButton('>', 255, 4, 22, 22, $BS_ICON)
GUICtrlSetTip(-1, 'Link aufrufen', '', 1, 3)
GUICtrlSetImage(-1, $icoBrowse)
$btList = GUICtrlCreateButton('..', 279, 4, 22, 22, $BS_ICON)
GUICtrlSetTip(-1, 'Link Liste', '', 1, 3)
GUICtrlSetImage(-1, $icoList)
$btSearch = GUICtrlCreateButton('?', 303, 4, 22, 22, $BS_ICON)
GUICtrlSetTip(-1, 'Google Suche', '', 1, 3)
GUICtrlSetImage(-1, $icoSearch)
$btSiteSearch = GUICtrlCreateButton('', 327, 4, 22, 22, $BS_ICON)
GUICtrlSetTip(-1, 'Seiten Suche', '', 1, 3)
GUICtrlSetImage(-1, $icoSiteSearch)
$btConfig = GUICtrlCreateButton('', 351, 4, 22, 22, $BS_ICON)
GUICtrlSetTip(-1, 'Konfiguration', '', 1, 3)
GUICtrlSetImage(-1, $icoConfig)
$DummyEnd = GUICtrlCreateDummy()
$hLinkChild = GUICreate('', 230, 105, 0, -150, BitOR($WS_POPUP,$WS_THICKFRAME), BitOR($WS_EX_TOOLWINDOW,$WS_EX_MDICHILD), $hGui)
$cLV = GuiCtrlCreateListView('Link', 0, 0, 230, 105, BitOR($LVS_SINGLESEL,$LVS_NOSORTHEADER,$LVS_REPORT), BitOR($LVS_EX_FULLROWSELECT,$LVS_EX_GRIDLINES))
GUICtrlSendMsg($cLV, $LVM_SETCOLUMNWIDTH, 0, $LVSCW_AUTOSIZE_USEHEADER)
$itmTrayShow = TrayCreateItem('Anzeigen', -1, -1, 1)
$itmTrayHide = TrayCreateItem('Verstecken', -1, -1, 1)
TrayCreateItem("")
$itmTrayCfg = TrayCreateItem('Konfiguration', -1, -1, 1)
TrayCreateItem("")
$itmTrayEnd = TrayCreateItem('Beenden', -1, -1, 1)
TraySetState()
TraySetIcon($icoSiteSearch)
GUISetState(@SW_SHOW, $hGui)
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")
While 1
Switch GUIGetMsg()
Case -3
_close()
Case $btSiteSearch
$fSwitch1 = BitXOR($fSwitch1, 1)
If $fSwitch1 Then
$fSwitch2 = 0
_GUICtrlListView_SetColumn(GUICtrlGetHandle($cLV), 0, 'Suche auf Seite')
_ListViewSet()
GUISetState(@SW_SHOW, $hLinkChild)
Else
GUISetState(@SW_HIDE, $hLinkChild)
EndIf
Case $btSearch
$s2Search = GUICtrlRead($cIn)
If $s2Search <> '' Then
GUICtrlSetData($cIn, '')
WinSetOnTop($hGui, '', 0)
ShellExecute($sGoogleSearch & $s2Search)
EndIf
Case $btLink
$sLink = GUICtrlRead($cIn)
If $sLink <> '' Then
If Not _ObjAListSearch($oList, $sLink) Then _ItemAdd($sLink)
GUICtrlSetData($cIn, '')
WinSetOnTop($hGui, '', 0)
ShellExecute($sBrowser, '"' & $sLink & '"')
EndIf
Case $btList
$fSwitch2 = BitXOR($fSwitch2, 1)
If $fSwitch2 Then
$fSwitch1 = 0
_GUICtrlListView_SetColumn(GUICtrlGetHandle($cLV), 0, 'Link')
If $oList.Count > 0 Then
_ListViewSet('Link')
Else
_ListViewSet('Delete')
EndIf
GUISetState(@SW_SHOW, $hLinkChild)
Else
GUISetState(@SW_HIDE, $hLinkChild)
EndIf
Case $btConfig
_Config()
Case $rLink, $rSite
If BitAND(GUICtrlRead($rLink), $GUI_CHECKED) Then
GUICtrlSendMsg($cLVCfg, $LVM_SETCOLUMNWIDTH, 0, 40)
GUICtrlSendMsg($cLVCfg, $LVM_SETCOLUMNWIDTH, 1, $LVSCW_AUTOSIZE_USEHEADER)
_setConfgLV('links')
Else
GUICtrlSendMsg($cLVCfg, $LVM_SETCOLUMNWIDTH, 0, 80)
_setConfgLV('search_site')
EndIf
Case $delLV
$iIndex = _GUICtrlListView_GetSelectedIndices($hListView)
If $iIndex > -1 Then
_DelLVItem($iIndex)
EndIf
EndSwitch
Switch TrayGetMsg()
Case 0
ContinueLoop
Case $itmTrayShow
GUISetState(@SW_SHOW, $hGui)
WinSetOnTop($hGui, '', 1)
Case $itmTrayHide
WinSetOnTop($hGui, '', 0)
GUISetState(@SW_HIDE, $hGui)
Case $itmTrayEnd
Exit
Case $itmTrayCfg
_Config()
EndSwitch
WEnd
Func _close()
If BitAND(WinGetState($hGui), Then
Exit
ElseIf BitAND(WinGetState($hLinkChild), Then
GUISetState(@SW_HIDE, $hLinkChild)
ElseIf BitAND(WinGetState($EditBox), Then
_EscEdit()
ElseIf BitAND(WinGetState($hGuiCfg), Then
GUISetState(@SW_HIDE, $hGuiCfg)
GUISetState(@SW_SHOW, $hGui)
EndIf
EndFunc
Func _oLinkListLoad()
$aSection = IniReadSection($sPathINI, 'links')
If @error Then Return
$iCountLinks = $aSection[0][0]
For $i = 1 To $aSection[0][0]
_ObjAListAdd($oList, $aSection[$i][1])
Next
_ObjAListSort($oList)
EndFunc
Func _Config()
GUISetState(@SW_SHOW, $hGuiCfg)
EndFunc
Func _setConfgLV($sData)
_GUICtrlListView_DeleteAllItems($hListView)
$aSection = IniReadSection($sPathINI, $sData)
If @error Then Return
For $i = 1 To $aSection[0][0]
GUICtrlCreateListViewItem($aSection[$i][0] & '|' & $aSection[$i][1], $cLVCfg)
Next
EndFunc
Func _EscEdit()
Opt('GUICoordMode', $currentOpt[0])
Opt("GUIOnEventMode", $currentOpt[1])
$currentOpt[0] = "none"
GUISetState(@SW_HIDE, $EditBox)
EndFunc
Func _EditEnter()
_GUICtrlListView_SetItemText($hListView, $currentItem[0], GUICtrlRead($hEdit), $currentItem[1])
If BitAND(GUICtrlRead($rLink), $GUI_CHECKED) Then
IniWrite($sPathINI, 'links', _GUICtrlListView_GetItemText($hListView, $currentItem[0]), GUICtrlRead($hEdit))
_ListViewSet('links')
_oLinkListLoad()
Else
IniWrite($sPathINI, 'search_site', _GUICtrlListView_GetItemText($hListView, $currentItem[0]), GUICtrlRead($hEdit))
_ListViewSet('search_site')
EndIf
_EscEdit()
EndFunc
Func _ItemAdd($sLink)
_ObjAListAdd($oList, $sLink)
_ObjAListSort($oList)
$iCountLinks += 1
IniWrite($sPathINI, 'links', $iCountLinks, $sLink)
_ListViewSet('Link')
EndFunc
Func _ListViewSet($sSource='')
GUISetState(@SW_LOCK, $hLinkChild)
_GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($cLV))
Switch $sSource
Case 'Link'
For $element In $oList
GUICtrlCreateListViewItem($element, $cLV)
Next
Case 'Delete'
; == nothing, always deleted
Case Else
Local $strKey, $colKeys = $oSearchSite.Keys
For $strKey In $colKeys
GUICtrlCreateListViewItem($strKey, $cLV)
Next
EndSwitch
GUISetState(@SW_UNLOCK, $hLinkChild)
EndFunc
Func _ListViewClick($index)
If $index = -1 Then Return
If $fSwitch1 Then
Local $sRead = GUICtrlRead($cIn)
If $sRead = '' Then Return GUICtrlSetData($cIn, 'Suchtext eingeben!')
WinSetOnTop($hGui, '', 0)
ShellExecute($sGoogleS_OnSite & $oSearchSite.Item(_GUICtrlListView_GetItemText(GUICtrlGetHandle($cLV), _
_GUICtrlListView_GetSelectedIndices(GUICtrlGetHandle($cLV)))) & ' ' & $sRead)
Else
GUICtrlSetData($cIn, _GUICtrlListView_GetItemText(GUICtrlGetHandle($cLV), _
_GUICtrlListView_GetSelectedIndices(GUICtrlGetHandle($cLV))))
EndIf
GUISetState(@SW_HIDE, $hLinkChild)
EndFunc
Func _LeftDblClick($Info)
If $Info[3] = -1 Then Return _NewEntry()
If $currentOpt[0] = "none" Then
$currentOpt[0] = Opt('GUICoordMode', 1)
$currentOpt[1] = Opt("GUIOnEventMode", 1)
EndIf
GUICtrlSetOnEvent($hEdit, '_EditEnter')
_GUICtrlListView_SetSelectedColumn($Info[1], $Info[4])
Local $mouse = MouseGetPos(), $posEdit = WinGetPos($EditBox)
Local $posGUI = WinGetPos($hGuiCfg), $posLV = ControlGetPos($hGuiCfg, '', $cLVCfg)
Local $colInfo = _GUICtrlListView_GetColumn($Info[1], $Info[4]), $sumWidth = 0, $tmp
For $i = 0 To $Info[4]
$tmp = _GUICtrlListView_GetColumn($Info[1], $i)
$sumWidth += $tmp[4]
Next
$sumWidth -= $colInfo[4]
Local $xPos = $posGUI[0]+$posLV[0]+$sumWidth
If $xPos+$colInfo[4]+10 > @DesktopWidth Then $xPos = @DesktopWidth - ($colInfo[4] + 10)
If $xPos < 0 Then $xPos = 0
WinMove($EditBox, '', $xPos, $mouse[1]-$posEdit[3], $colInfo[4]+10)
GUICtrlSetData($hEdit, _GUICtrlListView_GetItemText($Info[1], $Info[3], $Info[4]))
$currentItem[0] = $Info[3]
$currentItem[1] = $Info[4]
GUISetState(@SW_SHOW, $EditBox)
EndFunc
Func _NewEntry()
Local $inBox
If BitAND(GUICtrlRead($rLink), $GUI_CHECKED) Then
If MsgBox(36,"Link","Neuen Eintrag für 'Links' anlegen?") = 7 Then Return
$inBox = InputBox('Neuer Link', 'Bitte nur die Linkadresse (ohne Key) eingeben:', '')
If $inBox = '' Then Return
If _ObjAListSearch($oList, $inBox) Then Return MsgBox(0, 'Fehler', 'Link bereits gespeichert')
_ItemAdd($inBox)
_oLinkListLoad()
_setConfgLV('links')
Else
If MsgBox(36,"Suche auf Seite","Neuen Eintrag für 'Seiten-Suche' anlegen?") = 7 Then Return
$inBox = InputBox('Suche auf Seite', 'Bitte erst Kürzel dann Seitenadresse kommagetrennt eingeben:', '')
If $inBox = '' Then Return
Local $aSplit = StringSplit($inBox, ',')
If UBound($aSplit) = 1 Then Return MsgBox(0, 'Fehler', 'Kein Trennzeichen enthalten!')
If $oSearchSite.Exists($aSplit[1]) Then Return MsgBox(0, 'Fehler', 'Kurzname bereits angelegt')
IniWrite($sPathINI, 'search_site', $aSplit[1], $aSplit[2])
$oSearchSite.Add($aSplit[1], $aSplit[2])
_setConfgLV('search_site')
EndIf
EndFunc
Func _DelLVItem($iIndex)
Local $key = _GUICtrlListView_GetItemText($hListView, $iIndex)
_GUICtrlListView_DeleteItem($hListView, $iIndex)
If BitAND(GUICtrlRead($rLink), $GUI_CHECKED) Then
IniDelete($sPathINI, 'links', $key)
_ListViewSet('links')
_oLinkListLoad()
Else
IniDelete($sPathINI, 'search_site', $key)
_ListViewSet('search_site')
$oSearchSite.Remove($key)
EndIf
EndFunc
Func WM_COMMAND($hWnd, $iMsg, $iwParam)
If BitShift($iwParam, 16) = 0x300 Then
If BitAND($iwParam, 0xFFFF) = $cDummy Then
GUICtrlSetData($cIn, GUICtrlRead($cDummy))
GUICtrlSetData($cDummy, '')
ControlFocus($hWnd, '', $cIn)
ElseIf GUICtrlRead($cIn) = '' Then
ControlFocus($hWnd, '', $cDummy)
EndIf
EndIf
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_COMMAND
Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
Local $hWndFrom, $iCode, $tNMHDR, $hWndListView
$hWndListView = GUICtrlGetHandle($cLV)
$tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
$hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
$iCode = DllStructGetData($tNMHDR, "Code")
Switch $hWndFrom
Case $hWndListView
If $iCode = $NM_CLICK Then
Local $tInfo = DllStructCreate($tagNMITEMACTIVATE, $ilParam)
_ListViewClick(DllStructGetData($tInfo, "Index"))
EndIf
Case $hListView
If $iCode = $NM_DBLCLK Then
Local $tInfo = DllStructCreate($tagNMITEMACTIVATE, $ilParam)
Local $aInfo[5] = [$hWndFrom, DllStructGetData($tNMHDR, "IDFrom"), $iCode, DllStructGetData($tInfo, "Index"), _
DllStructGetData($tInfo, "SubItem")]
_LeftDblClick($aInfo)
EndIf
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_NOTIFY
;===============================================================================
; Function Name....: _GetDefaultBrowser
; Description......: Ermittelt den Programmpfad des Default-Browsers
; Es wird der vom User festgelegte Default-Browser abgefragt, ersatzweise der allgemeingültige
; Parameter(s).....: keine
; Requirement(s)...: keine
; Return Value(s)..: Kompletter Programmpfad des Default-Browsers
; Author(s)........: BugFix ( [email='bugfix@autoit.de'][/email] )
;===============================================================================
Func _GetDefaultBrowser()
Local $sPath = RegRead("HKEY_CLASSES_ROOT\http\shell\open\command", '')
Local $progID = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice", "Progid")
If $progID <> '' Then ; == User-Default-Browser gesetzt
$sPath = RegRead("HKEY_CLASSES_ROOT\" & $progID & "\shell\open\command", "")
EndIf
$sPath = StringTrimLeft($sPath, 1)
Local $Pos = StringInStr($sPath, '"')
Return StringLeft($sPath, $Pos-1)
EndFunc ; ==>_GetDefaultBrowser
;==================================================================================================
; Name: _ObjAListCreate()
; Return: Erfolg: Handle des Arraylist-Objektes
; Fehler: -1
; Fehlerwert: 1 Objekt konnte nicht erzeugt werden
;==================================================================================================
Func _ObjAListCreate()
Local $obj = ObjCreate("System.Collections.ArrayList")
If (Not IsObj($obj)) Then
Return SetError(1, 0, -1)
Else
Return $obj
EndIf
EndFunc ;==>_ObjAListCreate
;==================================================================================================
; Name: _ObjAListAdd($ObjList, $Value)
; Parameter: $ObjList - Handle des Arraylist-Objektes
; $Value - Wert
; Return: Erfolg: 0
; Fehler: -1
; Fehlerwert: 1 Objekt existiert nicht
; 2 Wert ohne Inhalt übergeben
; 3 Aktion fehlgeschlagen
;==================================================================================================
Func _ObjAListAdd(ByRef $ObjList, $VALUE = '')
If (Not IsObj($ObjList)) Then Return SetError(1, 0, -1)
If $VALUE = '' Then Return SetError(2, 0, -1)
$ObjList.Add($VALUE)
If @error Then Return SetError(3, 0, -1)
Return 0
EndFunc ;==>_ObjAListAdd
;==================================================================================================
; Name: _ObjAListSort($ObjList, $Direction)
; Parameter: $ObjList - Handle des Arraylist-Objektes
; $Direction - Sortierrichtung; 0=steigend (Standard), 1=fallend
; Return: Erfolg: 0
; Fehler: -1
; Fehlerwert: 1 Objekt existiert nicht
; 3 Aktion fehlgeschlagen
;==================================================================================================
Func _ObjAListSort(ByRef $ObjList, $Direction = 0)
If (Not IsObj($ObjList)) Then Return SetError(1, 0, -1)
$ObjList.Sort
If @error Then Return SetError(3, 0, -1)
If $Direction = 1 Then $ObjList.Reverse
If @error Then Return SetError(3, 0, -1)
Return 0
EndFunc ;==>_ObjAListSort
;==================================================================================================
; Name: _ObjAListSearch($ObjList, $Value)
; Parameter: $ObjList - Handle des Arraylist-Objektes
; $Value - Wert auf dessen Existenz geprüft wird
; Return: Erfolg: True (gefunden)/ False (ni. gefunden)
; Fehler: -1
; Fehlerwert: 1 Objekt existiert nicht
; 2 Wert ohne Inhalt übergeben
; 3 Aktion fehlgeschlagen
;==================================================================================================
Func _ObjAListSearch(ByRef $ObjList, $VALUE = '')
If (Not IsObj($ObjList)) Then Return SetError(1, 0, -1)
If $VALUE = '' Then Return SetError(2, 0, -1)
If $ObjList.Contains($VALUE) Then
Return True
Else
Return False
EndIf
If @error Then Return SetError(3, 0, -1)
EndFunc ;==>_ObjAListSearch
Das Tool platziert sich am unteren rechten Bildschirmrand.
autoit.de/wcf/attachment/14380/
Konfig-Fenster:
autoit.de/wcf/attachment/14381/