Hallo,
ich habe mich mal die letzten Tage hingesetzt um was (für meine Bedürfnisse) sehr hilfreiches zu schreiben.
Und zwar hab ich das Teil String Starter getauft, es legt sich oben wie eine Taskleiste am Desktop ab, zwar sind es keine Strings in diesemfalle, aber man kann ein programm mit seiner persönlichen Zeichenkette starten.
z.B. ich habe in einer Datei den Pfad zum Firefox angegeben.
also FF=Firefox (ff funzt nicht, der beachtet Groß und Kleinschreibung ^^)
Man kann 999.999 Programme einfügen (was die wenigsten haben werden, aber lieber zuviel als zuwenig xD )
Also immoment kann das Programm:
- Programme starten und neue Einfügen
- Transparents (per Regler einstellbar)
- Groß und Kleinschreibung wird beachtet
- Sprachen kann man einbinden
was noch fehlt:
- Fehlermeldung wenn "String" nicht vorhanden ist
- Update Funktion
- "Strings" aus der Datei löschen ohne das andere beschädigt werden
Code:
Spoiler anzeigen
;~ GUI und Windows Daten
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <EditConstants.au3>
#include <GuiListView.au3>
#Include <Array.au3>
#Include <File.au3>
;~ Internet
#include <INet.au3>
#include <IE.au3>
;~ Modern Menü
#include <ModernMenu.au3>
;~ Tab Items
#include <StaticConstants.au3>
#include <TabConstants.au3>
;~ $_MD5Opcode wird für die Funktion _MD5() benötigt
Global $_MD5Opcode = "0xC85800005356576A006A006A008D45A850E8280000006A00FF750CFF75088D45A850E8440000006A006A008D45A850FF7510E8710700005F5E5BC9C210005589E58B4D0831C0894114894110C70101234567C7410489ABCDEFC74108FEDCBA98C7410C765432105DC21000C80C0000538B5D088B4310C1E80383E03F8945F88B4510C1E0030143103943107303FF43148B4510C1E81D0143146A40582B45F88945F4394510724550FF750C8B45F88D44031850E8A00700008D43185053E84E0000008B45F48945FC8B45FC83C03F39451076138B450C0345FC5053E8300000008345FC40EBE28365F800EB048365FC008B45102B45FC508B450C0345FC508B45F88D44031850E84D0700005BC9C21000C84000005356576A40FF750C8D45C050E8330700008B45088B088B50048B70088B780C89D021F089D3F7D321FB09D801C1034DC081C178A46AD7C1C10701D189C821D089CBF7D321F309D801C7037DC481C756B7C7E8C1C70C01CF89F821C889FBF7D321D309D801C60375C881C6DB702024C1C61101FE89F021F889F3F7D321CB09D801C20355CC81C2EECEBDC1C1C21601F289D021F089D3F7D321FB09D801C1034DD081C1AF0F7CF5C1C10701D189C821D089CBF7D321F309D801C7037DD481C72AC68747C1C70C01CF89F821C889FBF7D321D309D801C60375D881C6134630A8C1C61101FE89F021F889F3F7D321CB09D801C20355DC81C2019546FDC1C21601F289D021F089D3F7D321FB09D801C1034DE081C1D8988069C1C10701D189C821D089CBF7D321F309D801C7037DE481C7AFF7448BC1C70C01CF89F821C889FBF7D321D309D801C60375E881C6B15BFFFFC1C61101FE89F021F889F3F7D321CB09D801C20355EC81C2BED75C89C1C21601F289D021F089D3F7D321FB09D801C1034DF081C12211906BC1C10701D189C821D089CBF7D321F309D801C7037DF481C7937198FDC1C70C01CF89F821C889FBF7D321D309D801C60375F881C68E4379A6C1C61101FE89F021F889F3F7D321CB09D801C20355FC81C22108B449C1C21601F289D021F889FBF7D321F309D801C1034DC481C162251EF6C1C10501D189C821F089F3F7D321D309D801C7037DD881C740B340C0C1C70901CF89F821D089D3F7D321CB09D801C60375EC81C6515A5E26C1C60E01FE89F021C889CBF7D321FB09D801C20355C081C2AAC7B6E9C1C21401F289D021F889FBF7D321F309D801C1034DD481C15D102FD6C1C10501D189C821F089F3F7D321D309D801C7037DE881C753144402C1C70901CF89F821D089D3F7D321CB09D801C60375FC81C681E6A1D8C1C60E01FE89F021C889CBF7D321FB09D801C20355D081C2C8FBD3E7C1C21401F289D021F889FBF7D321F309D801C1034DE481C1E6CDE121C1C10501D189C821F089F3F7D321D309D801C7037D"
$_MD5Opcode &= "F881C7D60737C3C1C70901CF89F821D089D3F7D321CB09D801C60375CC81C6870DD5F4C1C60E01FE89F021C889CBF7D321FB09D801C20355E081C2ED145A45C1C21401F289D021F889FBF7D321F309D801C1034DF481C105E9E3A9C1C10501D189C821F089F3F7D321D309D801C7037DC881C7F8A3EFFCC1C70901CF89F821D089D3F7D321CB09D801C60375DC81C6D9026F67C1C60E01FE89F021C889CBF7D321FB09D801C20355F081C28A4C2A8DC1C21401F289D031F031F801C1034DD481C14239FAFFC1C10401D189C831D031F001C7037DE081C781F67187C1C70B01CF89F831C831D001C60375EC81C622619D6DC1C61001FE89F031F831C801C20355F881C20C38E5FDC1C21701F289D031F031F801C1034DC481C144EABEA4C1C10401D189C831D031F001C7037DD081C7A9CFDE4BC1C70B01CF89F831C831D001C60375DC81C6604BBBF6C1C61001FE89F031F831C801C20355E881C270BCBFBEC1C21701F289D031F031F801C1034DF481C1C67E9B28C1C10401D189C831D031F001C7037DC081C7FA27A1EAC1C70B01CF89F831C831D001C60375CC81C68530EFD4C1C61001FE89F031F831C801C20355D881C2051D8804C1C21701F289D031F031F801C1034DE481C139D0D4D9C1C10401D189C831D031F001C7037DF081C7E599DBE6C1C70B01CF89F831C831D001C60375FC81C6F87CA21FC1C61001FE89F031F831C801C20355C881C26556ACC4C1C21701F289F8F7D009D031F001C1034DC081C1442229F4C1C10601D189F0F7D009C831D001C7037DDC81C797FF2A43C1C70A01CF89D0F7D009F831C801C60375F881C6A72394ABC1C60F01FE89C8F7D009F031F801C20355D481C239A093FCC1C21501F289F8F7D009D031F001C1034DF081C1C3595B65C1C10601D189F0F7D009C831D001C7037DCC81C792CC0C8FC1C70A01CF89D0F7D009F831C801C60375E881C67DF4EFFFC1C60F01FE89C8F7D009F031F801C20355C481C2D15D8485C1C21501F289F8F7D009D031F001C1034DE081C14F7EA86FC1C10601D189F0F7D009C831D001C7037DFC81C7E0E62CFEC1C70A01CF89D0F7D009F831C801C60375D881C6144301A3C1C60F01FE89C8F7D009F031F801C20355F481C2A111084EC1C21501F289F8F7D009D031F001C1034DD081C1827E53F7C1C10601D189F0F7D009C831D001C7037DEC81C735F23ABDC1C70A01CF89D0F7D009F831C801C60375C881C6BBD2D72AC1C60F01FE89C8F7D009F031F801C20355E481C291D386EBC1C21501F28B4508010801500401700801780C5F5E5BC9C20800C814000053E840000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008F45EC8B5D0C6A088D4310508D"
$_MD5Opcode &= "45F850E8510000008B4310C1E80383E03F8945F483F838730B6A38582B45F48945F0EB096A78582B45F48945F0FF75F0FF75ECFF750CE831F8FFFF6A088D45F850FF750CE823F8FFFF6A1053FF7508E8050000005BC9C210005589E55156578B7D088B750C8B4D10FCF3A45F5E595DC20C00"
HotKeySet("^q", "_end")
HotKeySet("^n", "_new_p")
HotKeySet("^a", "_stringlist")
#NoTrayIcon
[/autoit] [autoit][/autoit] [autoit]Global $AnzItems, $item[999999][5], $items[9999999]
Global $Browser
Const $ConfigPath=@ScriptDir & "\ini\config.ini"
Const $StringPath=@ScriptDir & "\ini\string.trf"
Const $VersionPath=@ScriptDir & "\ini\version.ini"
Const $ChangelogPath=@ScriptDir & "\changelog.txt"
Const $PassPath=@ScriptDir & "\ini\pass.ini"
FileDelete("Updates\*.*")
[/autoit] [autoit][/autoit] [autoit]If Not FileExists("\ini") Then DirCreate(@ScriptDir & "\ini")
[/autoit] [autoit][/autoit] [autoit];~ If Not FileExists("\Updates") Then DirCreate(@ScriptDir & "\Updates")
[/autoit] [autoit][/autoit] [autoit]If Not FileExists($StringPath) Then
FileWrite($StringPath, "String, Pfad zum Ordner, EXE Datei, Name*")
FileWriteLine($StringPath, "")
EndIf
If Not FileExists($ConfigPath) Then
IniWrite($ConfigPath, "Transparenz", "Tranz", 100)
IniWrite($ConfigPath, "Anzahl", "Anzahl", 0)
IniWrite($ConfigPath, "Language", "Lang", "German")
IniWrite($ConfigPath, "Checks", "Update", "1")
IniWrite($ConfigPath, "Checks", "Passwort", "1")
IniWrite($ConfigPath, "Checks", "Transmeldung", "1")
IniWrite($ConfigPath, "Checks", "WinMove", "1")
EndIf
$Language=IniRead($ConfigPath, "Language", "Lang", "")
$Langpath=@ScriptDir & "\lang\"&$language&"\lang_"&$language&".ini"
If Not FileExists($Langpath) Then
MsgBox(16, "Fehler Language Datei nicht gefunden!", "Die Language File '"&$Language&"' wurde nicht gefunden. Das Programm wird daher geschlossen!")
EMail()
Exit
EndIf
If Not FileExists($PassPath) Then
$pass=InputBox(IniRead($LangPath, $Language, "password", "password"), IniRead($LangPath, $Language, "pls_password", "pls_password"), "", "*")
IniWrite($PassPath, "Passwort", "Passwort", _MD5($pass))
Else
If IniRead($ConfigPath, "Checks", "Passwort", "")=1 Then
; Prüfe ob Angabe richtig
$res = InputBox(IniRead($LangPath, $Language, "password", "password"),IniRead($LangPath, $Language, "pls_password", "pls_password"),'','*')
If IniRead($PassPath, "Passwort", "Passwort", "nix") <> _MD5($res) then
MsgBox(16, IniRead($LangPath, $Language, "bad_password", "bad_password"), IniRead($LangPath, $Language, "bad_password1", "bad_password"))
Exit
EndIf
EndIf
EndIf
dataload()
[/autoit] [autoit][/autoit] [autoit]#Region ### START Koda GUI section ### Form=
$MainWindow = GUICreate("", @DesktopWidth, 5, 0, 0, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
WinSetTrans($MainWindow, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
;~ String eingabe um Programm zu starten
$Stringl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "string_label", "string_label"), 0, 0, 120, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
GUICtrlSetBkColor($Stringl, $GUI_BKCOLOR_TRANSPARENT)
$eingabe = GUICtrlCreateInput(IniRead($LangPath, $Language, "string_input", "string_input"), 120, 0, 121, 21)
;~ Menü aufbauen
;~~ Menü "Optionen"
$options = GUICtrlCreateMenu(IniRead($LangPath, $Language, "mainmenu", "mainmenu"))
$new_programm = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "new_programm", "new_programm") & " (STRG+N)", $options)
_GUICtrlODMenuItemSetIcon($new_programm, @ScriptDir & "\gfx\add_programm.ico") ;~ Icon zuweissen
_SetMenuIconBkColor(0xFFFFFF)
_SetMenuBkColor(0xFFFFFF)
$programmlistshow = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "specified", "specified") & " (STRG+A)", $options)
_GUICtrlODMenuItemSetIcon($programmlistshow, @ScriptDir & "\gfx\stringlist.ico") ;~ Icon zuweissen
GUICtrlCreateMenuItem("", $options)
$closed = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "closed", "closed") & " (STRG+Q)", $options)
_GUICtrlODMenuItemSetIcon($closed, @ScriptDir & "\gfx\closed.ico") ;~ Icon zuweissen
;~~ Menü "Einstellungen"
$options = GUICtrlCreateMenu(IniRead($LangPath, $Language, "options", "options"))
$optionsedit= _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "options", "options"), $options)
_GUICtrlODMenuItemSetIcon($optionsedit, @ScriptDir & "\gfx\options.ico") ;~ Icon zuweissen
;GUICtrlSetState(-1, $GUI_DISABLE)
;~~ Menü "Help"
$help = GUICtrlCreateMenu(IniRead($LangPath, $Language, "help", "help"))
$link1 = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "homepage", "homepage"), $help)
_GUICtrlODMenuItemSetIcon($link1, @ScriptDir & "\gfx\homepage.ico") ;~ Icon zuweissen
$link2 = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "board", "board"), $help)
_GUICtrlODMenuItemSetIcon($link2, @ScriptDir & "\gfx\board.ico") ;~ Icon zuweissen
$changelog = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "changelog_read", "changelog_read"), $help)
_GUICtrlODMenuItemSetIcon($changelog, @ScriptDir & "\gfx\changelog.ico") ;~ Icon zuweissen
$updatecheck = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "update_check", "update_check"), $help)
_GUICtrlODMenuItemSetIcon($updatecheck, @ScriptDir & "\gfx\ucheck.ico") ;~ Icon zuweissen
GUICtrlSetState(-1, $GUI_DISABLE)
GUICtrlCreateMenuItem("", $help)
$email = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "email-send", "email_send"), $help)
_GUICtrlODMenuItemSetIcon($email, @ScriptDir & "\gfx\email.ico") ;~ Icon zuweissen
$other = _GUICtrlCreateODMenuItem(IniRead($LangPath, $Language, "other", "other"), $help)
_GUICtrlODMenuItemSetIcon($other, @ScriptDir & "\gfx\other.ico") ;~ Icon zuweissen
;~ Slider erstellen und Label mit Slider umstellen
$Slider = GUICtrlCreateSlider(608, 0, 118, 21)
GUICtrlSetLimit(-1, 100, 15)
GUICtrlSetData($slider, 100)
;~ Tranzparenz aus Ini laden und $Slider einstellen
GUICtrlSetData($Slider, IniRead($ConfigPath, "Transparenz", "Tranz", 0))
$trans = GUICtrlCreateLabel(IniRead($LangPath, $Language, "transparency", "transpareny"), 512, 0, 94, 22)
GUICtrlSetFont(-1, 12, 400, 0, "Arial")
GUICtrlSetBkColor($trans, $GUI_BKCOLOR_TRANSPARENT)
$transprozent = GUICtrlCreateLabel("0%", 728, 0, 38, 19)
GUICtrlSetFont(-1, 9, 400, 0, "Arial")
GUICtrlSetBkColor($transprozent, $GUI_BKCOLOR_TRANSPARENT)
GUICtrlSetData($transprozent, "100%")
;~ Tranzparenz aus Ini laden und $tranzprozent einstellen
GUICtrlSetData($transprozent, IniRead($ConfigPath, "Transparenz", "Tranz", 0)&"%")
;~ Start Button um Programm mit dem eingegebenen String zu starten
$start = GUICtrlCreateButton(IniRead($LangPath, $Language, "start", "start"), 248, 0, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
;********************************************************************************************
; Programmliste zeigen mit String zugehörigkeit
;********************************************************************************************
$programmlist = GUICreate("", 281, 460, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
$listviewbk = GUICtrlCreateLabel("", 0, 0, 276, 428)
GUICtrlSetState(-1, $GUI_DISABLE)
$listview = GUICtrlCreateListView(IniRead($LangPath, $Language, "string", "string")&"|"&IniRead($LangPath, $Language, "name", "name"), 0, 0, 273, 425)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 0, 100)
GUICtrlSendMsg(-1, $LVM_SETCOLUMNWIDTH, 1, 150)
$programmlistclose = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 176, 432, 99, 25, $WS_GROUP)
$programmlistaktu = GUICtrlCreateButton(IniRead($LangPath, $Language, "update", "update"), 0, 432, 75, 25, $WS_GROUP)
$auswahl_delete = GUICtrlCreateButton(IniRead($LangPath, $Language, "string_delete", "string_delete"), 80, 432, 91, 25, $WS_GROUP)
GUICtrlSetState(-1, $GUI_DISABLE)
;********************************************************************************************
; "Neues Programm einfügen" Fenster öffnen
;********************************************************************************************
$programme = GUICreate("", 286, 187, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
$Label1 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "name_programm", "name_programm"), 8, 8, 143, 17)
$Label2 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "path_to_folder", "path_to_folder"), 64, 40, 86, 17)
$Label3 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "enter_string_one", "enter_string_one"), 72, 112, 81, 17)
$Label4 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "path_to_folder", "path_to_folder"), 48, 72, 98, 17)
$Label5 = GUICtrlCreateLabel(IniRead($LangPath, $Language, "sample", "sample"), 72, 88, 79, 17)
$gamename = GUICtrlCreateInput(IniRead($LangPath, $Language, "insert_name", "insert_name"), 160, 8, 121, 21)
$programm1 = GUICtrlCreateInput(IniRead($LangPath, $Language, "specifying_path", "specifying_path"), 160, 40, 121, 21)
$exedata = GUICtrlCreateInput(IniRead($LangPath, $Language, "sample_exe", "sample_exe"), 160, 80, 121, 21, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL))
$Wort1 = GUICtrlCreateInput(IniRead($LangPath, $Language, "current_string", "current_string"), 160, 112, 121, 21)
$stringgen = GUICtrlCreateButton(IniRead($LangPath, $Language, "generate_string", "generate_string"), 0, 136, 99, 25, $WS_GROUP)
$tutorial = GUICtrlCreateButton(IniRead($LangPath, $Language, "tutorial", "tutorial"), 104, 136, 75, 25, $WS_GROUP)
$programmesave = GUICtrlCreateButton(IniRead($LangPath, $Language, "save", "save"), 104, 160, 75, 25, $WS_GROUP)
$programmeclose = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 184, 136, 99, 25, $WS_GROUP)
;********************************************************************************************
; "Changelog" Fenster öffnen
;********************************************************************************************
$changelogwindow = GUICreate("Changelog", 405, 445, 302, 218)
$changlogedit = GUICtrlCreateEdit("", 0, 0, 401, 441, BitOR($ES_AUTOHSCROLL,$ES_READONLY,$ES_WANTRETURN,$WS_VSCROLL))
;********************************************************************************************
; Other Menü Aufbauen und GUI Erzeugen
;********************************************************************************************
$othermenu = GUICreate(IniRead($LangPath, $Language, "other_string_starter", "other_string_starter"), 400, 90, 302, 220)
$PageControl = GUICtrlCreateTab(0, 0, 396, 88)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$otherss = GUICtrlCreateTabItem(IniRead($LangPath, $Language, "other_string_starter", "other_string_starter"))
GUICtrlSetState(-1,$GUI_SHOW)
$createdlabel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "created", "created") & " AutoIt", 8, 32, 195, 24)
GUICtrlSetFont(-1, 15, 400, 0, "Aharoni")
GUICtrlSetBkColor(-1, 0xFFFFFF)
$writtenlabel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "written", "written") & " Tak", 8, 56, 149, 24)
GUICtrlSetFont(-1, 15, 400, 0, "Aharoni")
GUICtrlSetBkColor(-1, 0xFFFFFF)
$idea = GUICtrlCreateTabItem(IniRead($LangPath, $Language, "idea", "idea"))
$idealable = GUICtrlCreateLabel(IniRead($LangPath, $Language, "idea_by", "idea_by") & " Strom666", 48, 32, 274, 42)
GUICtrlSetFont(-1, 20, 400, 0, "Arial Black")
GUICtrlCreateTabItem("")
;*******************************************************************************************
; Options Fenster aufbauen
;*******************************************************************************************
$optionswindow = GUICreate("", 286, 187, 0, 45, BitOR($WS_SYSMENU,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS, $WS_EX_TOOLWINDOW), BitOr($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
$optionsl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "options", "options"), 8, 8, 273, 26)
GUICtrlSetFont(-1, 14, 400, 4, "Arial")
$winmove = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 40, 97, 17)
$updatecheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 64, 97, 17)
GUICtrlSetState(-1, $GUI_DISABLE)
$passcheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 88, 97, 17)
$tranzcheckc = GUICtrlCreateCheckbox(IniRead($LangPath, $Language, "checkboxes", "checkboxes"), 192, 112, 97, 17)
checks()
$speak = GUICtrlCreateCombo($Language , 192, 136, 97, 25)
Local $file_A = _fileList(@ScriptDir & "\lang\", "*", 0)
Local $a_A = _ArrayToString($file_A, "|")
GUICtrlSetData($speak, $a_A)
$winmovel = GUICtrlCreateLabel(IniRead($LangPath, $Language, "winmove_lable", "winmove_lable"), 8, 40, 150, 17)
$updatecheckl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "update_lable", "update_lable"), 8, 64, 150, 17)
$passcheckl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "password_lable", "passwort_lable"), 8, 88, 168, 17)
$tranzparentl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "transpareny_lable", "transpareny_lable"), 8, 112, 165, 17)
$speakl = GUICtrlCreateLabel(IniRead($LangPath, $Language, "speak_lable", "speak_lable"), 8, 136, 47, 17)
$savedoptions = GUICtrlCreateButton("Speichern", 8, 160, 75, 25, $WS_GROUP)
$optionsclosed = GUICtrlCreateButton(IniRead($LangPath, $Language, "window_close", "window_close"), 96, 160, 107, 25, $WS_GROUP)
;~ GUI Transparenz aus Ini laden und einstellen
WinSetTrans($programmlist, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
WinSetTrans($optionswindow, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
WinSetTrans($programme, "", IniRead($ConfigPath, "Transparenz", "Tranz", 0) * 2.55)
;********************************************************************************************
; Eigendlicher Code beginnt hier!
;********************************************************************************************
While 1
$msg = GUIGetMsg()
;~ GUI wie Taskleiste einklappen
If IniRead($ConfigPath, "Checks", "WinMove", "1")=1 Then
$WPos = WinGetPos($MainWindow)
$MPos = MouseGetPos()
If ($MPos[0] >= $WPos[0]) And ($MPos[0] <= ($WPos[0] + $WPos[2])) And ($MPos[1] >= $WPos[1]) And ($MPos[1] <= ($WPos[1] + $WPos[3])) Then
WinSetOnTop($MainWindow, "", 1)
WinMove($MainWindow, "", 0, 0, @DesktopWidth, 45, 3)
Else
WinSetOnTop($MainWindow, "", 1)
WinMove($MainWindow, "", 0, 0, @DesktopWidth, 5, 3)
EndIf
Else
WinSetOnTop($MainWindow, "", 1)
WinMove($MainWindow, "", 0, 0, @DesktopWidth, 45, 3)
EndIf
;~ Eingegebenen String mit Ini Einträgen abgleichen und Programm starten
If $msg=$start Then
dataload()
For $i=1 to $AnzItems
If GUICtrlRead($eingabe)==$item[$i][0] Then
ShellExecute($item[$i][1] & $item[$i][2], "", $item[$i][1])
EndIf
Next
EndIf
;~ Stringangaben Zeigen
If $msg=$programmlistshow Then
dataload()
GUISetState(@SW_SHOW, $programmlist)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read Step 1
WinSetTrans($programmlist, "", $i * 2.55)
Sleep(10)
Next
Sleep(100)
For $i=1 to $AnzItems
GUICtrlDelete($items[$i])
$items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
Next
EndIf
;~ Programmliste aktualisieren
If $msg=$programmlistaktu Then
dataload()
For $i=1 to $AnzItems
GUICtrlDelete($items[$i])
$items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
Next
EndIf
If $msg=$auswahl_delete Then
EndIf
If $msg=$programmlistclose Then
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($programmlist, "", $i * 2.55)
Sleep(10)
Next
Sleep(10)
GUISetState(@SW_HIDE, $programmlist)
EndIf
;~ Neues Programm Hinzufügen Fenster öffnen
If $msg=$new_programm Then
GUISetState(@SW_SHOW, $programme)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read Step 1
WinSetTrans($programme, "", $i * 2.55)
Sleep(10)
Next
EndIf
;~ String Generieren
If $msg=$stringgen Then
$Zeichen = Random(3, 10)
$Wort = ""
For $i = 1 to $Zeichen
$Buchstabe = Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90) & Random(65, 90)
If $Buchstabe > 57 AND $Buchstabe < 65 OR $Buchstabe > 90 AND $Buchstabe < 97 Then
$i -= 1
Else
$Wort &= Chr($Buchstabe)
EndIf
Next
GUICtrlSetData($Wort1, $Wort)
EndIf
;~ Programm mit String in ini Schreiben
If $msg=$programmesave Then
save()
EndIf
If $msg=$tutorial Then
tuthinweis()
EndIf
;~ Neues Programm Hinzufügen Fenster schliessen
If $msg=$programmeclose Then
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($programme, "", $i * 2.55)
Sleep(10)
Next
Sleep(1000)
GUISetState(@SW_HIDE, $programme)
EndIf
;~ Options Fenster aufbauen
If $msg=$optionsedit Then
GUISetState(@SW_SHOW, $optionswindow)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read
WinSetTrans($optionswindow, "", $i * 2.55)
Sleep(10)
Next
Sleep(1000)
If GUICtrlRead($updatecheckc)=$GUI_UNCHECKED Then
MsgBox(16, IniRead($LangPath, $Language, "update_check", "update_check"), IniRead($LangPath, $Language, "update_check_false", "update_check_false"))
EndIf
EndIf
If $msg=$savedoptions Then
saveo()
MsgBox(64, "Gespeichert", "Änderungen wurden gespeichert")
EndIf
;~ Options Fenster schliessen
If $msg=$optionsclosed Then
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($optionswindow, "", $i * 2.55)
Sleep(10)
Next
Sleep(1000)
saveo()
GUISetState(@SW_HIDE, $optionswindow)
EndIf
If $msg=$link1 Then
GoLink1()
EndIf
If $msg=$link2 Then
GoLink2()
EndIf
If $msg=$email Then
email()
EndIf
;~ Changelog Fenster öffnen
If $msg=$changelog Then
$changelogedit="=========================================================================="&@CRLF
$changelogedit &=" String Starter - Programm Changelog"&@CRLF
$changelogedit &=" Copyright (c) by Tak"&@CRLF
$changelogedit &=" E-Mail: tak90@gmx.de"&@CRLF
$changelogedit &="==============================================================================="&@CRLF
$changelogedit &=" + Neues Feature oder änderungen"&@CRLF
$changelogedit &=" - Bug fix oder entfernungen"&@CRLF
$changelogedit &=" # Neues Feature geplant"&@CRLF
$changelogedit &=" * Änderung an informationen"&@CRLF
$changelogedit &=" ! Wichtig - Bitte Lesen!"&@CRLF
$changelogedit &="==============================================================================="&@CRLF&@CRLF
GUISetState(@SW_SHOW, $changelogwindow)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read Step 1
WinSetTrans($changelogwindow, "", $i * 2.55)
Sleep(10)
Next
Sleep(10)
GUICtrlSetData($changlogedit, $changelogedit & FileRead($ChangelogPath))
EndIf
;~ Changelog Fenster schliessen
If $msg=$GUI_EVENT_CLOSE Then
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($changelogwindow, "", $i * 2.55)
Sleep(10)
Next
Sleep(10)
GUISetState(@SW_HIDE, $changelogwindow)
EndIf
;~ Other Fenster öffnen
If $msg=$other Then
GUISetState(@SW_SHOW, $othermenu)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read Step 1
WinSetTrans($othermenu, "", $i * 2.55)
Sleep(10)
Next
Sleep(100)
EndIf
;~ Other Fenster schliessen
If $msg=$GUI_EVENT_CLOSE Then
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($othermenu, "", $i * 2.55)
Sleep(10)
Next
Sleep(100)
GUISetState(@SW_HIDE, $othermenu)
EndIf
;~ Transparent Slider Lesen und Transparenz einstellen
If $msg=$Slider Then
$Read=GUICtrlRead($Slider)
WinSetTrans($MainWindow, "", $Read * 2.55)
WinSetTrans($programmlist, "", $Read * 2.55)
WinSetTrans($programme, "", $Read * 2.55)
WinSetTrans($optionswindow, "", $Read * 2.55)
GUICtrlSetData($transprozent, 100/100*$Read&"%")
EndIf
;~ String Starter schliessen und Werte in ini Speichern
If $msg=$closed Then
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($MainWindow, "", $i * 2.55)
WinSetTrans($programmlist, "", $i * 2.55)
WinSetTrans($programme, "", $i * 2.55)
WinSetTrans($othermenu, "", $i * 2.55)
WinSetTrans($optionswindow, "", $i * 2.55)
Sleep(10)
Next
Sleep(100)
IniWrite($ConfigPath, "Transparenz", "Tranz", GUICtrlRead($Slider))
ConsoleWrite("Transparenz wurde auf "&GUICtrlRead($Slider)&"% gespeichert"&@CRLF)
If IniRead($ConfigPath, "Checks", "Transmeldung", "")=1 Then
MsgBox(64, IniRead($LangPath, $Language, "trans_check", "trans_check"), IniRead($LangPath, $Language, "trans_message_one", "trans_message")&" "&GUICtrlRead($Slider)&"% "&IniRead($LangPath, $Language, "trans_message_two", "trans_message"))
EndIf
Exit
EndIf
WEnd
;~ tutorial hinweis
Func tuthinweis()
$tut=FileRead(@ScriptDir & "\lang\"&$language&"\tut_"&$language&".txt")
If Not FileExists(@ScriptDir & "\lang\"&$language&"\tut_"&$language&".txt") Then
MsgBox(64,IniRead($LangPath, $Language, "tutorial_h", "tutorial_h"), "tut file not found!")
Else
MsgBox(64,IniRead($LangPath, $Language, "tutorial_h", "tutorial_h"), $tut)
EndIf
EndFunc
;~ Checks für Optionen
Func checks()
If IniRead($ConfigPath, "Checks", "WinMove", "1")=1 Then
GUICtrlSetState($winmove, $GUI_CHECKED)
Else
GUICtrlSetState($winmove, $GUI_UNCHECKED)
EndIf
If IniRead($ConfigPath, "Checks", "Update", "1")=1 Then
GUICtrlSetState($updatecheckc, $GUI_CHECKED)
Else
GUICtrlSetState($updatecheckc, $GUI_UNCHECKED)
EndIf
If IniRead($ConfigPath, "Checks", "Passwort", "1")=1 Then
GUICtrlSetState($passcheckc, $GUI_CHECKED)
Else
GUICtrlSetState($passcheckc, $GUI_UNCHECKED)
EndIf
If IniRead($ConfigPath, "Checks", "Transmeldung", "1")=1 Then
GUICtrlSetState($tranzcheckc, $GUI_CHECKED)
Else
GUICtrlSetState($tranzcheckc, $GUI_UNCHECKED)
EndIf
EndFunc
;~ Speichern von den Optionen
Func saveo()
If GUICtrlRead($winmove)=$GUI_CHECKED Then
IniWrite($ConfigPath, "Checks", "WinMove", "1")
Else
IniWrite($ConfigPath, "Checks", "WinMove", "0")
EndIf
If GUICtrlRead($updatecheckc)=$GUI_CHECKED Then
IniWrite($ConfigPath, "Checks", "Update", "1")
Else
IniWrite($ConfigPath, "Checks", "Update", "0")
EndIf
If GUICtrlRead($passcheckc)=$GUI_CHECKED Then
IniWrite($ConfigPath, "Checks", "Passwort", "1")
Else
IniWrite($ConfigPath, "Checks", "Passwort", "0")
EndIf
If GUICtrlRead($tranzcheckc)=$GUI_CHECKED Then
IniWrite($ConfigPath, "Checks", "Transmeldung", "1")
Else
IniWrite($ConfigPath, "Checks", "Transmeldung", "0")
EndIf
IniWrite($ConfigPath, "Language", "Lang", GUICtrlRead($speak))
EndFunc
Func _WinMove($HWnd, $Command, $wParam, $lParam)
If BitAND(WinGetState($HWnd), 32) Then Return $GUI_RUNDEFMSG
DllCall("user32.dll", "long", "SendMessage", "hwnd", $HWnd, "int", $WM_SYSCOMMAND, "int", 0xF009, "int", 0)
EndFunc ;==>_WinMove
;~ daten aus der String.tft laden
Func dataload()
$File=FileOpen($StringPath, 0)
$AnzItems=IniRead($ConfigPath, "Anzahl", "Anzahl", "")
FileReadLine($file)
For $i=1 to $AnzItems
For $z=0 to 4
$item[$i][$z]=FileReadLine($file)
Next
Next
FileClose($file)
EndFunc
;~ Neues Programm einfügen Fenster in den Vordergrund holen
Func _new_p()
GUISetState(@SW_SHOW, $programme)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read Step 1
WinSetTrans($programme, "", $i * 2.55)
Sleep(10)
Next
EndFunc
;~ String Angaben Fenster in den Vordergrund holen wenn STRG+A gedrückt wurde
Func _stringlist()
dataload()
GUISetState(@SW_SHOW, $programmlist)
$Read=GUICtrlRead($Slider)
For $i=1 to $Read Step 1
WinSetTrans($programmlist, "", $i * 2.55)
Sleep(10)
Next
Sleep(100)
For $i=1 to $AnzItems
GUICtrlDelete($items[$i])
$items[$i]=GUICtrlCreateListViewItem($item[$i][0]&"|"&$item[$i][3], $listview)
Next
EndFunc
;~ _end ausführen wenn STRG+Q gedrückt wird
Func _end()
IniWrite($ConfigPath, "Transparenz", "Tranz", GUICtrlRead($Slider))
$Read=GUICtrlRead($Slider)
For $i=$Read to 1 Step -1
WinSetTrans($MainWindow, "", $i * 2.55)
WinSetTrans($programmlist, "", $i * 2.55)
WinSetTrans($programme, "", $i * 2.55)
WinSetTrans($othermenu, "", $i * 2.55)
WinSetTrans($optionswindow, "", $i * 2.55)
Sleep(10)
Next
Sleep(100)
ConsoleWrite("Transparenz wurde auf "&GUICtrlRead($Slider)&"% gespeichert"&@CRLF)
If IniRead($ConfigPath, "Checks", "Transmeldung", "")=1 Then
$yesno=MsgBox(68, IniRead($LangPath, $Language, "trans_check", "trans_check"), IniRead($LangPath, $Language, "trans_message_one", "trans_message")&" "&GUICtrlRead($Slider)&"% "&IniRead($LangPath, $Language, "trans_message_two", "trans_message")&@CRLF&IniRead($LangPath, $Language, "trans_message_three", "trans_message"))
If $yesno=7 Then
IniWrite($ConfigPath, "Checks", "Transmeldung", "0")
EndIf
EndIf
Exit
EndFunc
;*******************************************
; Speicher Funktion für neues Programm
;*******************************************
Func save()
$dateiinhalt=FileRead($StringPath)
$array1=stringsplit($dateiinhalt,@crlf,3)
$reg=IniRead($ConfigPath, "Anzahl", "Anzahl",0)
$array=number($reg)+1
IniWrite($ConfigPath, "Anzahl", "Anzahl", $array)
$dateiinhalt=_ArrayToString($array1,@crlf)
filedelete($StringPath)
FileWrite($StringPath, $dateiinhalt)
FileWriteLine($StringPath, GUICtrlRead($Wort1))
FileWriteLine($StringPath, GUICtrlRead($programm1))
FileWriteLine($StringPath, GUICtrlRead($exedata))
FileWriteLine($StringPath, GUICtrlRead($gamename))
FileWriteLine($StringPath, "*")
$s=GUICtrlRead($gamename)
$u=GUICtrlRead($Wort1)
MsgBox(0, IniRead($LangPath, $Language, "new_string_h", "new_string_header"), IniRead($LangPath, $Language, "new_string_message_one", "new_string_message_one")&GUICtrlRead($gamename)&IniRead($LangPath, $Language, "new_string_message_two", "new_string_message_two")&GUICtrlRead($Wort1)&IniRead($LangPath, $Language, "new_string_message_three", "new_string_message_three"))
EndFunc
;********************************************
; Browser erstellen und öffnen!
;********************************************
Func GoLink1()
$Browser="http://autoit.de"
Browsen()
EndFunc
Func GoLink2()
$Browser="http://www.autoit.de/index.php?page=Thread&threadID=17326"
Browsen()
EndFunc
Func Browsen()
_IECreate($Browser)
EndFunc
Func EMail()
_INetMail("tak90@gmx.de", "Fehler/Hinweis melden", "")
EndFunc
;*******************************************
; MD5 Code
;*******************************************
; MD5-Funktion um einen String mit MD5 zu verschlüsseln
Func _MD5($Data)
Local $CodeBuffer = DllStructCreate("byte[" & BinaryLen($_MD5Opcode) & "]")
DllStructSetData($CodeBuffer, 1, $_MD5Opcode)
Local $Input = DllStructCreate("byte[" & BinaryLen($Data) & "]")
DllStructSetData($Input, 1, $Data)
Local $Digest = DllStructCreate("byte[16]")
[/autoit] [autoit][/autoit] [autoit]DllCall("user32.dll", "none", "CallWindowProc", "ptr", DllStructGetPtr($CodeBuffer), _
"ptr", DllStructGetPtr($Input), _
"int", BinaryLen($Data), _
"ptr", DllStructGetPtr($Digest), _
"int", 0)
Local $Ret = DllStructGetData($Digest, 1)
$Input = 0
$Digest = 0
$CodeBuffer = 0
Return StringLower(StringTrimLeft($Ret, 2))
EndFunc ;==>_MD5
Func _fileList($s_path = "C:\", $s_pattern = "*", $i_opt = 0)
Local $result = _FileListToArray($s_path, $s_pattern, $i_opt)
If (Not IsArray($result)) and (@error = 1) Then
MsgBox(0, "", "No Folders Found.")
Exit
EndIf
Return $result
EndFunc ;==>_fileList
Changelog:
Spoiler anzeigen
==========================================================================
String Starter - Programm Changelog
Copyright (c) by Tak
E-Mail: tak90@gmx.de
===============================================================================
+ Neues Feature oder änderungen
- Bug fix oder entfernungen
# Neues Feature geplant
* Änderung an informationen
! Wichtig - Bitte Lesen!
===============================================================================
=== String Starter Release 0.20 - 01 Feb 2010 ===
+ Einklappfunktion wurde eingebaut
# Update Funktion
# Strings aus der Datei löschen ohne das andere beschädigt werden
=== String Starter Release 0.19 - 28 Jan 2010 ===
- Update Funktion wurde entfernt
+ Fenster werden nicht mehr in der Taskleiste angezeigt
=== String Starter Release 0.17 - 11 Jan 2010 ===
+ Einstellungen wurden fertig gestellt und implementiert
- Fehler bei den HotKeys gefixt
# Englische Sprache einbinden
=== String Starter Release 0.16-beta-9 - 09 Jan 2010 ===
+ Language Files können erstellt werden
+ Update Funktion überarbeitet
+ Passwort Funktion implementiert
! Einstellungen fast fertig implementiert
- Transparenz Meldung (Meldung kam auch wenn man auf "Nein" gedrückt hat)
=== String Starter Release 0.14-beta5 - 05 Jan 2010 ===
+ "Über StringStarter" Fenster implementiert
+ Hotkey Funktionen wurden eingebaut (im Hauptmenü)
* Links für Homepage und Forum wuren deaktiviert
* Grundaufbau der Einstellungen wurden vorgenommen
# Fehler Meldung wenn String nicht vorhanden ist
# Fehler Meldung wenn das "String Eingeben" Feld leer ist
# Hotkey Funktionen bei den anderen Fenstern einbauen
=== String Starter Release 0.12-beta4 - 04 Jan 2010 ===
+ Meldung für die Transparenz speicherung (Kann abgeschaltet werden)
+ Fenster werden mit Transparenz aufgebaut
- Updatecheck Fehler. Dort wurde dauernt "Keine Verbindung" ausgegeben
# Einstellungs Menü wird eingebaut
# Hintergrundbild wird hinzugefügt
# Fenster Aufbau (Transparenz) kann später eingestellt werden
=== String Starter Release 0.07-beta3 - 01 Jan 2010 ===
+ Groß und Kleinschreibung wird beachtet
+ Links für die Homepage und Forum hinzugefügt
- Update Funktion, Fehlermeldung beim Start
- Transparenz wird nun korregt geladen
- Schreibfehler in der Tutorial Funktion wurden korrigiert
=== String Starter Release 0.05-beta2 - 30 Dec 2009 ===
+ Slider (Regler) für Transparenz Einstellung eingefügt
+ Tutorial wurde zum "Programm hinzufügen" erstellt
- Wenn Daten nicht vorhanden werden Datein angelegt (gefixt)
=== String Starter Release 0.01-beta1 - 29 Dec 2009 ===
! Offizieller Beta Release
Alles anzeigen
Für die meisten wird der Code einfach sein zu verstehen, für neulinge wird es etwas schwer werden.
die MD5 Funktion ist von einem Tutorial hier im Forum
[Tutorial] Login + Registrierung über eine MySql-DB [+ Hilfedateien] von Jautois
Func _fileList ist von Xenobiologist
Bitte aber um Kritik und Anregungen die ich da eventuell einbauen könnte.
Edit 1: Man sollte schon mal das Programm in einer .rar Datei hochladen -.-
Edit 2: (01.02.2010 - 04:56 pm) String Starter Update wurde hochgeladen, alte Dateien wurden gelöscht. Changelog wurde hier im Post hinzugefügt
mfg.
Tak | Jochen