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 .
Beiträge von name22
-
-
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 ) erklären kann.Ach ja: Win7 32bit kann maximal 4Gb RAM verwalten
-
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]
[/autoit] [autoit][/autoit] [autoit]
#include <File.au3>
#include <GUIConstants.au3>#Region ### START Koda GUI section ### Form=Pfad zur Fenster.kxf
[/autoit] [autoit][/autoit] [autoit]
$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 ###$MsgBox = ""
[/autoit] [autoit][/autoit] [autoit]
$CheckVar = ""
$Count = 1$IniRead = IniReadSection ("data.ini","Combobox")
[/autoit] [autoit][/autoit] [autoit]
$Lines = _FileCountLines ("data.ini")If IsArray ($IniRead) = True Then
[/autoit] [autoit][/autoit] [autoit]
For $i = 1 To $Lines -1
$ComboData = $IniRead[$Count][0]
GUICtrlSetData ($Auswahl,$ComboData&"|")
$Count = $Count +1
Next
EndIfDo
[/autoit]
$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
ExitEdit: Hab vergessen das sich der Verzeichnispfad der Fenster.kxf ändert Einfach anstatt "Pfad zur Fenster.kxf" einfügen (inkl. Dateinamen)
Und hier die .kxf:
-
@Micha he
Die Variable kann in einer Funktion nicht Global deklariert werden, denke ich
Oder hab ich da was falsch verstanden -
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 )
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ß
Ach ja vorher musst du natürlich noch die "regedit" über ausführen starten. -
Du hast recht so geht es natürlich noch einfacher!
-
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 .Hier die Version 2.0:
Spoiler anzeigen
[autoit]#include <String.au3>
[/autoit] [autoit][/autoit] [autoit];Hier werden alle Variablen Global deklariert.
[/autoit] [autoit][/autoit] [autoit]
Global $Benutzername
Global $Check
Global $Pw1
Global $Text
Global $PwEnc
Global $PwDec
Global $TextEnc
Global $TextDec
Global $Shout1 = "."
Global $Shout2 = ".";Hier das Hauptscript, das die Functions verwaltet.
[/autoit] [autoit][/autoit] [autoit]
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
EndIfFunc EingabeUser() ;Fordert den Nutzer auf seinen gewünschten Benutzernamen einzugeben.
[/autoit] [autoit][/autoit] [autoit]
$Benutzername = InputBox ("Benutzername","Bitte geben sie ihren Benutzernamen ein"&$Shout1&" (Wird unverschlüsselt gespeichert)")
If $Benutzername = "" Then
$Shout1 = "!!!"
EingabeUser()
EndIf
EndFuncFunc EingabeText() ;Fordert den Nutzer auf seinen zu verschlüsselnden Text einzugeben.
[/autoit] [autoit][/autoit] [autoit]
$Text = InputBox ("Text","Bitte zu verschlüsselnden Text eingeben"&$Shout2)
If $Text = "" Then
$Shout2 = "!!!"
EingabeText()
EndIf
EndFuncFunc EingabePw() ;Fordert den Nutzer zur 2maligen Eingabe des Passworts auf und überprüft ob sie überein stimmen.
[/autoit] [autoit][/autoit] [autoit]
$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
EndFuncFunc AbfrageUser() ;Fragt den Nutzer nach seinem vorher festgelegten Benutzernamen und überprüft auf dessen Richtigkeit.
[/autoit] [autoit][/autoit] [autoit]
$Benutzername2 = InputBox ("Abfrage","Bitte Benutzername eingeben:")
If Not ($Benutzername = $Benutzername2) Then
MsgBox (0,"Fehler","Der eingegebene Benutzername stimmt nicht")
AbfrageUser()
EndIf
EndFuncFunc AbfragePw() ;Fragt den Nutzer nach seinem vorher festgelegten Passwort und überprüft auf dessen Richtigkeit.
[/autoit] [autoit][/autoit] [autoit]
$PwInput = InputBox ("Abfrage","Bitte Passwort eingeben:","","*")
If Not ($PwInput = $PwDec) Then
MsgBox (0,"Fehler","Das eingegebene Passwort stimmt nicht")
AbfragePw()
EndIf
EndFuncFunc WriteToIni() ;Schreibt in die "data.ini" Datei.
[/autoit] [autoit][/autoit] [autoit]
IniWrite ("data.ini","Eingaben","Benutzername",$Benutzername)
IniWrite ("data.ini","Eingaben","Text",$TextEnc)
IniWrite ("data.ini","Eingaben","Passwort",$PwEnc)
EndFuncFunc ReadFromIni() ;Liest die Daten aus der "data.ini" aus.
[/autoit] [autoit][/autoit] [autoit]
$TextEnc = IniRead ("data.ini","Eingaben","Text","Error")
$PwEnc = IniRead ("data.ini","Eingaben","Passwort","Error")
EndFuncFunc EncryptText() ;Verschlüsselt den eingegebenen Text mit dem gewählten Passwort.
[/autoit] [autoit][/autoit] [autoit]
$TextEnc = _StringEncrypt (1,$Text,$Pw1)
EndFuncFunc EncryptPw() ;Verschlüsselt das gewählte Passwort mit dem Benutzernamen.
[/autoit] [autoit][/autoit] [autoit]
$PwEnc = _StringEncrypt (1,$Pw1,$Benutzername)
EndFuncFunc DecryptText() ;Entschlüsselt den aus der "data.ini" verschlüsselt ausgelesenen Text mit dem Entschlüsselten Passwort.
[/autoit] [autoit][/autoit] [autoit]
$TextDec = _StringEncrypt (0,$TextEnc,$PwDec)
EndFuncFunc DecryptPw() ;Entschlüsselt das aus der "data.ini" verschlüsselt ausgelesene Passwort mit dem Benutzernamen.
[/autoit] [autoit][/autoit] [autoit]
$PwDec = _StringEncrypt (0,$PwEnc,$Benutzername)
EndFuncFunc Check()
[/autoit]
$Check = IniRead ("data.ini","Check","Check","Error")
$Benutzername = IniRead ("data.ini","Eingaben","Benutzername","Error")
EndFuncUnd in der "data.ini" steht am Anfang nur folgendes:
[Check]
Check=1Den 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. -
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üsselnDas 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
[/autoit] [autoit][/autoit] [autoit]
$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
EndIfFunc IniWriteFunc()
[/autoit] [autoit][/autoit] [autoit]
IniWrite ("data.ini","Check","Check","True")
IniWrite ("data.ini","Input","Text",$inputtext)
IniWrite ("data.ini","Input","Passwort",$inputpw2)
EndFuncFunc IniReadFunc()
[/autoit] [autoit][/autoit] [autoit]
$inputtext = IniRead ("data.ini","Input","Text","Error")
$inputpw2 = IniRead ("data.ini","Input","Passwort","Error")
$username = IniRead ("data.ini","Input","Username","Error")
EndFuncFunc Verschluesselung()
[/autoit] [autoit][/autoit] [autoit]
_StringEncrypt ($i_Encript,$inputtext,$inputpw)
EndFuncFunc VerschluesselungPw()
[/autoit] [autoit][/autoit] [autoit]
_StringEncrypt ($i_EncriptPw,$inputpw2,$username)
EndFuncFunc Passwort()
[/autoit] [autoit][/autoit] [autoit]
$inputpw1 = InputBox ("Passwort", "Gewünschtes Passwort bitte hier eingeben:")
$inputpw2 = InputBox ("Passwort", "Gewünschtes Passwort bitte hier nochmal eingeben:")
If $inputpw1 = $inputpw2 ThenElse
[/autoit] [autoit][/autoit] [autoit]
MsgBox (0,"Fehler", "Die beiden Passwörter stimmen nicht überein!")
Passwort()
EndIf
EndFuncFunc Abfrage()
[/autoit] [autoit][/autoit] [autoit]
$inputusername = InputBox ("Abfrage", "Bitte ihren Benutzernamen eingeben:")
If $username = $inputusername ThenElse
[/autoit] [autoit][/autoit] [autoit]
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
EndFuncFunc Anzeige()
[/autoit]
MsgBox (0,"Erfolgreich entschlüsselt","Das ist ihr entschlüsselter Text:"&$inputtext)
Exit
EndFuncdata.ini ist natürlich mit dem nötigen Inhalt vorhanden.