Beiträge von RechterWinkel
-
-
Da Singleton nicht angibt wieviele Prozesse es sind, habe ich vor einiger ZEit mal folgendes in einem Skript eingebaut:
[autoit]$_Singleton = ProcessList(@ScriptName)
[/autoit]
If $_Singleton[0][0] > 3 Then MsgBox(48, $vTitle, "Using more than 3 .... may cause performance leaks and system instability", 10)Evtl kann man das ja so umbauen:
[autoit]$_Singleton = ProcessList(@ScriptName)
[/autoit]
If $_Singleton[0][0] > 1 Then
For $i = 1 to $_Singleton[0][0]
If $_Singleton[$i][1] <> @AutoItPID Then ProcessClose($_SINGLETON[$i][1])
Next
EndIf
(ungetestet) -
Ich würde einen x-beliebigen Wert (MAC, HWID or whatever) und diesen mit dem "Master Passwort" verschlüsseln und in die ini schreibt
Bei erneuter Eingabe des Passworts wird dann versucht mit diesem den Wirrwarr zu entschlüsseln, bei Übereinstimmung dann das Programm uswHat den Vorteil, dass das Passwort in keinster Weise gespeichert wird und es ist imho einfach und übersichtlicher
so far
-
Ich hoffe ich hab dein Anliegen richtig verstanden...
[autoit]MsgBox(64,"_AskForWin()",_AskForWin("Titel"))
[/autoit]
Func _AskForWin($askTitle = "_AskForWin()")
$askForm = GUICreate($askTitle, 204, 218, 342, 243)
$askList = GUICtrlCreateListView("Title |Handle", 8, 8, 187, 175) ; Spaces für die Spaltenbreite
$askButton = GUICtrlCreateButton("Choose", 8, 192, 187, 17)
$askWin = WinList()
For $i = 1 to $askWin[0][0]
If $askWin[$i][0] <> "" AND BitAND(WinGetState($askWin[$i][1]),2) Then
GUICtrlCreateListViewItem($askWin[$i][0] & "|" & $askWin[$i][1], $askList)
EndIf
Next
GUISetState()
While 1
$askMsg = GUIGetMsg()
Switch $askMsg
Case -3 ;$GUI_EVENT_CLOSE
GUIDelete($askForm)
SetError(1)
Return False
Case $askButton
If not GUICtrlRead($askList) Then
MsgBox(16,Default,"Kein Eintrag ausgewählt")
Else
$askSelected = StringSplit(GUICtrlRead(GUICtrlRead($askList),2),"|")
GUIDelete($askForm)
Return HWnd($askSelected[2])
EndIf
EndSwitch
WEnd
EndFunc -
[autoit]
Opt("WinTitleMatchMode",2)
[/autoit]
$hFirefox = WinGetHandle("Mozilla Firefox")
; bla...
Das ist genau das was du suchst, du musst nur n bisschen mitdenken...MfG
-
Wenn du Variablen in der Controlerstellung hast - Das wird nicht funktionieren
Ich hab meine GUI in einer For-Schleife erstellen lassen und nun ist keine Nachbearbeitung mit Koda möglich.. -
Beim Starten wird ein Handle mit übergeben, einfach auf dieses Prüfen
-
Das liegt dennoch nicht am Ping, eventuell bekommt das Script von "irgendwo" eben doch eine Antwort, und gerade da es eine VM ist wäre ich mir nie sicher ob die tatsächlich vom Netz ist..
Teste es doch mal mit einer fiktiven IP, ob du da auch noch "True" zurück bekommst, falls ja liegt es an irgendwelchen Zugriffsrechten; falls nicht ist die VM wohl doch noch mit 192.168.1.1 verbundenmfg
-
Das liegt nicht an Ping.
[autoit]$IPCon = "192.168.1.1"
[/autoit]
$ping = Ping($IPCon, 400)
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : Ping($IPCon, 400) = ' & Ping($IPCon, 400) & @crlf & '>Error code: ' & @error & @crlf) ;### Debug ConsoleGibt bei mir folgendes aus:
Zitat@@ Debug(15) : Ping($IPCon, 400) = 0
>Error code: 4
Also alles so wie es sein soll.
Verstehe dein Problem grad nicht -
Natürlich nicht...
[autoit]MsgBox($IPCon, ":" & $IPCon &":")
[/autoit]
Ist kein gültiger Befehl..
Der Flag-Parameter fehlt -
[autoit]
WinWait("Form des 2. Scriptes")
[/autoit]
Exit -
[autoit]
$IPCon = "192.168.1.1"
[/autoit]
$ping = Ping($IPCon, 400)
if $ping <= 0 OR @error Then
MsgBox($IPCon, ":" & $IPCon &":")
MsgBox(0, "", "false")
Else
MsgBox($IPCon, ":" & $IPCon &":")
MsgBox(0, "", "true")
EndIf
So geht's -
Gibts in der FF.au3 nicht so ne Art _FFFormSubmit?
-
Das Problem liegt darin dass in der .ini "ab Werk" der 327. Jahrestag eingetragen ist was bedeutet dass das Programm in wenigen Tagen nicht mehr nutzbar ist.
Ein generieren in die .ini ist zwecklos, da diese dann zum verlängern lediglich gelöscht werden müsste (befindet sich zwecks anderer Einstellungen im selben Verzeichnis)Der Gedanke mit der Registry kam mir auch schon, allerdings lese ich oft Dinge hier und in anderen Foren die dagegen sprechen.
Zudem weiß ich nicht wo genau ich das in der Registry speichern sollte/könnte, da ich mich damit bisher nicht weiter befasst habe.Dekompilieren usw ist mir klar, damit rechne ich auch fest, allerdings wird nur das Datum ver- und entschlüsselt, damit niemand auf die Idee kommt einfach das Datum in der .ini auf 328 oder whatever zu setzen. Zum ver- und entschlüsseln benutze ich für die Testversion ein festgelegtes Passwort, für eine Lizenz eine Kombination aus Usernamen und einem Password um eine Weitergabe des Lizenzkeys zu verhindern.
Ich möchte auch keinesfalls mit dem Programm eine Internetverbindung aufbauen, da es ohnehin schon 2 von 43 Treffer bei Virustotalt hat -
Hallo,
Ich möchte ein in AutoIt geschriebenes Programm verkaufen und dazu eine 5-Tage-Testversion anbieten.
[autoit]
Bisher habe ich es so gemacht:Func License()
[/autoit]
If IniRead("Settings.ini", "Other", "License", "") = "True" Then
$vCryptKey = _Crypt_DeriveKey(@UserName & "...", $CALG_RC4)
If Crypt(IniRead("Settings.ini", "Other", "Key", ""), True) = "..." Then
MsgBox(64, Default, "Lizenzcheck erfolgreich!")
Else
MsgBox(16, Default, "Fehlerhafte Lizenz!")
Exit
EndIf
Else
$vCryptKey = _Crypt_DeriveKey("...", $CALG_RC4)
If Execute(Crypt(IniRead("Settings.ini", "Other", "Key", ""), True) + 5 - @YDAY) > 0 Then
MsgBox(64, Default, "Lizenzcheck erfolgreich!")
Else
MsgBox(16, Default, "Lizenz abgelaufen! (Trial)")
Exit
EndIf
EndIf
_Crypt_DestroyKey($vCryptKey)
EndFunc ;==>License
Func Crypt($vData, $bDecrypt = False)
If $bDecrypt Then
Return BinaryToString(_Crypt_DecryptData($vData, $vCryptKey, $CALG_USERKEY))
Else
Return _Crypt_EncryptData("" & $vData, $vCryptKey, $CALG_USERKEY)
EndIf
EndFunc ;==>CryptLeider ist dadurch die TestVersion nur 5 Tage ab dem Tag gültig wo ich sie anbiete, ich möchte sie jedoch 5 Tage nach Download gültig haben.
Hat jemand eine Idee?
mfg
-
Super. Danke für deine Hilfe.
Edit: Vielen dank für den Tipp.
-
Das Script an sich ist noch nicht im Ansatz fertig, ich habe erstmal nur die GUI.
Source
[autoit]#include <ButtonConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$ColorWriter = GUICreate("Color Writer", 361, 281, 192, 124)
$Vordefiniert = GUICtrlCreateGroup("Vordefiniert", 8, 8, 345, 73)
$Grau = GUICtrlCreateRadio("Grau", 24, 24, 49, 17)
$Blau = GUICtrlCreateRadio("Blau", 24, 40, 49, 17)
$Cyan = GUICtrlCreateRadio("Cyan", 24, 56, 49, 17)
$Dunkelgrau = GUICtrlCreateRadio("Dunkelgrau", 80, 24, 81, 17)
$Dunkelgruen = GUICtrlCreateRadio("Dunkelgruen", 80, 40, 81, 17)
$Hellgruen = GUICtrlCreateRadio("Hellgruen", 80, 56, 81, 17)
$Schwarz = GUICtrlCreateRadio("Schwarz", 168, 24, 65, 17)
$Hellgrau = GUICtrlCreateRadio("Hellgrau", 168, 40, 65, 17)
$Magenta = GUICtrlCreateRadio("Magenta", 168, 56, 65, 17)
$Braun = GUICtrlCreateRadio("Braun", 240, 24, 57, 17)
$Orange = GUICtrlCreateRadio("Orange", 240, 40, 57, 17)
$Pink = GUICtrlCreateRadio("Pink", 240, 56, 57, 17)
$Rot = GUICtrlCreateRadio("Rot", 296, 24, 49, 17)
$Weiss = GUICtrlCreateRadio("Weiss", 296, 40, 49, 17)
$Gelb = GUICtrlCreateRadio("Gelb", 296, 56, 49, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$EigeneFarben = GUICtrlCreateGroup("Eigene Farben", 8, 88, 345, 73)
$RGB = GUICtrlCreateRadio("RGB", 16, 120, 49, 17)
$R = GUICtrlCreateInput("R", 64, 120, 73, 21)
$G = GUICtrlCreateInput("G", 160, 120, 73, 21)
$B = GUICtrlCreateInput("B", 256, 120, 73, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Weiteres = GUICtrlCreateGroup("Weiteres", 8, 168, 345, 81)
$Nickverlaengerung = GUICtrlCreateCheckbox("Nickverlaengerung", 16, 200, 113, 17)
$NV = GUICtrlCreateInput("NV", 128, 200, 217, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$TheAnswer42 = GUICtrlCreateLabel("© The Answer 42", 128, 256, 100, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###While 1
[/autoit] [autoit][/autoit] [autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ExitEndSwitch
[/autoit]
WEndEdit:
>Raupi: Für die Optik.
-
Ein Keylogger würde aber nicht ein bestimmtes Wort loggen ? xD
Welchen Sinn hätte das ?
-
Hallo,
Ich habe ein kleines Problemchen.Ich habe eine GUI mit unterschiedlichen Radios in verschiedenen Groups gemacht.
Nun habe ich das Problem, dass wenn ich aus Gruppe Z einen Button anklicke, gleichzeitig einer in Gruppe Y "checked" ist.Wie mache ich also, dass in der gesamten GUI nur ein einzige RadioButten checked sein kann ?
MfG
-
aber wenn ich das ganze umsetzen will sprich im spiel
@ThreadErsteller: Bots sind hier im forum nicht erlaubt@dieAnderen: Warum gebt ihr Hilfe für einen Bot, welcher in den Forenregeln verboten ist ?