Hi Tweaky,
KaFu im engl. Forum hat es so gemacht.
Musst Dir halt die Lösung da rausnehmen ...
http://www.autoitscript.com/forum/topic/97…post__p__698094
Hi Tweaky,
KaFu im engl. Forum hat es so gemacht.
Musst Dir halt die Lösung da rausnehmen ...
http://www.autoitscript.com/forum/topic/97…post__p__698094
jetzt hab ich den ganzen Thread mehrmals gelesen. Aber...
ich verstehe immer noch nicht was das Endergebnis dieses Konstruktes machen soll?????
ZitatAlles anzeigenAber zurück zu meiner Frage: Ich hoffe du verstehst was ich sagen will:
Bei 100 au3 Files wie kann man so etwas am besten managen, per ID zuordnen
ohne den Überblick zu verlieren.Dann stelle ich die Frage so:
Wie kann ich in meiner Tabelle die Funktionen für die jeweiligen ID's managen
und per Loop aufrufen?
Auch für die Bearbeitung wichtig:Ich sehe in der Tabelle bei ID 68 die Funktion v. Erika.au3
Diese wird geändert, das war's!
Das MainScript wird nicht benötigt.
liebste ilse,
kannst Du uns etwas genauer den von Dir gedachten Ablauf erklären?
- Werden die einzelnen au3-Dateien mal zu exe Dateien und an die User verteilt?
- was machen die Funktionen in den einzelnen au3-Dateien?
- Ist deine main.au3 "nur" zum managen der ganzen anderen au3-Dateien gedacht?
- willst du eine AD-Verwaltung auf Userebene nachbauen?
Fragen über Fragen.
Ich denke wenn wir verstehen wofür das Verwendung finden soll, dann löst sich das sehr schnell in ein Ergebnis auf. ![]()
also,
ich würde das so lösen:
für jeden User erstellst Du eine au3-Datei.
Diese heißt so, wie in deiner Tabelle angegeben. z.B. Erika.au3
in der au3-Datei erstellst Du jeweils 1 Funktion, die auch so heißt wie die au3-Datei.
z.B.
Func erika()
...
...
EndFunc
alle au3-Dateien speicherst Du in einem Ordner. Wie auch deine main.au3.
In der main.au3 werden !alle! au3-File's included mit:
#include<erika.au3>
#include<sylvia.au3>
oder wie auch immer die heißen.
Somit kannst Du jede Funktion, die einer einzelnen Person gehört übersichtlich in einer eigenen Datei bearbeiten,
hast aber trotzdem alles zusammen.
Die letzte und entscheidende Frage ist jetzt nur noch:
wie du die Anwendung triggerst. D.h. welcher Name kommt zur Anwendung.
Entweder über eine Eingabe in einer Input-Box oder über den angemeldeten Usernamen @Username, oder, oder, oder
so long ilse
so, einen hab ich noch.
Warum denn die Anzeige der Console unbedingt anzeigen. Sie dient doch eigentlich nur als Trigger.
Ausser Du möchtest explizit den Inhalt darstellen.
Dann wird das ganze etwas aufwendiger wenn das zur Laufzeit der Console geschehen soll.
Ansonsten versuch das doch mal so...
#include <Constants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Global $pwd
#region ### START Koda GUI section ### Form=c:\users\michach\desktop\sd-tools.kxf
$Form1_1 = GUICreate("Form1", 568, 571)
$Tab1 = GUICtrlCreateTab(8, 8, 553, 553)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
$TabSheet2 = GUICtrlCreateTabItem("User Profile")
$Group1 = GUICtrlCreateGroup("Alle lokalen Profile löschen", 16, 48, 537, 97)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Label1 = GUICtrlCreateLabel("Hostname:", 49, 88, 69, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Input1 = GUICtrlCreateInput("", 120, 86, 89, 24)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Löschen", 223, 85, 73, 25, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Profil zurücksetzen", 16, 177, 537, 113)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Label2 = GUICtrlCreateLabel("Username:", 22, 218, 70, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Input2 = GUICtrlCreateInput("", 93, 216, 89, 24)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button2 = GUICtrlCreateButton("Profil zurücksetzen", 206, 257, 145, 25, 0)
$Label3 = GUICtrlCreateLabel("Homeserver:", 194, 217, 82, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Input3 = GUICtrlCreateInput("", 276, 215, 89, 24)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label4 = GUICtrlCreateLabel("Hostname:", 378, 217, 69, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Input4 = GUICtrlCreateInput("", 447, 215, 89, 24)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
;~ $LabelAusgabe = GUICtrlCreateLabel("", 17, 304, 540, 22)
$LabelAusgabe = GUICtrlCreateEdit("", 17, 304, 540, 225, $ES_AUTOVSCROLL + $WS_VSCROLL)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$Label14 = GUICtrlCreateLabel("Version 1.0", 496, 536, 57, 17)
$TabSheet3 = GUICtrlCreateTabItem("Tools")
GUICtrlSetState(-1, $GUI_SHOW)
$Group3 = GUICtrlCreateGroup("Diverse Tools", 16, 48, 537, 465)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Button3 = GUICtrlCreateButton("Display", 24, 152, 105, 25, 0)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label5 = GUICtrlCreateLabel("( Hostname ) Öffnet die Bildschirm-Einstellungen auf dem Rechner des Benutzers", 144, 155, 384, 17)
$Button4 = GUICtrlCreateButton("Einstellungen", 24, 202, 105, 25, 0)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label6 = GUICtrlCreateLabel("( Hostname ) Öffnet die Einstellungen auf dem Rechner des Benutzers", 144, 205, 334, 17)
$Button5 = GUICtrlCreateButton("Systemeig.", 24, 251, 105, 25, 0)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label7 = GUICtrlCreateLabel("( Hostname ) Öffnet die Systemeigenschaften auf dem Rechner des Benutzers", 144, 254, 372, 17)
$Button6 = GUICtrlCreateButton("Compverw.", 24, 301, 105, 25, 0)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label8 = GUICtrlCreateLabel("( Hostname ) Öffnet die Computerverwaltung auf dem Rechner des Benutzers.", 144, 304, 371, 17)
$Button7 = GUICtrlCreateButton("Quota", 24, 350, 105, 25, 0)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Label9 = GUICtrlCreateLabel("( Hostname ) Startet eine Quota Abfrage auf dem Host für den Benutzer.", 144, 353, 343, 17)
$Label11 = GUICtrlCreateLabel("Hostname:", 58, 96, 69, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Input5 = GUICtrlCreateInput("", 128, 94, 89, 24)
$Label12 = GUICtrlCreateLabel("Benutzername:", 302, 96, 93, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Input6 = GUICtrlCreateInput("", 396, 94, 89, 24)
$Button9 = GUICtrlCreateButton("Shutdown", 25, 410, 105, 25, 0)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFF0000)
$Label13 = GUICtrlCreateLabel("( Hostname ) Startet den Rechner innerhalt 5 Sek. neu. ( Erzwungen )", 145, 413, 332, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Label10 = GUICtrlCreateLabel("Version 1.0", 497, 537, 57, 17)
$TabSheet4 = GUICtrlCreateTabItem("Hilfe")
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
;If FileExists("c:\Kopie") Then
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit];Variablen
$tab1hostname1 = GUICtrlRead($Input1)
$tab1username = GUICtrlRead($Input2)
$tab1homeserver = GUICtrlRead($Input3)
$tab1hostname2 = GUICtrlRead($Input4)
$tab2hostname = GUICtrlRead($Input5)
$tab2username = GUICtrlRead($Input6)
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
;Case $Tab1
;###################################################################
;Alle lokalen Profile löschen
;###################################################################
Case $Button1
ConsoleWrite("huhu")
;$tab1hostname1 = GUICtrlRead ($Input1)
$cmdProfilLoeschen = Run(@ComSpec & " /c dir c:\", @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
;~ $cmdProfilLoeschen = Run(@ComSpec & " /c delprof /c:\\" & $tab1hostname1 & " /i /q", @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
Local $fortschritt
While 1
$fortschritt &= '='
If StringLen($fortschritt) > 20 Then $fortschritt = '='
Sleep(100)
$ausgabe = StdoutRead($cmdProfilLoeschen)
If @error Then ExitLoop
GUICtrlSetData($LabelAusgabe, $fortschritt)
WEnd
GUICtrlSetData($LabelAusgabe, @CRLF & 'Alle Profile gelöscht.',1)
;###################################################################
;Profil zurücksetzen
;###################################################################
Case $Button2
;Lokales Profil löschen
;Server Profil kopieren
If ($tab1hostname2 == "" Or $tab1username == "" Or $tab1homeserver == "") Then
GUICtrlSetData($LabelAusgabe, "Bitte alle Felder ausfüllen!")
Else
$kopieren = DirCopy("\\" & $tab1hostname2 & "\profile\" & $tab1username, "\\" & $tab1hostname2 & "\profile\" & $tab1username & ".sic")
GUICtrlSetData($LabelAusgabe, "Alle Felder ausgefüllt.")
EndIf
;###################################################################
;Display auf dem Host anzeigen
;###################################################################
Case $Button3
If ($tab2hostname == "") Then
GUICtrlSetData($LabelAusgabe, "Bitte den Hostnamen eingeben!")
Else
$cmdDisplay = Run(@ComSpec & " /c psexec \\" & $tab2hostname & " -u ewenet\%username% -i -p " & $pwd & " c:\winnt\system32\control.exe desk.cpl")
;GUICtrlSetData ($LabelAusgabe,$cmdDisplay)
EndIf
;###################################################################
;Führt settings.bat auf dem Host aus
;###################################################################
Case $Button4
If ($tab2hostname == "") Then
GUICtrlSetData($LabelAusgabe, "Bitte den Hostnamen eingeben!")
Else
$cmdEinstellungen = Run(@ComSpec & " /c Psexec \\" & $tab2hostname & " -s c:\winnt\settings.bat")
EndIf
;###################################################################
;Systemeigenschaften auf dem Host anzeigen
;###################################################################
Case $Button5
$cmdSystem = Run(@ComSpec & " /c psexec \\" & $tab2hostname & " -u ewenet\%username% -i c:\winnt\system32\rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,0")
;###################################################################
;Computerverwaltung auf dem Host anzeigen
;###################################################################
Case $Button6
$cmdComputer = Run(@ComSpec & " /c psexec \\" & $tab2hostname & " -u ewenet\%username% -i -w C:\WINNT\system32 C:\WINNT\system32\mmc.exe C:\WINNT\system32\compmgmt.msc")
;###################################################################
;Quota des Benutzers abfragen
;###################################################################
Case $Button7
;$cmdQuota = Run(@COMSPEC & " /c Psexec \\"&$tab2hostname&" -s c:\winnt\settings.bat >NUL)
EndSwitch
WEnd
;InetGet - Lädt eine Datei aus dem Internet
[/autoit]ist vielleicht nicht elegant oder OverSized.
Aber wenn ich das Script im Hintergrund laufen lasse klickt das alle Meldungen weg. ![]()
While 1
Sleep(10)
If Winexists("Sicherheitswarnung") then
WinActivate("Sicherheitswarnung")
Controlclick("Sicherheitswarnung","&Ja","[CLASS:Button; INSTANCE:1]")
EndIf
WEnd
dann setze einfach nach der While-Schleife noch ein GuiCtrlSetData hinterher.
Wenn die Schleife durch ist sollten alle Profile weg sein.
Überprüft ist das damit natürlich nicht
ich hab mal zu Testzwecken folgendes gemacht:
ein MasterFenster das über Buttons Child-Gui's aufruft.
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GUIConstants.au3>
#include <GuiTab.au3>
#include <Misc.au3>
Opt("MustDeclareVars", 1)
Opt("GUIOnEventMode", 1)
HotKeySet ( "^t", "show_btn" )
Const $main_gui_width = 860
Const $main_gui_height = 710
Const $child_gui_width = 860
Const $child_gui_height = 660
Const $btn_bkcol = 0xd4d0c8
Const $btn_col = 0x000000
Const $btn_bkcol_a = 0x0a246a
Const $btn_col_a = 0xffffff
Global $dll = DllOpen("user32.dll")
Global $btn_child[6]
Global $btn_shown = 1
Global $strg_t = 0
Global $title = "Demo für Child-Fenster"
Global $dummy = GUICtrlCreateLabel("", 0, 0, 1, 1)
Global $main_gui = GUICreate($title, $main_gui_width, $main_gui_height, -1, -1, BitOR($WS_OVERLAPPEDWINDOW, $WS_CLIPSIBLINGS))
Global $child1_gui, $child2_gui, $child3_gui, $child4_gui, $child5_gui, $child_akt, $child_old
$btn_child[1] = GUICtrlCreateButton("Button 1", 10, 0, 160, 30)
GUICtrlSetFont(-1, 10, 300)
GUICtrlSetOnEvent(-1, "child_show")
$btn_child[2] = GUICtrlCreateButton("Button 2", 180, 0, 160, 30)
GUICtrlSetFont(-1, 10, 300)
GUICtrlSetOnEvent(-1, "child_show")
;GUICtrlSetState(-1, $GUI_HIDE)
$btn_child[3] = GUICtrlCreateButton("Button 3", 350, 0, 160, 30)
GUICtrlSetFont(-1, 10, 300)
GUICtrlSetOnEvent(-1, "child_show")
;GUICtrlSetState(-1, $GUI_HIDE)
$btn_child[4] = GUICtrlCreateButton("Button 4", 520, 0, 160, 30)
GUICtrlSetFont(-1, 10, 300)
GUICtrlSetOnEvent(-1, "child_show")
;GUICtrlSetState(-1, $GUI_HIDE)
$btn_child[5] = GUICtrlCreateButton("Button 5", 690, 0, 160, 30)
GUICtrlSetFont(-1, 10, 300)
GUICtrlSetOnEvent(-1, "child_show")
;GUICtrlSetState(-1, $GUI_HIDE)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
child1_gui()
child2_gui()
child3_gui()
child4_gui()
child5_gui()
$child_akt = $child1_gui ; um letzten aktiven Button wieder neutral zu färben
GUICtrlSetBkColor($btn_child[1], $btn_bkcol_a)
GUICtrlSetColor($btn_child[1], $btn_col_a)
GUICtrlSetState($dummy, $GUI_FOCUS)
GUISetState(@SW_SHOW, $main_gui)
GUISetState(@SW_SHOW, $child1_gui)
While 1
Sleep(1)
WEnd
Func show_btn()
If $btn_shown = 5 Then Return
GUICtrlSetState($btn_child[$btn_shown + 1], $GUI_Show)
$btn_shown += 1
$strg_t = 0
Sleep(500)
EndFunc ;==>show_btn
Func child_show()
$child_old = $child_akt
Switch @GUI_CtrlId
Case $btn_child[1]
If $child_akt <> $child1_gui Then
GUISetState(@SW_HIDE, $child_akt)
GUISetState(@SW_SHOW, $child1_gui)
$child_akt = $child1_gui
GUICtrlSetBkColor($btn_child[1], $btn_bkcol_a)
GUICtrlSetColor($btn_child[1], $btn_col_a)
GUICtrlSetState($dummy, $GUI_FOCUS)
EndIf
Case $btn_child[2]
If $child_akt <> $child2_gui Then
GUISetState(@SW_HIDE, $child_akt)
GUISetState(@SW_SHOW, $child2_gui)
$child_akt = $child2_gui
GUICtrlSetBkColor($btn_child[2], $btn_bkcol_a)
GUICtrlSetColor($btn_child[2], $btn_col_a)
GUICtrlSetState($dummy, $GUI_FOCUS)
EndIf
Case $btn_child[3]
If $child_akt <> $child3_gui Then
GUISetState(@SW_HIDE, $child_akt)
GUISetState(@SW_SHOW, $child3_gui)
$child_akt = $child3_gui
GUICtrlSetBkColor($btn_child[3], $btn_bkcol_a)
GUICtrlSetColor($btn_child[3], $btn_col_a)
GUICtrlSetState($dummy, $GUI_FOCUS)
EndIf
Case $btn_child[4]
If $child_akt <> $child4_gui Then
GUISetState(@SW_HIDE, $child_akt)
GUISetState(@SW_SHOW, $child4_gui)
$child_akt = $child4_gui
GUICtrlSetBkColor($btn_child[4], $btn_bkcol_a)
GUICtrlSetColor($btn_child[4], $btn_col_a)
GUICtrlSetState($dummy, $GUI_FOCUS)
EndIf
Case $btn_child[5]
If $child_akt <> $child5_gui Then
GUISetState(@SW_HIDE, $child_akt)
GUISetState(@SW_SHOW, $child5_gui)
$child_akt = $child5_gui
GUICtrlSetBkColor($btn_child[5], $btn_bkcol_a)
GUICtrlSetColor($btn_child[5], $btn_col_a)
GUICtrlSetState($dummy, $GUI_FOCUS)
EndIf
EndSwitch
If $child_old <> $child_akt Then
Switch $child_old
Case $child1_gui
GUICtrlSetBkColor($btn_child[1], $btn_bkcol)
GUICtrlSetColor($btn_child[1], $btn_col)
Case $child2_gui
GUICtrlSetBkColor($btn_child[2], $btn_bkcol)
GUICtrlSetColor($btn_child[2], $btn_col)
Case $child3_gui
GUICtrlSetBkColor($btn_child[3], $btn_bkcol)
GUICtrlSetColor($btn_child[3], $btn_col)
Case $child4_gui
GUICtrlSetBkColor($btn_child[4], $btn_bkcol)
GUICtrlSetColor($btn_child[4], $btn_col)
Case $child5_gui
GUICtrlSetBkColor($btn_child[5], $btn_bkcol)
GUICtrlSetColor($btn_child[5], $btn_col)
EndSwitch
EndIf
EndFunc ;==>child_show
Func child1_gui()
$child1_gui = GUICreate("", $child_gui_width, $child_gui_height, 0, 10, BitOR($WS_CHILD, $WS_TABSTOP), $WS_EX_CONTROLPARENT, $main_gui)
GUICtrlCreateLabel("Dies ist Seite 1", 50, 200, 200, 30)
GUICtrlSetFont(-1, 12, 600)
GUISetState(@SW_HIDE, $child1_gui)
EndFunc ;==>child1_gui
Func child2_gui()
$child2_gui = GUICreate("", $child_gui_width, $child_gui_height, 0, 10, BitOR($WS_CHILD, $WS_TABSTOP), $WS_EX_CONTROLPARENT, $main_gui)
GUICtrlCreateLabel("Dies ist Seite 2", 50, 200, 200, 30)
GUICtrlSetFont(-1, 12, 600)
GUISetState(@SW_HIDE, $child2_gui)
EndFunc ;==>child2_gui
Func child3_gui()
$child3_gui = GUICreate("", $child_gui_width, $child_gui_height, 0, 10, BitOR($WS_CHILD, $WS_TABSTOP), $WS_EX_CONTROLPARENT, $main_gui)
GUICtrlCreateLabel("Dies ist Seite 3", 50, 200, 200, 30)
GUICtrlSetFont(-1, 12, 600)
GUISetState(@SW_HIDE, $child3_gui)
EndFunc ;==>child3_gui
Func child4_gui()
$child4_gui = GUICreate("", $child_gui_width, $child_gui_height, 0, 10, BitOR($WS_CHILD, $WS_TABSTOP), $WS_EX_CONTROLPARENT, $main_gui)
GUICtrlCreateLabel("Dies ist Seite 4", 50, 200, 200, 30)
GUICtrlSetFont(-1, 12, 600)
GUISetState(@SW_HIDE, $child4_gui)
EndFunc ;==>child4_gui
Func child5_gui()
$child5_gui = GUICreate("", $child_gui_width, $child_gui_height, 0, 10, BitOR($WS_CHILD, $WS_TABSTOP), $WS_EX_CONTROLPARENT, $main_gui)
GUICtrlCreateLabel("Dies ist Seite 5", 50, 200, 200, 30)
GUICtrlSetFont(-1, 12, 600)
GUISetState(@SW_HIDE, $child5_gui)
EndFunc ;==>child5_gui
Func CLOSEClicked()
Exit 0
EndFunc ;==>CLOSEClicked
ZitatGht das auch, wenn inhalt und die Section in einer Zeile sind?
Dann sprechen wir aber nicht von einer ini-Datei ![]()
Hab gerade den ersten Post gesehen...
Das entspricht nicht dem Aufbau einer ini-Datei.
Zitat[Begriff] [tab] [Beschreibung] [tab] [URL]
wie es aussieht hat sich Microsoft entschieden dieses "Feature"
in die Hände des Users zu legen.
D.h. in Ermangelung eines Registry-Pfades kann i.M. ausschließlich der User entscheiden/einstellen,
welche Icon's angezeigt werden und welche nicht.
vielleicht ist einfach nur Dein Denkansatz falsch.
Erklär doch mal, was Du damit erreichen möchtest ...
ersetze mal deinen Code an der entsprechenden Stelle durch meinen ![]()
Die Ausgabe iaus der Cmd-Console laggt immer einwenig ...
[autoit];###################################################################
;Alle lokalen Profile löschen
;###################################################################
Case $Button1
ConsoleWrite("huhu")
;$tab1hostname1 = GUICtrlRead ($Input1)
$cmdProfilLoeschen = Run(@ComSpec & " /c dir c:\", @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
;~ $cmdProfilLoeschen = Run(@ComSpec & " /c delprof /c:\\" & $tab1hostname1 & " /i /q", @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
While 1
$ausgabe = StdoutRead($cmdProfilLoeschen)
Sleep(100)
If $ausgabe <> "" Then ExitLoop
WEnd
GUICtrlSetData($LabelAusgabe, $ausgabe)
ich weiß nicht warum, aber so geht es...
[autoit]Opt("WinTitleMatchMode", 2)
If Winexists("Sicherheitswarnung") then Controlclick("Sicherheitswarnung","","Button1")
If Winexists("Sicherheitswarnung") then Controlclick("Sicherheitswarnung","","Button1")
der Aufruf muss wirklich doppelt sein ![]()
das Problem hatte ich beim ersten Aufruf auch.
pack mal vor den Click einen Sleep(50) oder so...
... okay zu langsam ![]()
da brauchst Du keine Schleife.
Die Funktion DriveMapAdd liefert selbst den Erfolg zurück
Return Value
Success: Returns 1. (See Remarks)
Failure: Returns 0 if a new mapping could not be created and sets @error (see below). (See Remarks)
einfach in eine Variable packen oder direkt auf = 1 prüfen und gut.
Du solltest Dir aber in deinem Fenster noch etwas Platz einbauen für den Meldungstext. Sonst wird das nix.
wie detroit94 schon sagte bau ein guiCtrlCreateLabel ein und setze dessen Inhalt dem entsprechend des Ergebnisses von DriveMapAdd mit GuiCtrlSetData.
Fertig
so funktioniert es ![]()
Opt("WinTitleMatchMode", 3)
if Winexists("Sicherheitswarnung") then Controlclick("Sicherheitswarnung","","Button1")
ersetze mal diese Zeile
[autoit]GUICtrlSetData($LabelAusgabe, $ausgabe)
[/autoit]
mit dieser Zeile
GUICtrlSetData($LabelAusgabe, $ausgabe,1)
[/autoit]
Damit wird der vorherige Inhalt des Edit-Controls nicht gelöscht.
Musst vielleicht noch jeweils ein @CRLF dazwischen setzen
eine Bitte noch.
Wenn Deine Anfrage gelöst ist, dann setze bitte deinen ersten Thread auf den dem entsprechenden Status.
Danke Dir und freut mich wenn es geklappt hat ![]()
am Besten die aktuellen Demos von trancexx runterladen und inspirieren lassen ![]()
http://download.origo.ethz.ch/gif-animation/…ation_2.1.1.zip
vielleicht hilft Dir das weiter:
http://www.autoitscript.com/forum/topic/96…post__p__691115
ich denke, er möchte eher die Ladezeit des gerade gestarteten Programmes anzeigen.
Das kann logischerweise gar nicht gehen.
Dazu müsste das Programm ja laufen, damit es schon etwas tut.
Da es aber noch lädt, wirst Du da auch nichts anzeigen können.
Ausser Du verwendest 2 Programme.
Einen "Lader", der die Balkengrafik anzeigt, und das Programm dann startet.
Das Programm muss dann aber schon mehrere Hundert MB haben, damit sich die Anzeige lohnt ![]()