Clipboard2Text

  • hi,
    ich wollte mal mein kleines projekt vorstellen. mit dem programm ist es möglich, per tastendruck, die zwischenablage in einer textdatei zu speichern.

    Spoiler anzeigen
    [autoit]

    #Region
    #AutoIt3Wrapper_icon=icon.ico
    #AutoIt3Wrapper_Res_Description=CB2TXT
    #AutoIt3Wrapper_Res_Fileversion=1.0.0.1
    #AutoIt3Wrapper_Res_Fileversion_AutoIncrement=y
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion

    [/autoit] [autoit][/autoit] [autoit]

    #Include <Constants.au3>
    #include <File.au3>
    #include <Misc.au3>
    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Dim $ClipBoard, $hFile, $Dateiname, $Anzeigen, $Beenden ,$msgTry ,$StartAuto
    Dim $i, $abgeTaste, $Taste, $MessageAntwort

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $frmMain = GUICreate("Clipboard2Text optionen", 276, 168, 192, 124)
    $cmdSave = GUICtrlCreateButton("Speichern", 197, 136, 73, 25, $WS_GROUP)
    $chkAutostart = GUICtrlCreateCheckbox("Programm mit Windows starten", 6, 144, 177, 17)
    GUICtrlSetState(-1, $GUI_UNCHECKED)
    $grpTastendruck = GUICtrlCreateGroup("Tastendruck um die Textdatei zu Speichern:", 4, 71, 265, 57)
    $cboTasten = GUICtrlCreateCombo("Strg + 1", 28, 96, 217, 25)
    GUICtrlSetData(-1, "Strg + 1")
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    FileInstall("titel.jpg", @TempDir & "\titel11232343423.jpg")
    $Pic = GUICtrlCreatePic(@TempDir & "\titel11232343423.jpg",0, 0, 276, 68, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    FileInstall("icon.ico", @TempDir & "\tmpicon13123123.ico")
    GUISetIcon(@TempDir & "\tmpicon13123123.ico")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    Opt("TrayMenuMode",1)
    Opt("TrayIconHide",1)
    $Anzeigen = TrayCreateItem("Anzeigen")
    $Beenden = TrayCreateItem("Beenden")

    [/autoit] [autoit][/autoit] [autoit]

    $StartAuto = RegRead("HKCU\SOFTWARE", "CBSAVEAutostart")
    If $StartAuto = "1" Then
    GUICtrlSetState($chkAutostart, $GUI_CHECKED)
    _SysTry_UnSichtbar()
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 1 To 9
    GUICtrlSetData($cboTasten, "Strg + " & $i)
    Next
    GUICtrlSetData($cboTasten, "Strg + 0")

    [/autoit] [autoit][/autoit] [autoit]

    $Taste = RegRead("HKCU\SOFTWARE", "CBSAVETaste")
    If $Taste = "" Then
    $Taste = "1"
    Else
    GUICtrlSetData($cboTasten, "Strg + " & $Taste)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $GUI_EVENT_MINIMIZE
    _SysTry_UnSichtbar()
    Case $cmdSave
    If GUICtrlRead($chkAutostart) = $GUI_UNCHECKED Then
    RegDelete("HKCU\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN", "Clipboard2Text")
    RegWrite("HKCU\SOFTWARE", "CBSAVEAutoStart", "REG_SZ", "0")
    ElseIf GUICtrlRead($chkAutostart) = $GUI_CHECKED Then
    RegWrite("HKCU\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN", "Clipboard2Text", "REG_SZ", @ScriptFullPath)
    RegWrite("HKCU\SOFTWARE", "CBSAVEAutostart", "REG_SZ", "1")
    EndIf
    $abgeTaste = StringTrimLeft(GUICtrlRead($cboTasten), 7)
    RegWrite("HKCU\SOFTWARE", "CBSAVETaste", "REG_SZ", $abgeTaste)
    EndSwitch

    [/autoit] [autoit][/autoit] [autoit]

    $msgTry = TrayGetMsg()
    Select
    Case $msgTry = $Anzeigen
    _SysTry_Sichtbar()
    Case $msgTry = $Beenden
    FileDelete(@TempDir & "\tmpicon13123123.ico")
    FileDelete(@TempDir & "\titel11232343423.jpg")
    Exit
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    If _IsPressed("11",DllOpen("user32.dll")) And _IsPressed("3" & $Taste,DllOpen("user32.dll")) Then
    $ClipBoard = ClipGet()
    $Dateiname = InputBox("Speichern", "Dateiname angeben:", "Dateiname")
    If $Dateiname <> "" Then
    If FileExists(@DesktopDir & "\" & $Dateiname & ".txt") Then
    $MessageAntwort = MsgBox(4, "Clipboard2Text", $Dateiname & ".txt besteht bereits!" & @crlf & "Soll sie ersetzt werden?")
    If $MessageAntwort = "6" Then
    _FileCreate(@DesktopDir & "\" & $Dateiname & ".txt")
    $hFile = FileOpen(@DesktopDir & "\" & $Dateiname & ".txt", 2)
    FileWrite($hFile, $ClipBoard)
    FileClose($hFile)
    EndIf
    Else
    _FileCreate(@DesktopDir & "\" & $Dateiname & ".txt")
    $hFile = FileOpen(@DesktopDir & "\" & $Dateiname & ".txt", 2)
    FileWrite($hFile, $ClipBoard)
    FileClose($hFile)
    EndIf
    EndIf
    EndIf
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _SysTry_Sichtbar()
    Opt('TrayIconHide', 1)
    GUISetState(@SW_SHOW, $frmMain)
    GUISetState(@SW_RESTORE, $frmMain)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _SysTry_UnSichtbar()
    Opt('TrayIconHide', 0)
    GUISetState(@SW_HIDE, $frmMain)
    EndFunc

    [/autoit]