Die firefox.exe die von X.exe gestartet wird, meine ich doch, soll bei direktem aufrufen mit BlockInput() gespert sein.
Beiträge von button421
-
-
Was dich daran hindert, firefox ohne X.exe zu starten? Das Programm erstellt die neue firefox.exe in einem anderem Verzeichniss, so dass der Benutzer nicht weiß, wo AutoIT das hinkopiert hat, dass kann z.B. der Windows Ordner sein, wo keiner damit rechnet
Aber das Icon von Firefox muss bei X.exe doch dann auch das Firefox-Icon sein
Man könnte ja vlt. wenn jemand das versteckte firefoxverzeichniss findet, mi BlockInput Firefox sperren, so dass das nicht zugänglich ist. -
Das ist die HauptGUI und die NeueSerialGUI. Der ausführende Teil(also die Abfrage) ist der 3.Spoiler ganz oben!
Der Sinn:
Das Programm löscht die Datei von $Programmpfad.
Erstellt eine neue Datei die eben gelöscht wurde.
Setzt vor die neue Datei eine GUI, die fragt wie die Nummer von $Input2 im 2.GUI ist.
Daher muss $Input2 an die AbrageGUI gegeben werden - das versuche ich mit udf. -
[autoit]
[/autoit][autoit][/autoit][autoit]
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <Programmpfadübergabe.au3>
;===============================================================
;========================= SuperSerial =========================
;=============== Programme einfach verschlüsseln! ==============
;===============================================================
Global $Programmpfad
If @error Then
MsgBox(16,"Fehler!","Keine Datei ausgewählt!")
EndIf
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("SuperSerial", 295, 177, 192, 125)
$Label1 = GUICtrlCreateLabel("Bisher gespeicherte Verschlüsselungen:", 8, 16, 192, 17)
$List1 = GUICtrlCreateList("", 8, 48, 121, 123)
$Button1 = GUICtrlCreateButton("Hilfe/Info", 136, 144, 75, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Neu", 216, 144, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
;TRENNBALKEN----------------------------------------------------
#Region ### START Koda GUI section ### Form=
$Form2 = GUICreate("SuperSerial - Neue Serial", 341, 147, 192, 124)
$Label2 = GUICtrlCreateLabel("Name:", 8, 8, 35, 17)
$Input1 = GUICtrlCreateInput("", 48, 8, 289, 21)
$Label3 = GUICtrlCreateLabel("Serialnummer*:", 8, 32, 74, 17)
$Input2 = GUICtrlCreateInput("", 88, 32, 249, 21)
$Label4 = GUICtrlCreateLabel("Programmpfad:", 8, 56, 75, 17)
$Input3 = GUICtrlCreateInput("", 88, 56, 225, 21)
GUICtrlSetState(-1, $GUI_DISABLE)
$Button3 = GUICtrlCreateButton("...", 312, 56, 27, 25, $WS_GROUP)
$Checkbox1 = GUICtrlCreateCheckbox("Programm nach beendigung starten", 8, 80, 193, 17)
$Label5 = GUICtrlCreateLabel("*Beliebige Kombination zwischen 0-10 und A-Z, ohne Sonderzeichen", 0, 96, 328, 17)
$OK = GUICtrlCreateButton("OK", 264, 120, 75, 25, $WS_GROUP)
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###While 1
[/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
MsgBox(64,"Hilfe/Info:","Auf ""Neu"" klicken, um eine neue Serialverschlüsselung zu erstellen!" & @CRLF & "Created by <button421>onautoit.de<\button421>")
Case $Button2
GUISetState(@SW_SHOW, $Form2)
Case $Button3
;?
EndSwitch
WEnd -
Hmmm... in der UDF stehts jetzt so:
[autoit]
[/autoit]
;#FUNCTION===================
Global $Programmpfad
$Programmpfad = FileOpenDialog("Programmpfad!",@DesktopDir,"Ausführbare Dateien (*.exe)", 15)
Und dann startet der FileOpenDialog auch gleich. Und das lesen von dem Inhalt der Variable vom HauptProgramm geht auch nicht
Ich kann mit UDF´s einfach nicht umgehen -
Ich habe noch ne InputBox drangehängt, dann kann man einfach definieren was da stehen soll
-
da könnte ich doch auch ne eigene udf machen oder?
-
Das Programm soll einfach eine Datei löschen, dann wieder erstellen, aber mit Serialabfrage.
edit: Aber eine externe exe kann doch nicht auf $Input2 zugreifen. Die muss dann ja in mein Script rein.
Oder vlt. mit IniWrite( ... )? -
So?
[autoit]
[/autoit]
Run($ScriptPath)
FileDelete(@ScriptFullPath)
ExitFührt er denn dann bei Run($ScriptPath) GUI3 aus?
-
Also man soll im 2.GUI Name, Serial und Programmpfad eingeben. Sobald man auf OK klickt soll er die Quelldatei in $Pfad gelöscht werden(vlt. FileDelete($Pfad)) und dann wieder erstellt werden, mit dem gleichen Namen und dem gleichen Icon, nur dass voher die 3.GUI kommt und nach der Nummer fragt, die wir im 2.GUI eingegeben haben.
Jetzt verstanden? Hab ganz oben noch mal editiert

-
man!!!!! wozu ist dieses FORUM DA?
-
IN GUI3 muss doch RUN stehen!
[autoit]
Die Abfrage wäre doch dann:
[/autoit]
If GUICtrlRead($Serial) = $Input2 Then
Run($Pfad)
EndIf -
Hallo Leute!
Ich habe die Idee bekommen, dass man ein Programm schreiben kann, wo man folgendes Machen kann:
Man soll Serialverschlüsselungen für installierte Programme machen können.Wenn man auf "Neu" klickt, kommt ein zweites GUI <-- Das geht noch.
Aber wenn man im 2. GUI auf OK Klickt, soll das Programm automatisch n GUI schreiben, wo man die Serial von $Input2 eingeben muss. Dann soll er mit FileSave oder so, die Datei mit der GUI vorab nochmal schreiben, mit Send("!J") ersetzen bestätigen und zu guter letzt das Icon von dem alten Programm(z.B, das Firefoxicon) statt das Autoiticon setzen.Meine GUI´s:
Hauptform:
Spoiler anzeigen
[autoit]
[/autoit]
Global $Programmpfad
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("SuperSerial", 295, 177, 192, 125)
$Label1 = GUICtrlCreateLabel("Bisher gespeicherte Verschlüsselungen:", 8, 16, 192, 17)
$List1 = GUICtrlCreateList("", 8, 48, 121, 123)
$Button1 = GUICtrlCreateButton("Hilfe/Info", 136, 144, 75, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Neu", 216, 144, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###Neue Serial Form:
Spoiler anzeigen
[autoit]
[/autoit]
#Region ### START Koda GUI section ### Form=
$Form2 = GUICreate("SuperSerial - Neue Serial", 341, 147, 192, 124)
$Label2 = GUICtrlCreateLabel("Name:", 8, 8, 35, 17)
$Input1 = GUICtrlCreateInput("", 48, 8, 289, 21)
$Label3 = GUICtrlCreateLabel("Serialnummer*:", 8, 32, 74, 17)
$Input2 = GUICtrlCreateInput("", 88, 32, 249, 21)
$Label4 = GUICtrlCreateLabel("Programmpfad:", 8, 56, 75, 17)
$Input3 = GUICtrlCreateInput("", 88, 56, 225, 21)
GUICtrlSetState(-1, $GUI_DISABLE)
$Button3 = GUICtrlCreateButton("...", 312, 56, 27, 25, $WS_GROUP)
$Checkbox1 = GUICtrlCreateCheckbox("Programm nach beendigung starten", 8, 80, 193, 17)
$Label5 = GUICtrlCreateLabel("*Beliebige Kombination zwischen 0-10 und A-Z, ohne Sonderzeichen", 0, 96, 328, 17)
$OK = GUICtrlCreateButton("OK", 264, 120, 75, 25, $WS_GROUP)
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###Abfrage, die als neue Datei gespeichert werden soll:
Spoiler anzeigen
[autoit]
[/autoit]
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Serial eingeben:", 301, 68, 192, 124)
$Serialhelp = GUICtrlCreateLabel("Serialnummer:", 8, 16, 70, 17)
$Serial = GUICtrlCreateInput("", 96, 16, 177, 21)
$OKSerial = GUICtrlCreateButton("OK", 224, 40, 75, 25, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
;Case-Bereich:
Case $OKSerial
If GUICtrlRead($Serial) = $Input2 Then
Run($Pfad)
EndIfFragen:
Wie kann ich es machen, dass er die 3.GUI in eine exe speichert, wo danach dann ja Run($Pfad) kommt?
Wie geht es, das Icon von z.B. Firefox(oder die angegebene exe datei) in die neue exe zu setzen?ich hoffe das ist nicht zuviel
//EDIT:
Hab oben im 3. Spoiler neuen Code eingefügt
MfG button421
-
Wieso kannst du das nicht mehr auslesen? Da gibt es doch das:
[autoit]
[/autoit][autoit][/autoit][autoit]
$ListView = GUICtrlCreateListView("|Itemcolumn ", ;-,-,-,-)
GUICtrlCreateListViewItem("|Item", $ListView) ;Items werden definiert;Dann vielleicht ne If Abfrage:
[/autoit]
If GUICtrlRead($ListView) = "Item" Then
MsgBox(0,"","")
EndIf -
hab ich dir geholfen?
-
Bei mir läuft alles wie es laufen soll
-
Ich würde das eher mit FF (Firefox-Automatisierung) machen.
Da gibts dann _FFClick...
Das könnte dich dafür intressieren:
FF.au3 Beta (Programm und Dokumentation)Da brauchst du dann auch noch MozRepl, und #include <FF.au3>.
Musst einfach nur die FF.au3 in das Include-Verzeichniss von SciTE reindownloaden. Bei mir so:1 -> Oben den Link nehmen, dann auf "http://wiki.github.com/bard/mozrepl" klicken.
2 -> MozRepl downloaden und Firefox neu starten.
3 -> Unter "Extras" Mozrepl -> Start und Activate on startup anklicken.
4 -> FF.au3 downloaden und in "C:\\Programme\AutoIt3\Scite\Include\"* kopieren.
5 -> Befehle wie _FFClick( ... ) benutzen
*Der Pfad kann von eurem tatsächlichen Pfad abweichen!
Konnte hoffentlich helfen!
MfG button421 -
schönes Wochenende! Guck jetzt nen Film!
MfG button421
-
Bauteile von Conrad! War ne Idee von mir, weil ich manchmal Bauteile aus dem Internet raussuche, und dann meistens irgendwie wieder verwerfe.
-
EDIT //: Ich bin in keinem anderen Forum, aber in einem Alter von 10 Jahren muss man halt um 20:00Uhr ins Bett
