in welchem Betriebssystem soll das laufen?
Zitat aus dem originalen Forum:
ZitatAudio.au3 is designed for XP. I do not plan to offer support for Vista for
in welchem Betriebssystem soll das laufen?
Zitat aus dem originalen Forum:
ZitatAudio.au3 is designed for XP. I do not plan to offer support for Vista for
ich denke die Beantwortung der Frage ist relativ simple...
wenn Du innerhalb der "Bearbeitung" einer AdlibRegister-Funktion
deren Status änderst, dann kann das erst nach Laufzeitende der aufgerufenen Funktion geschehen.
Wenn in dieser Zeit dein Sleep(50) läuft, werden anscheinend die Befehle , die in dieser Zeitphase aufgerufen werden,
ignoriert.
- ein Sleep von (50) ist übertrieben und unnötig, da ein Sleep dein Script wirklich "pausiert". Ein Sleep von (10) ist Default und auch Standard...
- werden Funktionen i.d.R. nicht per AdlibRegister aufgerufen. (Diese Funktion hat eigentlich nur den Sinn, Error abzufangen ...)
wenn es grafisch auch so aussehen soll und keine Interaktion verlangt,
dann würde ich das mit HTML und einem _IECreateEmbedded umsetzen
Hallo kara2010,
so wie Dein ScreenShot aussieht, hat das mit "colspan" nichts zu tun.
Das sind ganz "normale" Labels und zu jedem Kontak gibt eine eigene ListView.
Innerhalb einer ListView geht das meines Wissens nicht.
auch von mir alles gute zum Geburtstag...
[Blockierte Grafik: http://tritonen.de/wp-content/uploads/2011/02/geburtstag-1.jpg]
schau Dir mal _WinAPI_SetWindowsHookEx an
wenn die Seiten und dein tun legal sind, warum stellst Du dann nicht den originalen Link ein?
Ein arbeiten in Theorie ist immer sehr schwierig.
Es gibt sicher einfache Möglichkeiten das umzusetzen.
keiner hat gesagt, dass dein Vorhaben leicht ist.
Wobei ein bischen StringSplit etc ... naja, das ist doch nicht so schwer.
Zu deiner Frage nach einer UDF...
ZitatIni-Funktionen für Dein Vorhaben müsstest Du aber erst noch scripten.
du kannst doch mit FileRead die verschlüsselte Datei in den Speicher einlesen.
Was Du mit dem Inhalt der Variable dann machst bleibt doch Dir überlassen ...
Decrypten, StringSplit ($var,'='), etc...
Ini-Funktionen für Dein Vorhaben müsstest Du aber erst noch scripten.
Beispiel:
#include <GuiConstantsEx.au3>
#include <String.au3>
FileDelete(@ScriptDir & '\test.ini')
filewrite(@ScriptDir & '\test.ini', _StringEncrypt(1,'[Testkey]'&@CRLF&'Wert1=blablabla'&@CRLF&'Wert2=blubblubblub', 'meinPasswort',1))
_inicrypt()
[/autoit] [autoit][/autoit] [autoit]Func _inicrypt()
$var = _StringEncrypt(0,FileRead(@ScriptDir & '\test.ini'), 'meinPasswort',1)
MsgBox(0, '', $var)
EndFunc
Hallo SionS,
für dein erstes Script nicht schlecht.
Sieht durchdacht aus und ist aufgeräumt.
Nur 3 Dinge.
1. Die Funktion NurBuchstaben() ist leer (ergo unnötig )
2. Wenn Du AdlibRegister verwendest, dann solltest Du immer sicherstellen, dass die aufgerufene Funktion auch fertig ist,
bevor sie ein zweites mal aufgerufen wird. Zu diesem Zweck setzte man üblicherweise ein AdlibUnRegister an den Anfang der Funktion und startet diese nach Ende der Funktion wieder.
3. Die Formulierung Deines Textes ist etwas unglücklich und enthält einen Schreibfehler --> 'enthällt' --> enthält
btw.: Ich denke dass Du bei dem Script auch ohne AdlibRegister ausgekommen wärst...
Beispiel:
#region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=PngTexturen22\SionSLoGo.ico
#AutoIt3Wrapper_Res_Comment=By SionS
#AutoIt3Wrapper_Res_Description=Kennwort Gennerator
#endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GUIConstants.au3>
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("SionS PasswortGen", 318, 154, 548, 312)
GUISetIcon("C:\Users\Tobias\Desktop\PngTexturen22\SionSLoGo.ico")
GUISetBkColor(0x000000)
$Label1 = GUICtrlCreateLabel("Drücken Sie auf GenStart.", 15, 15, 301, 23)
GUICtrlSetFont(-1, 12, 800, 0, "Arial")
GUICtrlSetColor(-1, 0xFFFFFF)
$Button1 = GUICtrlCreateButton("GenStart", 15, 105, 76, 31, 0)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Button2 = GUICtrlCreateButton("GenStop", 120, 105, 76, 31, 0)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Button3 = GUICtrlCreateButton("Copy and Save", 225, 105, 76, 31, 0)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
KeyGen()
Case $Button2
KeyGenStop()
Case $Button3
Copy()
Saven()
EndSwitch
[/autoit] [autoit][/autoit] [autoit]If BitAND(GUICtrlGetState($Button1), $GUI_DISABLE) Then CreateKey() ; anstelle von AdlibRegister. Wenn es zu schnell geht einfach in der Funktion einen Sleep(XXX) setzen.
WEnd
Func Saven()
$var = InputBox("PasswortGen", "Geben Sie hier ihren Verwendungszweck ihres generierten Passwortes ein, wenn sie keinen haben geben sie einfach nichts ein.")
$CurrentKey = GUICtrlRead($Label1)
FileWrite(@DesktopDir & "\PasswortGen.txt", " Ihr Passwort hat den Zweck für (" & $var & ") und lautet: " & $CurrentKey & " |")
MsgBox(64, "Info", "Eine Infodatei wurde auf ihrem Desktop erstellt die das Passwort und den von ihnen angegebenen Zweck enthällt.")
EndFunc ;==>Saven
Func Copy()
$CopyKey = GUICtrlRead($Label1)
ClipPut($CopyKey)
EndFunc ;==>Copy
Func KeyGenStop()
GUICtrlSetState($Button1, $GUI_ENABLE); gen start
GUICtrlSetState($Button2, $GUI_DISABLE); gen stop
EndFunc ;==>KeyGenStop
Func KeyGen()
GUICtrlSetState($Button1, $GUI_DISABLE); gen start
GUICtrlSetState($Button2, $GUI_ENABLE); gen stop
EndFunc ;==>KeyGen
;;;;;;;;;;;;;;;;;;;;;;;DANKE AN autoBert;;;;;;;;;;;;;;;;;;;;;;;;;;
[/autoit] [autoit][/autoit] [autoit]Func CreateKey()
$iAbruch = Random(5, 19, 1)
$sKey = ""
For $iSpalte = 0 To 19
$iZahlOderBuchstabe = Random(0, 3, 1)
If Not $iZahlOderBuchstabe Then
$sKey &= Random(0, 9, 1)
Else
$iKlein = Random(0, 3, 1)
If $iKlein Then
$sKey &= Chr(Random(97, 122, 1))
Else
$sKey &= Chr(Random(65, 90, 1))
EndIf
EndIf
If $iSpalte = $iAbruch Then ExitLoop
Next
GUICtrlSetData($Label1, $sKey)
EndFunc ;==>CreateKey
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ich hab es eben ausprobiert unter Win 7.
Da ich zuerst auch an der Hürde gescheitert bin mein Tip.
Wenn es bei Dir trotzdem nicht geht weiß ich auch nicht...
PS: ich habe in dem Beispiel einfach den Parameter @ScriptDir 6 '\App' gelöscht
in dem von Dir erwähnten Script wird erwartet, dass die 2 exe-Dateien in einem Unterordner des Scriptordners liegen der "App" heisst.
ich vermute dein Anti-Viren Programm erkennt die Datei als Virus
kann es an den Leerzeichen in dem Reg-Pfad von Ashampoo liegen?
mach mal ein Bild von dem Ashampoo-Ordner...
verwende Regedit, markiere den Schlüssel den Du abfragen willst und verwende im Menü den Befehl
Bearbeiten --> Schlüsselnamen kopieren um Schreibfehler auszuschließen.
ich bin mir jetzt nicht sicher, ob das hilft da Deine Infos das nicht hergeben.
Bei einem 64-bit System lautet der RegPfad RegRead('HKLM64\SOFTWARE\ .....
dann solltest Du Dir einen Such-String nehmen, der in deinem String auch mehrmals vorkommt.
bei <title> ist das eher unwahrscheinlich ...
álso beim groben drüber schauen:
[autoit]
ConsoleWrite("5:"&@error&@CRLF)
_FileCreate(@tempdir&"post.pf") ; da fehlt der '\'
ConsoleWrite("6:"&@error&@CRLF)
_FTPPutFile($Open, @tempdir&"post.pf", ""&$dirname&"/post.pf"); Leerzeichen in FTP-Ordnern , hmmm
wenn Du es schaffst aus deinem Code-Schnipsel ein Script zu machen
das zumindest im Ansatz lauffähig wäre,
würde sich sicher auch jemand die Mühe machen und es Korrektur lesen
bitte im ersten Post Deinen Thread auf "gelöst" setzen, wenn dem so ist.
Danke
... und freut mich wenn alles passt.
einfaches Beispiel:
#Include <File.au3>
[/autoit] [autoit][/autoit] [autoit]Global $diffneu
Global $diff = _getFiletoString(@DesktopDir)
While 1
_MySleep(12000)
$diffneu = _getFiletoString(@DesktopDir)
If $diff <> $diffneu Then
MsgBox(0, '', 'Unterschied gefunden',5)
EndIf
$diff = $diffneu
WEnd
Func _getFiletoString($path)
Local $FileList=_FileListToArray($path), $string = ''
If @Error=1 Or @error = 4 Then Return
For $i = 1 To Ubound($FileList) -1
$string &= $FileList[$i]
Next
Return $string
EndFunc
Func _MySleep($SL_Time)
Local $SL_Timer = TimerInit()
While TimerDiff($SL_Timer) < $SL_Time
Sleep(10)
WEnd
EndFunc