1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. name22

Beiträge von name22

  • UDF Installer

    • name22
    • 10. Januar 2010 um 23:48

    Ich kann dir zwar nicht sagen ob sich TCP nicht mit Win7 verträgt, aber auf meinem Notebook (Vista Home Premium 32Bit)
    sowie meinem PC/Arbeitstier (Vista Ultimate 64Bit) bekomme ich die selbe Fehlermeldung. Würde mich freuen, wenn jemand für dieses Kompatibilitätsproblem eine Lösung findet. Um die Updatefunktion wär's doch schade :D .

  • Windows 7 32 oder 64 Bit ?

    • name22
    • 10. Januar 2010 um 07:57

    Soweit ich weiß können 64 bit Betriebssysteme mehr RAM verwalten als 32 bit Betriebssysteme wieviel hängt natürlich von der eigentlichen Version des Betriebssystems ab (Windows XP, Vista, Win7....).
    Der Geschwindigkeitsunterschied ist eher gering nach dem was ich so gehört hab.
    Außerdem habe ich gelesen, dass 64 bitter eine höhere Rechengenauigkeit haben. ?(
    Vielleicht gibt es hier ja jemanden der dir das noch genauer (bzw. richtiger :D ) erklären kann.

    Ach ja: Win7 32bit kann maximal 4Gb RAM verwalten

  • Etwas In einer Combo Abspeichern

    • name22
    • 10. Januar 2010 um 07:04

    Ich weiß nicht, ob ich auf so ein uraltes Thema überhaupt antworten soll oder ob das Problem schon gelöst ist, aber ich habe mir vor einiger Zeit das hier gebastelt.
    Eine Delete Funktion sollte man recht einfach einbauen können.

    Spoiler anzeigen
    [autoit]


    #include <File.au3>
    #include <GUIConstants.au3>

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

    #Region ### START Koda GUI section ### Form=Pfad zur Fenster.kxf
    $Fenster = GUICreate("Auswahl", 252, 66, 193, 125)
    $Auswahl = GUICtrlCreateCombo("Bitte Wählen", 8, 8, 97, 25)
    $Ausgabe = GUICtrlCreateButton("Ausgabe", 16, 32, 83, 25, 0)
    $Neu = GUICtrlCreateInput("Hier Text eingeben", 120, 8, 121, 21)
    $AddButton = GUICtrlCreateButton("Hinzufügen", 128, 32, 107, 25, 0)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    $MsgBox = ""
    $CheckVar = ""
    $Count = 1

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

    $IniRead = IniReadSection ("data.ini","Combobox")
    $Lines = _FileCountLines ("data.ini")

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

    If IsArray ($IniRead) = True Then
    For $i = 1 To $Lines -1
    $ComboData = $IniRead[$Count][0]
    GUICtrlSetData ($Auswahl,$ComboData&"|")
    $Count = $Count +1
    Next
    EndIf

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

    Do
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $AddButton
    $NeuerText = GUICtrlRead ($Neu)
    $Search = StringInStr ($CheckVar,$NeuerText,0,1)
    If $Search = 0 Then
    GUICtrlSetData ($Auswahl, $NeuerText&"|")
    $CheckVar = $CheckVar&$NeuerText
    IniWrite ("data.ini","Combobox",$NeuerText,"")
    Else
    MsgBox (64,"Fehler","Der Text: '"&$NeuerText&"' ist schon vorhanden. (Groß- /kleinschreibung wird nicht beachtet)")
    EndIf
    Case $Ausgabe
    $Text = GUICtrlRead ($Auswahl)
    MsgBox (64,"Info","Ausgewählter Text: "&$Text)
    EndSwitch
    Until $nMsg = $GUI_EVENT_CLOSE
    Exit

    [/autoit]

    Edit: Hab vergessen das sich der Verzeichnispfad der Fenster.kxf ändert :D Einfach anstatt "Pfad zur Fenster.kxf" einfügen (inkl. Dateinamen)

    Und hier die .kxf:

    Dateien

    kxf.zip 890 Byte – 158 Downloads
  • Neues GUI in Funktion

    • name22
    • 9. Januar 2010 um 17:06

    @Micha he
    Die Variable kann in einer Funktion nicht Global deklariert werden, denke ich :D
    Oder hab ich da was falsch verstanden ?(

  • Tooltip (Win Tool Tips auslesen)

    • name22
    • 30. Dezember 2009 um 00:26

    Da gäbe es auch die Möglichkeit in der Registry herumzupfuschen.
    (So müsste das Script nicht immer im Hintergrund mitlaufen.)
    Der Pfad dafür wäre: HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache
    (Für die Icons auf dem Desktop, weiter habe ich mich bisher nicht getraut :rolleyes: )
    Andere in diesem Forum wissen sicherlich noch ein wenig mehr darüber als ich.
    Allerdings ist so etwas immer ein wenig gefährlich, wenn man nicht weiß was man macht. (Durchführen auf eigene Gefahr.)
    Vorher immer Backups erstellen und immer ein klares Konzept vor Augen haben.

    Ansonsten Viel Spaß :D

    Ach ja vorher musst du natürlich noch die "regedit" über ausführen starten.

  • Text Verschlüsselung

    • name22
    • 29. Dezember 2009 um 21:13

    Du hast recht so geht es natürlich noch einfacher! :D

  • Text Verschlüsselung

    • name22
    • 28. Dezember 2009 um 19:44

    Erst mal Danke für die schnelle Antwort!

    Mann bin ich blöd, ich hab einfach die "2" vergessen. Und die Variablen werd ich mal ein bisschen intelligenter benennen.

    Ich hab jetzt mal alles von grundauf neu geschrieben und die Variablen intelligenter benannt.
    Das ganze besteht jetzt fast nurnoch aus Functions, aber hauptsache es funktioniert. D.h. es ist ohne die vorher festgelegten Daten nichts sinnvolles aus der "data.ini" herauszuholen.
    Kommentare wurden auch eingefügt um mir selbst nochmal die ganzen Functions zu erklären :D .

    Hier die Version 2.0:

    Spoiler anzeigen
    [autoit]

    #include <String.au3>

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

    ;Hier werden alle Variablen Global deklariert.
    Global $Benutzername
    Global $Check
    Global $Pw1
    Global $Text
    Global $PwEnc
    Global $PwDec
    Global $TextEnc
    Global $TextDec
    Global $Shout1 = "."
    Global $Shout2 = "."

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

    ;Hier das Hauptscript, das die Functions verwaltet.
    Check()
    If $Check = 1 Then
    EingabeUser()
    EingabeText()
    EingabePw()
    EncryptText()
    EncryptPw()
    WriteToIni()
    MsgBox (0,"Info","Vorgang erfolgreich abgeschlossen, hier ihr verschlüsselter Text:"&$TextEnc)
    $Check = 2
    IniWrite ("data.ini","Check","Check",$Check)
    Exit
    ElseIf $Check = 2 Then
    ReadFromIni()
    DecryptPw()
    AbfrageUser()
    AbfragePw()
    DecryptText()
    InputBox ("Info","Vorgang erfolgreich abgeschlossen, hier ihr entschlüsselter Text: ",$TextDec)
    Exit
    Else
    MsgBox (0,"Fatal Error","Bitte nicht an der 'data.ini' herumspielen oder sie sogar löschen")
    Exit
    EndIf

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

    Func EingabeUser() ;Fordert den Nutzer auf seinen gewünschten Benutzernamen einzugeben.
    $Benutzername = InputBox ("Benutzername","Bitte geben sie ihren Benutzernamen ein"&$Shout1&" (Wird unverschlüsselt gespeichert)")
    If $Benutzername = "" Then
    $Shout1 = "!!!"
    EingabeUser()
    EndIf
    EndFunc

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

    Func EingabeText() ;Fordert den Nutzer auf seinen zu verschlüsselnden Text einzugeben.
    $Text = InputBox ("Text","Bitte zu verschlüsselnden Text eingeben"&$Shout2)
    If $Text = "" Then
    $Shout2 = "!!!"
    EingabeText()
    EndIf
    EndFunc

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

    Func EingabePw() ;Fordert den Nutzer zur 2maligen Eingabe des Passworts auf und überprüft ob sie überein stimmen.
    $Pw1 = InputBox ("Passwort","Bitte gewünschtes Passwort eingeben","","*")
    $Pw2 = InputBox ("Passwort","Bitte gewünschtes Passwort erneut eingeben","","*")
    If Not ($Pw1 = $Pw2) Then
    MsgBox (0,"Fehler","Die Passwörter stimmen nicht überein")
    EingabePw()
    EndIf
    EndFunc

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

    Func AbfrageUser() ;Fragt den Nutzer nach seinem vorher festgelegten Benutzernamen und überprüft auf dessen Richtigkeit.
    $Benutzername2 = InputBox ("Abfrage","Bitte Benutzername eingeben:")
    If Not ($Benutzername = $Benutzername2) Then
    MsgBox (0,"Fehler","Der eingegebene Benutzername stimmt nicht")
    AbfrageUser()
    EndIf
    EndFunc

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

    Func AbfragePw() ;Fragt den Nutzer nach seinem vorher festgelegten Passwort und überprüft auf dessen Richtigkeit.
    $PwInput = InputBox ("Abfrage","Bitte Passwort eingeben:","","*")
    If Not ($PwInput = $PwDec) Then
    MsgBox (0,"Fehler","Das eingegebene Passwort stimmt nicht")
    AbfragePw()
    EndIf
    EndFunc

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

    Func WriteToIni() ;Schreibt in die "data.ini" Datei.
    IniWrite ("data.ini","Eingaben","Benutzername",$Benutzername)
    IniWrite ("data.ini","Eingaben","Text",$TextEnc)
    IniWrite ("data.ini","Eingaben","Passwort",$PwEnc)
    EndFunc

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

    Func ReadFromIni() ;Liest die Daten aus der "data.ini" aus.
    $TextEnc = IniRead ("data.ini","Eingaben","Text","Error")
    $PwEnc = IniRead ("data.ini","Eingaben","Passwort","Error")
    EndFunc

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

    Func EncryptText() ;Verschlüsselt den eingegebenen Text mit dem gewählten Passwort.
    $TextEnc = _StringEncrypt (1,$Text,$Pw1)
    EndFunc

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

    Func EncryptPw() ;Verschlüsselt das gewählte Passwort mit dem Benutzernamen.
    $PwEnc = _StringEncrypt (1,$Pw1,$Benutzername)
    EndFunc

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

    Func DecryptText() ;Entschlüsselt den aus der "data.ini" verschlüsselt ausgelesenen Text mit dem Entschlüsselten Passwort.
    $TextDec = _StringEncrypt (0,$TextEnc,$PwDec)
    EndFunc

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

    Func DecryptPw() ;Entschlüsselt das aus der "data.ini" verschlüsselt ausgelesene Passwort mit dem Benutzernamen.
    $PwDec = _StringEncrypt (0,$PwEnc,$Benutzername)
    EndFunc

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

    Func Check()
    $Check = IniRead ("data.ini","Check","Check","Error")
    $Benutzername = IniRead ("data.ini","Eingaben","Benutzername","Error")
    EndFunc

    [/autoit]

    Und in der "data.ini" steht am Anfang nur folgendes:
    [Check]
    Check=1

    Den Befehl _StringEncrypt habe ich zwar schon verstanden als ich ihn in der Hilfe gelesen habe, aber ich wusste bis jetzt noch nicht wie ich ihn am besten in ein Script einbaue.
    Als nächstes schreibe ich noch ein kleines "DataClear" Script, damit man auch wirklich nicht in der "data.ini" herumpfuschen muss.

  • Text Verschlüsselung

    • name22
    • 28. Dezember 2009 um 18:17

    Ich habe mir aus lerngründen ein Script erstellt welches den _StringEncrypt Befehl nutzt um:
    1.Einen benutzerdefinierten Text zu verschlüsseln
    2.Ein vorher gewähltes Passwort mit hilfe eines in der data.ini definierten Benutzernamens zu verschlüsseln

    Das Script ist ziemlich dämlich aufgebaut :D. Ich wollte zuerst testen ob es funktioniert und dann Ordnung hineinnbringen.
    Leider bekomme ich immer wieder den Error das die $inputpw2 Variable bei Linie 40 nicht definiert ist, obwohl dies eigentlich der Fall sein sollte.
    Ich bin mittlerweile so durcheinander, dass ich diesen vermutlich banalen Fehler in meinem Script nicht zu finden vermag. ?(

    Wie gesagt das Script habe ich nur geschrieben um zu verstehen wie man den _StringEncrypt Befehl benutzt.

    Das Script:

    Spoiler anzeigen
    [autoit]

    #include <String.au3>

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

    $inicheck = IniRead ("data.ini","Check","Check","Error")

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

    If $inicheck = "False" Then
    $i_Encript = 1
    $i_EncriptPw = 1
    $inputtext = InputBox ("Text", "Zu verschlüsselnden Text bitte hier eingeben:")
    Passwort()
    Sleep (1000)
    VerschluesselungPw()
    Sleep (1000)
    IniWriteFunc()
    ElseIf $inicheck = "True" Then
    $i_Encript = 0
    $i_EncriptPw = 0
    IniReadFunc()
    Sleep (1000)
    Abfrage()
    Sleep (1000)
    Anzeige()
    Else
    MsgBox (0,"Error","Bitte nicht an der data.ini herumspielen. (Oder sie sogar löschen)")
    Exit
    EndIf

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

    Func IniWriteFunc()
    IniWrite ("data.ini","Check","Check","True")
    IniWrite ("data.ini","Input","Text",$inputtext)
    IniWrite ("data.ini","Input","Passwort",$inputpw2)
    EndFunc

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

    Func IniReadFunc()
    $inputtext = IniRead ("data.ini","Input","Text","Error")
    $inputpw2 = IniRead ("data.ini","Input","Passwort","Error")
    $username = IniRead ("data.ini","Input","Username","Error")
    EndFunc

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

    Func Verschluesselung()
    _StringEncrypt ($i_Encript,$inputtext,$inputpw)
    EndFunc

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

    Func VerschluesselungPw()
    _StringEncrypt ($i_EncriptPw,$inputpw2,$username)
    EndFunc

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

    Func Passwort()
    $inputpw1 = InputBox ("Passwort", "Gewünschtes Passwort bitte hier eingeben:")
    $inputpw2 = InputBox ("Passwort", "Gewünschtes Passwort bitte hier nochmal eingeben:")
    If $inputpw1 = $inputpw2 Then

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

    Else
    MsgBox (0,"Fehler", "Die beiden Passwörter stimmen nicht überein!")
    Passwort()
    EndIf
    EndFunc

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

    Func Abfrage()
    $inputusername = InputBox ("Abfrage", "Bitte ihren Benutzernamen eingeben:")
    If $username = $inputusername Then

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

    Else
    MsgBox (0,"Zugriff verweigert", "Ihr Benutzername stimmt nicht")
    Abfrage()
    VerschluesselungPw()
    EndIf
    $inputpwcheck = InputBox ("Abfrage", "Bitte das Passwort eingeben:")
    If $inputpwcheck = $inputpw2 Then
    Verschluesselung()
    Else
    MsgBox (0,"Zugriff verweigert", "Ihr Passwort stimmt nicht mit dem ursprünglich gesetzten überein"
    Abfrage()
    EndIf
    EndFunc

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

    Func Anzeige()
    MsgBox (0,"Erfolgreich entschlüsselt","Das ist ihr entschlüsselter Text:"&$inputtext)
    Exit
    EndFunc

    [/autoit]

    data.ini ist natürlich mit dem nötigen Inhalt vorhanden.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™