1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. subzero007

Beiträge von subzero007

  • Registry-Patchen ?

    • subzero007
    • 27. Mai 2009 um 18:03

    mit set acl ist das leicht zu realiesieren


    SetACL.exe -on "hklm\software\microsoft\policies" -ot reg -actn ace
    -ace "n:domain1\user1;p:full"Sets 'full' permissions on the registry key 'HKEY_LOCAL_MACHINE\Software\Microsoft\Policies' for user 'user1' in domain 'domain1'.

    SetACL.exe -on "\\machine2\hklm\software\microsoft\policies" -ot reg -actn ace
    -ace "n:domain1\user1;p:full"Same as Example 17, but accesses the registry on machine 'machine2'.

    SetACL.exe -on "hkcu" -ot reg -actn ace
    -ace "n:domain1\user1;p:full"Sets 'full' permissions on the registry root key 'HKEY_CURRENT_USER' for user 'user1' in domain 'domain1'

  • If.....

    • subzero007
    • 27. Mai 2009 um 17:50

    danke,
    aber erst werde ich mal mehrere bilder einfügen müssen um es zu testen.

    Ich bin ja noch bei meinem Problem If....

    siehe zeile 12 und 29 bis 32 im beitrag 4

    Edit:
    also habe mir mal die hilfe angeschaut
    GUIGetCursorInfo() damit kriege ich doch nur die mausposition und doch nicht das letzte bild was angefasst worden ist oder sehe ich das falsch?

    bernd670: Beiträge zusammengefasst!

  • If.....

    • subzero007
    • 27. Mai 2009 um 17:24

    ja den fehler hatte ich auch den habe ich aber bereits selber gefunden
    siehe beitrag 4 habe weiterhin das problem eine idee?

  • If.....

    • subzero007
    • 27. Mai 2009 um 16:01

    du kannst ja mein code anschauen ich will bilder in eine gui einfügen.
    das erste bild ist $pic1 will aber wenn ich ein zweites einfüge das er hochzählt,
    also immer +1
    also auf deutsch
    if exist $pic1 then $pic2
    das wollte ich dann in mein code packen idee?

    Edit:
    Eventuell habe ich einen denkfehler oder es ist komplett ein falscher ansatz:
    siehe zeile 12 und 29 bis 32?

    einen frage habe ich noch wo erkenne ich welches bild meine maus zuletzt angeklickt hat?
    Hundi hatte mir ja ein beispiel gegeben:
    Case $msg = $GUI_EVENT_PRIMARYDOWN AND $msg = $pic2
    _move_pic( $pic2, $diff_pic_mouse_l, $diff_pic_mouse_w )
    $last_clicked = $pic2

    und:
    GUICtrlDelete( $last_clicked)

    ICh weiss nicht wie ich das umsetzen kann in meine code habe ein verständniss problem???


    Spoiler anzeigen
    [autoit]

    #include <ListviewConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <SliderConstants.au3>
    #Include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>
    #Include <Misc.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GUIOnEventMode", 1)
    Global $posXStart, $posYStart, $posXStop, $posYStop, $pic, $hGui, $Pos_M2 = MouseGetPos()
    Global $pic1 = _fpic()

    $hGUI = GUICreate("Transparent", 575, 510)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Ex")
    $insert = GuiCtrlCreateButton("Insert Pic" ,10,10)
    GuiCtrlSetOnEvent(-1, "_insert")
    $Pic1=GUICtrlCreatePic("", 50, 50)
    GuiCtrlSetOnEvent(-1, "_DragMe")
    $insert = GuiCtrlCreateButton("Del Pic" ,65,10)
    GuiCtrlSetOnEvent(-1, "_del")
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    sleep(100)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _fpic()
    if $pic1 > 0 Then
    $pic1 + 1
    EndFunc


    Func _insert()

    $bild = FileOpenDialog("Wählen Sie eine Datei aus!", @WindowsDir & "\", "Bilder (*.jpg;*.bmp)", 1 + 4 )
    $Pic1 = GUICtrlCreatePic($bild, 150, 150)
    GuiCtrlSetOnEvent(-1, "_DragMe")
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _del()
    GuiCtrlDelete($pic1)
    EndFunc

    Func _DragMe()
    Global $Pos_C, $Pos_M, $Pos_M2, $Opt_old
    Local $dll = DllOpen("user32.dll")
    $Opt_old = Opt('MouseCoordMode', 0)
    $Pos_C = ControlGetPos($hGui, "", $pic1)
    $Pos_M = MouseGetPos()
    $Pos_W = WinGetPos($hGui)
    $x_Offset = $Pos_M[0] - $Pos_C[0]
    $y_Offset = $Pos_M[1] - $Pos_C[1]
    _MouseTrap($Pos_W[0]+$x_Offset,$Pos_W[1]+$y_Offset,$Pos_W[0]+$Pos_W[2],$Pos_W[1]+$Pos_W[3])
    While _IsPressed('01', $dll)
    $Pos_M = MouseGetPos()
    If $Pos_M <> $Pos_M2 Then
    GUICtrlSetPos($pic1,$Pos_M[0] - $x_Offset, $Pos_M[1] - $y_Offset)
    sleep(10)
    EndIf
    $Pos_M = $Pos_M2
    sleep(50)
    WEnd
    DllClose($dll)
    Opt('MouseCoordMode', $Opt_old)
    _MouseTrap()
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _Ex()
    Exit
    EndFUnc

    [/autoit]

    bernd670: Beiträge zusammengefasst!

  • If.....

    • subzero007
    • 27. Mai 2009 um 15:37

    Hallo,

    so jetzt habe ich mir vorgenommen in zukunft mehr selbst zu machen aber ich hänge an einer stelle komme auch über die hilfe nicht weiter
    würde mich über eine kleine hilfe freuen

    ich weiss es gibt keine if exist funktion,
    aber ich wolle abfragen wenn es kein $pic dann zähle hoch also $pic2

    [autoit][/autoit]
    Spoiler anzeigen
    [autoit]

    Func _fpic
    if exist $pic1 + 1 ;????????????????????????


    EndFunc

    [/autoit]
    [autoit][/autoit]
    Spoiler anzeigen
    [autoit]

    #include <ListviewConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <SliderConstants.au3>
    #Include <GuiListView.au3>
    #Include <Array.au3>
    #Include <File.au3>
    #Include <Misc.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GUIOnEventMode", 1)
    Global $posXStart, $posYStart, $posXStop, $posYStop, $pic, $hGui, $Pos_M2 = MouseGetPos()

    [/autoit] [autoit][/autoit] [autoit]


    $hGUI = GUICreate("Transparent", 575, 510)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Ex")
    $insert = GuiCtrlCreateButton("Insert Pic" ,10,10)
    GuiCtrlSetOnEvent(-1, "_insert")
    $Pic=GUICtrlCreatePic("", 50, 50)
    GuiCtrlSetOnEvent(-1, "_DragMe")
    $insert = GuiCtrlCreateButton("Del Pic" ,65,10)
    GuiCtrlSetOnEvent(-1, "_del")
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    sleep(100)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _fpic
    if exist $pic1 + 1 ;????????????????????????


    EndFunc
    Func _insert()
    $bild = FileOpenDialog("Wählen Sie eine Datei aus!", @WindowsDir & "\", "Bilder (*.jpg;*.bmp)", 1 + 4 )
    $Pic1 = GUICtrlCreatePic($bild, 150, 150)
    GuiCtrlSetOnEvent(-1, "_DragMe")
    EndFunc
    Func _del()
    GuiCtrlDelete($pic1)
    EndFunc

    Func _DragMe()
    Global $Pos_C, $Pos_M, $Pos_M2, $Opt_old
    Local $dll = DllOpen("user32.dll")
    $Opt_old = Opt('MouseCoordMode', 0)
    $Pos_C = ControlGetPos($hGui, "", $pic)
    $Pos_M = MouseGetPos()
    $Pos_W = WinGetPos($hGui)
    $x_Offset = $Pos_M[0] - $Pos_C[0]
    $y_Offset = $Pos_M[1] - $Pos_C[1]
    _MouseTrap($Pos_W[0]+$x_Offset,$Pos_W[1]+$y_Offset,$Pos_W[0]+$Pos_W[2],$Pos_W[1]+$Pos_W[3])
    While _IsPressed('01', $dll)
    $Pos_M = MouseGetPos()
    If $Pos_M <> $Pos_M2 Then
    GUICtrlSetPos($pic,$Pos_M[0] - $x_Offset, $Pos_M[1] - $y_Offset)
    sleep(10)
    EndIf
    $Pos_M = $Pos_M2
    sleep(50)
    WEnd
    DllClose($dll)
    Opt('MouseCoordMode', $Opt_old)
    _MouseTrap()
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _Ex()
    Exit
    EndFUnc

    [/autoit]


    so sieht mein code jetzt aus zeile 29 fängt das problem an.
    Eine idee?

  • Weg von der Maus

    • subzero007
    • 27. Mai 2009 um 14:26

    danke das baut mich auf werde mir ab sofort mühe geben ;)

  • Weg von der Maus

    • subzero007
    • 27. Mai 2009 um 12:56

    Ok danke das du mich tröstest war hier schon am heulen das ihr mich nicht haben wollt :(

  • Weg von der Maus

    • subzero007
    • 27. Mai 2009 um 12:43

    ok ich werde mich befassen heisst das jetzt das ich garkeine fragen mehr stellen darf ??

  • Weg von der Maus

    • subzero007
    • 27. Mai 2009 um 11:26

    Bin ja auch ein Lernender ich bin bloss wohl ganz am anfang wie macht man das?

  • Weg von der Maus

    • subzero007
    • 27. Mai 2009 um 11:07

    Genau z.B. Insert Pic.
    ich will ja nicht für jedes Bild ein Button erzeugen??
    Ich will ein Button Bild erzeugen "insert Pic" und einen Bild Löschen "Del Pic"
    und dabei ein neues hinzufügen und entsprechend löschen können und dabei auswählen welches bild ich löschen will.
    eine idee?

  • Weg von der Maus

    • subzero007
    • 27. Mai 2009 um 10:07

    dazu habe ich noch eine frage?

    $pic1 = GUICtrlCreatePic( @WindowsDir & "\Web\Wallpaper\Stonehenge.jpg", 10, 10, 150, 100 )
    $pic2 = GUICtrlCreatePic( @WindowsDir & "\Web\Wallpaper\Stonehenge.jpg", 10, 10, 150, 100 )

    wenn ich aber nur ein button habe wie soll das dann gehen?
    ich will ja nicht für jeden Pic ein button erzeugen?

  • Logging bei Fehler während Installation

    • subzero007
    • 26. Mai 2009 um 20:53

    Auf welche artundweise installierst du hast du ein Paket und wie verteilst du vor allem die software?

  • 2 Scripte kreuzen ......

    • subzero007
    • 26. Mai 2009 um 19:42

    danke danke,

    soweit war ich schonmal das sind meine beiden probleme wieder ;(

    1. wie kann ich mehrer bilder hinzufügen sie aber auch einzeln entfernen ?
    2. und das ganze transparent?
    3.Gibt es die möglichkeit die bilder in der gui, nachdem man sie eigefügt hat die grösse zu verändern?

  • Rechte Vergeben auf Installationspfad

    • subzero007
    • 26. Mai 2009 um 16:57

    Hast du es mal mit xcalcs

    Syntax von "Xcacls.exe"
    xcacls Dateiname [/T] [/E] [/C] [/G Benutzer:Ber.;Beschr.] [/R Benutzer] [/P Benutzer:Ber.;Beschr. [...]] [/D Benutzer [...]] [/Y]
    Dabei steht Dateiname für den Namen der Datei oder des Ordners, auf die bzw. den die ACL oder der Zugriffssteuerungseintrag (ACE) typischerweise angewendet wird. Es können alle Standard-Platzhalterzeichen verwendet werden.

    /T durchläuft rekursiv den aktuellen Ordner und alle seine Unterordner und wendet die gewählten Zugriffsrechte auf die entsprechenden Dateien oder Ordner an.

    /E bearbeitet die ACL, statt sie zu ersetzen. Beispielsweise hat nur der Administrator Zugriff auf die Datei "Test.dat", wenn Sie den Befehl XCACLS test.dat /G Administrator:F ausführen. Alle zuvor angewendeten ACEs werden verworfen.

    /C veranlasst "Xcacls.exe" fortzufahren, wenn eine Fehlermeldung "Zugriff verweigert" auftritt. Wenn /C nicht angegeben ist, hält "Xcacls.exe" an, wenn dieser Fehler auftritt.

    /G Benutzer:Ber.;Beschr. gewährt einem Benutzer Zugriff auf die entsprechende Datei oder den Ordner.
    Die Variable Ber. (Berechtigung) wendet das angegebene Zugriffsrecht auf Dateien an und stellt die spezielle Dateizugriffsrecht-Maske für Ordner dar. Für die Variable Ber. sind folgende Werte zulässig:
    R Lesen
    C Ändern (Schreiben)
    F Vollzugriff
    P Berechtigungen ändern (Beschränkter Zugriff)
    O Besitz übernehmen (Beschränkter Zugriff)
    X Ausführen (Beschränkter Zugriff)
    E Lesen (Beschränkter Zugriff)
    W Schreiben (Beschränkter Zugriff)
    D Löschen (Beschränkter Zugriff)
    Die Variable Beschr. (Beschränkter Zugriff) gilt nur für Ordner und akzeptiert dieselben Werte wie die Variable Ber. sowie zusätzlich den folgenden Spezialwert:
    T Nicht angegeben. Dieser Wert setzt einen ACE für das Verzeichnis selbst, ohne einen ACE anzugeben, der auf neu erstellte Dateien in diesem Verzeichnis angewendet wird. Auf diesen Wert muss mindestens ein Zugriffsrecht folgen. Einträge zwischen einem Strichpunkt (;) und T werden ignoriert. Hinweise:
    Die Zugriffsoptionen für Dateien (für Ordner, beschränkter Datei- und Ordnerzugriff) sind identisch. Eine ausführliche Erklärung zu diesen Optionen finden Sie in der Dokumentation zu Ihrem Windows 2000-Betriebssystem.
    Alle weiteren Optionen, die auch in Windows Explorer gesetzt werden können, sind Teilmengen aller zulässigen Kombinationen der grundlegenden Zugriffsrechte. Aus diesem Grund gibt es keine speziellen Optionen für Ordnerzugriffsrechte wie LIST (Auflisten) oder READ (Lesen).
    /R Benutzer hebt alle Zugriffsrechte für den angegebenen Benutzer auf.

    /P Benutzer:Ber.;Beschr. ersetzt Zugriffsrechte für den Benutzer. Die Regeln für die Angabe von "Ber." und "Beschr." entsprechen denen für die Option /G. Lesen Sie hierzu den Abschnitt Beispiele für "Xcacls.exe" in diesem Artikel.

    /D Benutzer verweigert den Benutzerzugriff auf die Datei oder das Verzeichnis.

    /Y deaktiviert die Aufforderung zur Bestätigung, wenn Zugriffsrechte für Benutzer ersetzt werden. Standardmäßig fragt CACLS nach einer Bestätigung. Wenn CACLS in einer Stapelroutine verwendet wird, reagiert die Routine wegen dieser Funktion nicht mehr, bis die korrekte Antwort eingegeben wird. Die Option /Y wurde eingeführt, um diese Bestätigungsaufforderung zu verhindern, sodass "Xcacls.exe" im Stapelmodus verwendet werden kann.

  • 2 Scripte kreuzen ......

    • subzero007
    • 26. Mai 2009 um 16:42

    Danke dir Autobert,
    evetuell wirst du es mir nicht glauben aber habe schon die hilfe durch und bin am verzweifeln kriege irgendwie den einstieg nicht hin,-(
    dachte nur das mir jemand den einstieg gibt, vielleicht wenn es sogar einfach ist es fertig macht mir sagt was es war und wie er
    es gemacht hat will es ja auch lernen.

    Sorry das ich soviele fragen habe

    Edit:
    @ChaosKeks es tut mir leid ich werde mich in zukunft bessern versprochen !!!!
    kannst du mir helfen du kennst ja das script,-) Bitteee ;)

    bernd670: Beiträge zusammengefasst!

  • Weg von der Maus

    • subzero007
    • 26. Mai 2009 um 16:38

    Hey,
    Hört sich ja schick an und wie entfernt man bilder?
    Nächste frage hast du zeit? stehe gerade im dunkeln ?(

  • 2 Scripte kreuzen ......

    • subzero007
    • 26. Mai 2009 um 15:55

    Neagtiv habe es leider nicht verstanden wie ich es auf diesem weg verknüpfen soll?

  • Syntax fehler WinSetTrans ......

    • subzero007
    • 26. Mai 2009 um 15:34

    habe es auch mit kleine fotos gemacht geht nicht kann nicht mal eine auswählen?

  • Weg von der Maus

    • subzero007
    • 26. Mai 2009 um 15:28

    Ich bin ja bemüht auch selber was zu machen bin ja ein anfänger ;)
    Habe resizing eingebaut fürs die GUI.
    Hat jemand eine idee wie mann mehrere bilder einfügen könnte

    Spoiler anzeigen
    [autoit]

    $message = "Bild auswählen"
    $bild = FileOpenDialog($message, @WindowsDir & "\", "Bilder (*.jpg;*.bmp)", 1 + 4 )
    $Pic=GUICtrlCreatePic($bild, 150, 150)
    GUISetState(@SW_SHOW , $hGUI)

    [/autoit]

    so könnte mann es ja machen, das gilt aber dann nur für ein Bild wollte ja mehrer einfügen können und einzeln auch entfernen können??!!
    jemand eine idee?

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $msg = GUICreate( "Drag and Drop", 375, 310, Default, Default, BitOR($WS_MINIMIZEBOX, $WS_MAXIMIZEBOX, $WS_SIZEBOX), $WS_EX_ACCEPTFILES) ; Gui erstellen
    $pic = GUICtrlCreatePic( @WindowsDir & "\Web\Wallpaper\Stonehenge.jpg", 10, 10, 150, 100 ) ;Das Bild erstellen

    [/autoit] [autoit][/autoit] [autoit]

    Dim $prim_down = False ; notwendige Variablen
    Dim $pic_start_pos_x, $pic_start_pos_y ; deklarieren

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState( @SW_SHOW )

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    ;~ Die drei Case Anweisungen
    Case $msg = $GUI_EVENT_PRIMARYUP
    $prim_down = False
    Case $msg = $GUI_EVENT_PRIMARYDOWN And Not $prim_down = True
    $prim_down = True

    $mouse_x = MouseGetPos( 0 )
    $mouse_y = MouseGetPos( 1 )
    $ctrl_props = ControlGetPos( "[Active]" ,"" , $pic )
    $pic_l = $ctrl_props[ 0 ]
    $pic_t = $ctrl_props[ 1 ]

    $diff_pic_mouse_l = $mouse_x - $pic_l
    $diff_pic_mouse_w = $mouse_y - $pic_t
    Case $prim_down = True
    _move_pic( $pic, $diff_pic_mouse_l, $diff_pic_mouse_w )

    EndSelect
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ;~ Die Funktion zum verschieben:
    Func _move_pic( $pic_id, $from_x, $from_y )
    ConsoleWrite( $from_x & "," & $from_y &@CRLF)
    $was_moved = True
    $last_mouse_pos_x = $mouse_x
    $last_mouse_pos_y = $mouse_y
    $mouse_x = MouseGetPos( 0 )
    $mouse_y = MouseGetPos( 1 )

    $ctrl_props = ControlGetPos( "[Active]", "", $pic_id )
    $ctrl_l = $ctrl_props[ 0 ]
    $ctrl_t = $ctrl_props[ 1 ]

    $x_moved_by = $ctrl_l - $pic_start_pos_x
    $y_moved_by = $ctrl_t - $pic_start_pos_y

    If $last_mouse_pos_x = $mouse_x And $last_mouse_pos_y = $mouse_y Then
    Else
    $pic_l = - ( $from_x - $mouse_x )
    $pic_t = - ( $from_y - $mouse_y )
    GUICtrlSetPos( $pic_id, $pic_l, $pic_t )
    EndIf
    EndFunc

    [/autoit]
  • Autoit auf Server - GUI fehlt

    • subzero007
    • 26. Mai 2009 um 15:10

    Was möchtest du genau tun?

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™