Doch! Aber nur, wenn Du alle GUI-Elemente einzeln ein-/ausblendest, wie FireFlyer das schon geschrieben hat.
Beiträge von Oscar
-
-
-
Ich habe Dir mal ein Beispiel erstellt:
[autoit]
[/autoit][autoit][/autoit][autoit]
#cs
Das Archiv test.zip muss die ganzen Dateien enthalten, die später im 'Ausgabeverzeichnis' landen sollen
7z.exe und 7z.dll müssen sich beim kompilieren im gleichen Verzeichnis wie das Script befinden
#ce
FileInstall('test.zip', @ScriptDir & '\test.zip')
FileInstall('7z.exe', @ScriptDir & '\7z.exe')
FileInstall('7z.dll', @ScriptDir & '\7z.dll')$unzip = '7z x -aoa -oAusgabeverzeichnis\ test.zip'
[/autoit][autoit][/autoit][autoit]
RunWait(@ComSpec & ' /c ' & $unzip, @ScriptDir & '\', @SW_HIDE) ; Aufruf von 7z zum entpacken
#cs
Nach dem entpacken liegen alle Dateien aus dem ZIP-Archiv (test.zip) im Verzeichnis: Ausgabeverzeichnis welches sich im Scriptverzeichnis befindet
#ceFileDelete(@ScriptDir & '\test.zip')
[/autoit]
FileDelete(@ScriptDir & '\7z.exe')
FileDelete(@ScriptDir & '\7z.dll')Im Anhang findest Du das komplette Beispiel (mit dem benötigten 7z und einem Beispiel-ZIP).
-
Entweder alle Dateien einzeln mit FileInstall() integrieren oder vorher ein ZIP-Archiv draus machen und dieses dann mit FileInstall() integrieren (evtl. dazu noch 7z). Das Archiv kannst Du dann vom Script aus entpacken.
-
-
Dann erstell zwei GUI-Fenster und lass jeweils nur eines anzeigen. Mit GUISetState(@SW_SHOW, $GUI1) das eine Fenster anzeigen und mit GUISetState(@SW_HIDE, $GUI2) das andere verstecken bzw. dann umgekehrt.
-
#RequireAdmin reicht nicht. Lieber die Inidatei ins Anwendungsverzeichnis des Users schreiben. Das Macro @AppDataDir verweist darauf.
-
Es gibt wieder eine neue Version (v1.6).
Ich habe die Anzeige komplett überarbeitet. Alle Zahlen und Buchstaben sind nun Icons (die Zahlen in 2 Größen).
Außerdem gibt es nun eine Wochentagsanzeige (MO, DI, MI, DO, FR, SA, SO)
Einen Bug habe ich entdeckt und entfernt. Es konnte vorkommen, dass das Programm beim aktualisieren der Uhrzeit über das Internet in einer Endlosschleife hängenblieb. Das wird nun durch einen zusätzlichen Timer verhindert.
Und ich habe endlich alle Funktionen kommentiert.Wer jetzt noch Kritik oder Verbesserungsvorschläge hat, bitte melden...
-
Neue Version 1.5 ist fertig. Alles weitere siehe: Post #1
-
Ich sehe keinen Sinn darin die Constants-Includes wegzulassen und stattdessen alle Konstanten von Hand einzufügen.
Ein flackern ist bei mir nicht auszumachen, versuch doch mal den Sleepwert etwas runter zu setzen (z.B. auf 900).
Das mit dem Wochentag ist keine schlechte Idee, aber etwas aufwendiger, weil ich die GIFs dazu erst erstellen muss. (Kommt vielleicht später)
Die GUI-Größe ist ganz stark von den Digitalzahlen abhängig und somit nicht änderbar. Jedenfalls nicht so einfach.
Momentan bin ich gerade dabei zwei unabhängige Weckzeiten zu integrieren.
-
Achso!
Wobei man dieses "Sicherheitskonzept" schon in Frage stellen muss. Denn wenn "jedes" Programm den Benutzer um Erlaubnis fragt, wird er irgendwann immer alles einfach bestätigen und diese scheinbare Sicherheit ist zum Teufel. Da kann man auch gleich als Admin arbeiten. -
Das mit dem includieren der Dateien ist ziemlich aufwändig. Müßte man ja alle Dateien einzeln eintragen. Kommt vielleicht mal, wenn das Programm fertig ist.
Jetzt gibt's erstmal Version 1.4.2 mit vier verschiedenen Farben (gelb, blau, rot und grün) und dem Funkuhr-Icon in der entsprechenden Farbe. Außerdem habe ich den Code mal etwas optimimert.
Download wie immer in Post #1
-
@nasgul: Das Konzept von Vista verstehe ich nicht. Wird der Anwender denn wenigstens beim Start eines Script mit #RequireAdmin um Erlaubnis gefragt? Was hätte das sonst für einen Sicherheitsaspekt, wenn jedes Programm ungefragt die Rechte ändern kann?
@Bernd+Xeno: Gutes Argument! Werde ich in mein Script so einbauen.
Vielen Dank für eure Hilfe!
-
Man kann die Rechte ändern ohne Nachfrage? Nicht wirklich, oder?
Ich traue MS ja schon viel zu, aber das wäre dann doch zuviel, oder etwa doch? [zweifel]
-
Ah! Das könnte es sein!
Ok! Aber wenn ich das richtig verstanden habe, dann kann ich bzw. mein Script in @AppDataDir beliebig schreiben und/oder Ordner erstellen, ja?
Dann würde ich nämlich die Inidatei dorthin verlagern. -
Hmmm... #RequireAdmin gibt es bereits in meinem Script.
Mein Arbeitskollege sagt aber, dass das Script die Inidatei trotzdem nicht schreiben kann. Erst wenn er das Script in sein User-Verzeichnis verschiebt und dort startet, geht es. Bei dem Script handelt es sich übrigens um meine Digitaluhr. Kannst Du das mal testen?
-
Hallo!
Ich bräuchte mal Hilfe von jemanden der Vista installiert hat.
Kann es sein, dass ein Script unter Vista nicht in den Programme-Ordner (z.B. C:\Programme\Test\) schreiben kann?
So wurde es mir von einem Arbeitskollegen berichtet, der mein Programm testen sollte.
Wenn das stimmt, sollte ich die Inidatei wohl lieber ins @AppDataDir packen, oder? -
Das mit den Password posten ist doch bereits geschehen. Die stehen bei unseren Scripten.
-
Äh...wie bitte?
Moment....[Kristallkugel rauskram]...
autoit.de/wcf/attachment/2285/
Ahja, alles klar...
-
Das Ganze geht auch in größer und nur Stunden und Minuten
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <GUIConstantsEx.au3>
#include <DateTimeConstants.au3>Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit]Example2()
[/autoit] [autoit][/autoit] [autoit]; example2
[/autoit] [autoit][/autoit] [autoit]
Func Example2()
Local $n, $msgGUICreate("My GUI get time")
[/autoit] [autoit][/autoit] [autoit]
$n = GUICtrlCreateDate("", 20, 20, 70, 28, $DTS_TIMEFORMAT)
GUICtrlSetFont(-1, 14, 400, 'Arial')
GUISetState(); Run the GUI until the dialog is closed
[/autoit] [autoit][/autoit] [autoit]
Do
$msg = GUIGetMsg()
Until $msg = $GUI_EVENT_CLOSEMsgBox(0, "Time", StringLeft(GUICtrlRead($n), 5))
[/autoit]
GUIDelete()
EndFunc ;==>Example2