die Größe des Fensters kannst Du mit WinGetPos() abfragen
Beiträge von Schnuffel
-
-
das riecht jetzt aber nicht mehr nach einer sinnvollen Anwendung,
sondern mehr danach jemanden zu ärgern. -
Hallo MatthiasG,
ZitatWas haltet ihr davon?
Ich fand die Idee in sofern gut, als dass man sich dann besser vor fremden Exes schützen kann...
wenn Du gerne Scripte / Programme von Dir fremden Leuten testen willst, dann laß diese doch in einer Sandbox laufen, oder installier Dir einen virtuellen PC.Ich kann Deinen Denkansatz ja durchaus verstehen.
Ich glaube aber, dass Du Dich da in eine Idee verrannt hast ...Sorry,
Verständnis Ende .... -
schau mal hier
da hat einer eine BlockInputEx UDF geschrieben, mit der man getrennt Maus oder/und Keyboard blocken kann.
-
Hallo pceumel,
ich denke mal, dass die Funktion einfach den letzten ASCII-Wert aus dem Tastaturpuffer ausliest.
-
Hallo Baron1977,
ZitatWinSetState("Nero-7.10.1.0_deu_trial.exe", @SW_DISABLE)
Run("Nero-7.10.1.0_deu_trial.exe")
WinWaitActive("Nero Ask Toolbar")
1. Du kannst kein Fenster mit WinSetState "bearbeiten", das noch gar nicht existiert
2. Das Fenster selbst hat sicherlich nicht den Namen: Nero-7.10.1.0_deu_trial.exe
3. Der Aufruf des Befehls WinSetState erfordert mehr Parameter.
Du musst nach dem Fensternamen auch noch beliebigen Text aus dem Fenster oder "" angeben.
WinSetState ( "title", "text", flag ) siehe Hilfe ...
4. Dein Aufruf müsste dann so aussehen:Spoiler anzeigen
[autoit]Run("Nero-7.10.1.0_deu_trial.exe")
[/autoit]
WinWaitActive("Nero Ask Toolbar")
WinSetState("Nero Ask Toolbar","", @SW_DISABLE)
5. @SW_DISABLE scheint nicht bei allen Fenstern zu funktionieren. In diesem Fall versuche es mit @SW_HIDE.
Du kannst ja die Installation komplett fertig machen und wenn es funktioniert zum Schluß das Fenster "verstecken"
Anbei ein Beispiel, wie das mit dem Verstecken funktioniert.
Wenn Du das Fenster verstecken willst, und nebenbei auch ein Anwender damit arbeiten soll, kommst Du nicht umhin, die Installation mit ControlSend zu machen.
Die Funktionsweise von ControlSend entnimm bitte der Hilfe.
Verwende zum Identifizieren der einzelnen Controls deines Installationsfensters das Tool AutoIt Windo Info. (ist im Programmordner von AutoIt)Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit]
#include <WindowsConstants.au3>
#include <GUIConstants.au3>
ShellExecute("notepad.exe")
WinWait("Unbenannt - Editor")
WinMove("Unbenannt - Editor","",0,0,400,200)
Send("Dieses Fenster verschwindet jetzt gleich")
Sleep(1000)
WinSetState("Unbenannt - Editor","",@SW_HIDE)
ControlSend("Unbenannt - Editor","","[CLASSNN:Edit1]",@CRLF&"Dieser Text wurde geschrieben, während ich unsichtbar war :-)")
WinMove("Unbenannt - Editor","", 0, 0, 550,200)
sleep(3000)
WinSetState("Unbenannt - Editor","",@SW_SHOW)FF ( Viel Vergnügen)
-
bitte schön:
Spoiler anzeigen
[autoit]#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]GUICreate('',300,250)
[/autoit] [autoit][/autoit] [autoit]
GUISetState()GUICtrlCreateLabel("",5,230,290,1)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetBkColor(-1,0xA0A0A0)
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
ExitEndSelect
[/autoit]
WEnd -
Hallo zusammen,
ich hatte mich gar nicht getraut meinen Vorschlag öffentlich zu machen, da ich es im ersten Moment für zu einfach hielt.
Um mal einen Überblick über Strategien und mathematische Möglichkeiten zu bekommen empfehle ich die Seite:
Sudoku-Solver
ich denke wir müssen es nicht übertreiben und alle dokumentierten 35 Strategien umsetzen...
Es soll ja ein Spaß bleiben.(Habe auch erst im Nachhinein festgestellt, dass Sudoku eigentlich schon eine mathematisch-wissenschaftliche Herausforderung ist)
Um die Regeln noch abzustecken:
gewertet wird das Erreichen der Lösung und die benötigte Zeit.
Dabei hoffe ich auf Unterstützung von peethebee
(hab mit Zeitmessung und so nicht so viel am Hut. Außerdem denke ich dass er unparteiisch messen wird.
Verwendung zur Bestimmung findet das Sudoku vom 26.04.09 von dieser Seite
Dieses wird auch erst an diesem Tag bekannt sein. Ich kenne es auch nichtAbgabeschluß ist der 25.04.09
Na dann
Happy Coding -
ja wenn das sowieso eine automatische Installation werden soll,
[autoit]
warum dann nicht gleich das Installationsfenster verschwinden lassen mit:WinSetState("title", "text", @SW_HIDE)
[/autoit]Bedienen kannst Du das Fenster doch trotzdem.
Machste noch eine schöne kleine Gui als MsgBox, die in der oberen rechten Ecke sitzt, oder nur im Tray, oder .....
die über den Installationsstatus informiert...oder auch nicht
-
Hallo juhuu32,
vielleicht kann ich noch zum Verständnis beitragen...
Es gibt keine Software, die erraten kann, wann oder wieso jetzt irgendein Fenster irgendeine Abfrage haben will.
Freu Dich, denn Du hast die "absolute" Kontrolle...Heißt aber auch, dass Du immer wissen solltest wann welche Software nach welcher Eingabe verlangt.
Dafür das Ablaufdiagramm.
Damit kannst Du Dir jede mögliche Situation (Betriebssystem, Software, ...) die bei Dir von Belang ist visualisieren und für die Abfragen eine dem entsprechende "Reaktion" einbauen.
Dafür sind wie Der_Doc schon sagte IF-Else Anweisungen ganz gut zu gebrauchen.Solltest Du direkte Programmierhilfen benötigen, dann ist es nicht nur gerne gesehen, sondern auch für alle sehr hilfreich, wenn Du dich erst einmal versuchst.
Solltest Du an einem Punkt "hängenbleiben" Stelle Deinen oder einen kurzen Beispielcode ins Forum und Du wirst in kürzester Zeit Hilfe und Lösung erhalten.Und jetzt VIEL SPASS
-
Hallo Tigger1975,
[autoit]If Not FileExists($Settings) Then
[/autoit]
MsgBox(16, $Progname, "Settings.ini kann nicht gefunden werden." & @CRLF & "Programm wird beendet.")
Exit (1)
EndIfkeine Settings.ini --> Hilfe schwierig
-
Unser BugFix hat sich mal die Mühe gemacht darüber ein Tutorial zu schreiben:
http://www.bug-fix.info/array_tut.htm -
@Padmak: hat sich überschnitten.
ist doch kein Problem, hauptsache dem Kunden wird geholfen ...
-
-
ein letzter schubbs ....
Spoiler anzeigen
[autoit]#include <WindowsConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <GuiConstants.au3>
GUICreate("Object Inspektor", 200, 200, -1, -1, -1, $WS_EX_TOOLWINDOW)
GUISetState()While True
[/autoit]
Sleep(10)
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
EndSelect
WEnd -
ich denke das liegt an der Rechtevergabe in Vista.
Dafür dürfte die UAC verantwortlich sein...
versuche mal an den Anfang folgendes zu setzenSpoiler anzeigen
[autoit]#requireadmin
[/autoit]
RegWrite("HKLM64\SOFTWARE\VAR", "VAR", "REG_SZ", $var) -
du kannst bei WinWait einen Timeout setzen.
Spoiler anzeigen
[autoit]If WinWait("Warning","",5) Then
[/autoit] [autoit][/autoit] [autoit]
send ("{ENTER 1}")
sleep (200)
EndIfwinwait ("EVEREST Ultimate")
[/autoit]
send ("{ALT 1}")
sleep (200)
send ("H") -
Du kannst die checkboxen mit send("{TAB}") & send("{SPACE}") ansprechen / ändern
-
So ala: "Schau dir mal in der Hilfe diese Funktion an: _DateDiff...", $sType vielleicht 'n'? und _Now vielleicht ...
-
was ich nicht verstehe:
wie funkey schon gesagt hat, wenn Du selbst das pic zuweist,
dann kennst Du doch schon den Namen der Datei.Da verstehe ich den Sinn nicht dahinter, Sorry