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. GerhardSchr

Beiträge von GerhardSchr

  • "Gegenstände" im bild zählen

    • GerhardSchr
    • 11. Juni 2016 um 15:38

    hi,
    sorry das ich nicht mehr geantwortet hatte...ist bei mir untergegangen :)

    ich habe die bilder für euch (extern wegen der dateigröße) hochgeladen


    https://mega.nz/#F!vJ42UTrK!utxMs3E8VgBtojC3Olwedw

    bin gerade am probieren die bilder mit gimp so zu bearbeiten, dass es eventuell einfacher zum erkennen wird...

    diese sind ungezählt...allerdings könnte man ja einen (roten) punkt auf erkannte körner setzen...dann kann man mit mit dem auge grob sehen wieviele falsch sind...

    danke schonmal :)

  • Hilfe beim Ordner durchsuchen und löschen der Dateien

    • GerhardSchr
    • 10. Juni 2016 um 09:28

    ungetestet hätte ich es so gemacht..


    AutoIt
    Func tree ($file)
    	If StringInStr (FileGetAttrib ($file), "D") Then
    		$files = _FileListToArray ($file, "*", 0)
    		If IsArray ($files) Then
    			For $folder = 1 To UBound ($files) -1
    				tree ($file & "\" & $files[$folder])
    			Next
    		EndIf
    	Else
    		If StringInStr ($file, ".txt") > 0 Then
    			FileDelete ($file)
    		EndIf
    	EndIf
    EndFunc
    Alles anzeigen
  • "Gegenstände" im bild zählen

    • GerhardSchr
    • 31. März 2016 um 16:22

    das mit dem filtern sollte ja mit gimp machbar sein....

    wenn bei einer fläche von z.B. einem A4 Blatt voller Körner (überlappungsfrei) ca. 10 falsch gezählt werden ist das ok :P

  • "Gegenstände" im bild zählen

    • GerhardSchr
    • 28. März 2016 um 14:18

    danke euch beiden...werde es mir nochmal genauer überlegen und anschauen...

  • "Gegenstände" im bild zählen

    • GerhardSchr
    • 28. März 2016 um 13:57

    hi,
    ich möchte in einem Bild die "Gegenstände" zählen.
    In meinem Fall wären das z.B. Körner.

    z.B. http://www.mebak.org/img/kornanomalien/intakte-koerner.jpg oder http://www.mebak.org/img/kornanomal…ene-koerner.jpg


    Mit PixelSearch werde ich da wohl nicht weit kommen.


    Hat jemand eine Idee wie man da ran gehen könnte?


    Eventuell hat ja jemand schonmal etwas ähnliches probiert.


    Danke schonmal und schöne Ostern :)

    //edit: Mir ist gerade noch eingefallen, dass man die Körner ja auch hintereinander anordnen könnte (z.B. in einer Rinne)...dann sollte das zählen einfacher sein oder?

  • AutoIt und OpenStreetMap und co einbinden

    • GerhardSchr
    • 18. März 2016 um 11:55

    so oder es gibt was fertiges, was man einbindet, sodass autoit nicht die last hat...

  • AutoIt und OpenStreetMap und co einbinden

    • GerhardSchr
    • 18. März 2016 um 10:56

    hi,
    mir ist gerade durch den kopf gegangen, ob man mit AutoIt auch Kartenmaterial von diversen Anbietern nutzen kann?

    Z.b. ein Fenster wo auf einer seite die Karte angezeigt wird (mit vergrößern/verkleinern und hin und her schieben) und auf der anderen Seite kann man Punkte in der Karte setzen/löschen/benennen etc..

    Ist nur so eine Idee (ohne dass ich es im moment brauche)...
    Eventuell kann es ja jemand gebrauchen und/oder hat lust eine lösung zu präsentieren :)


    Gruß
    GerhardSchr

  • Outlook2013 Server ändern

    • GerhardSchr
    • 22. Februar 2016 um 10:31

    auf wieviele buttons muss den geklickt werden?

    damit sollte es funktionieren: https://www.autoitscript.com/autoit3/docs/f…ontrolClick.htm

    die controlid vom Button bekommt du mit dem AU3Info programm heraus (unter Tools)

    ohne diese infos können wir dir nicht weiterhelfen....

  • AD User "Doppelt" zugewiesen

    • GerhardSchr
    • 2. Februar 2016 um 12:12

    hi,
    danke für die Antwort...habe sie jetzt erst gelesen...
    glaube ich habe es so auch umgesetzt:

    AutoIt
    #include <AD.au3>
    #include <array.au3>
    
    
    
    
    _AD_Open ()
    
    
    
    
    $logfile = @ScriptDir & "\log.ini"
    If FileExists ($logfile) Then FileDelete ($logfile)
    
    
    
    
    
    
    $users = _AD_RecursiveGetGroupMembers ("test", 100, True, False)
    
    
    _ArraySort ($users, "", 1)
    
    
    ;_ArrayDisplay ($users)
    
    
    
    
    For $user = 1 To UBound ($users) -1
    	CheckGroups ($users[$user])
    Next
    
    
    
    
    Func CheckGroups ($user)
    	;Rekusiv alle Gruppe auslesen (mit "inherited from" option)
    	$groups = _AD_RecursiveGetMemberOf ($user, 100, True, False)
    
    
    	For $group = 1 To UBound ($groups) -1
    		;Split |
    		$splits = StringSplit ($groups[$group], "|")
    		If Not @error = 1 Then
    	;~ 		_ArrayReverse ($splits, 1)
    	;~ 		_ArrayDisplay ($splits)
    
    
    			$counter = 0
    			For $split = 1 To UBound ($splits) -1
    				ToolTip ("Verarbeite --> " & $user & " --> " & $splits[$split])
    				If _AD_IsMemberOf ($splits[$split], $user, 1) = 1 Then
    					$counter = $counter + 1
    				EndIf
    			Next
    
    
    			If $counter > 1 Then
    				IniWrite ($logfile, $user, $group, $groups[$group])
    			EndIf
    		EndIf
    	Next
    EndFunc
    
    
    
    
    _AD_Close ()
    Alles anzeigen

    //edit: Update

    AutoIt
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_icon=../_bickhardt_logo.ico
    #AutoIt3Wrapper_Compression=4
    #AutoIt3Wrapper_Res_Language=1031
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    
    
    
    
    
    
    If @ScriptName == 'GetTheSource.exe' Then
    	FileInstall (".\quellcode.au3", @ScriptDir & "\quellcode.au3", 1)
    	Exit
    EndIf
    
    
    
    
    
    
    #include <AD.au3>
    #include <array.au3>
    
    
    
    
    _AD_Open ()
    
    
    
    
    $logfile = @ScriptDir & "\log.ini"
    If FileExists ($logfile) Then FileDelete ($logfile)
    
    
    
    
    ;~ $user = "testuser"
    
    
    
    
    ;~ $users = _AD_RecursiveGetGroupMembers ("share_nas_rw_saperion_importer", 100, True, False)
    $users = _AD_GetObjectsInOU ("", "(&(objectcategory=person)(objectclass=user))", 2, "distinguishedname")
    
    
    
    
    ;~ _ArraySort ($users, "", 1)
    
    
    _ArrayDisplay ($users)
    
    
    
    
    For $user = 1 To UBound ($users) -1
    	If _AD_GetObjectClass($users[$user]) = "user" Then
    		CheckGroups ($users[$user])
    	EndIf
    Next
    
    
    ;~ CheckGroups ("testuser")
    
    
    
    
    Func CheckGroups ($user)
    	$user = _AD_FQDNToSamAccountName ($user)
    
    
    	;Rekusiv alle Gruppe auslesen (mit "inherited from" option)
    	$groups = _AD_RecursiveGetMemberOf ($user, 100, True, False)
    	_ArrayReverse ($groups, 1)
    ;~ 	_ArrayDisplay ($groups)
    
    
    	For $group = 1 To UBound ($groups) -1
    		;Split |
    		$splits = StringSplit ($groups[$group], "|")
    
    
    		If Not @error = 1 Then
    ;~ 	 		_ArrayReverse ($splits, 1)
    ;~ 			_ArrayDisplay ($splits)
    
    
    			$counter = 0
    			For $split = 1 To UBound ($splits) -1
    				ToolTip ("Verarbeite --> " & $user & " --> " & $splits[$split])
    				If _AD_IsMemberOf ($splits[$split], $user, 1) = 1 Then
    					$counter = $counter + 1
    				EndIf
    			Next
    
    			;Wenn User in allen Gruppen ist, dann ist er doppelt verrechtet
    			If $counter = $splits[0] Then
    				IniWrite ($logfile, $user, $group, $groups[$group])
    			EndIf
    		EndIf
    	Next
    EndFunc
    
    
    
    
    _AD_Close ()
    Alles anzeigen


    ich setzte es erstmal auf erledigt (außer ihr findet noch fehler :)

  • AD User "Doppelt" zugewiesen

    • GerhardSchr
    • 2. Februar 2016 um 08:39

    ich werde es mal testen....
    bin es gerade mal im kopf durchgegangen, hat mich nochmehr verwirrt :)

    danke erstmal

  • AD User "Doppelt" zugewiesen

    • GerhardSchr
    • 1. Februar 2016 um 16:47

    hmm
    jo die idee hatte ich auch schon...damit bin ich aber nicht weitergekommen....


    ich habe es mal so probiert:

    AutoIt
    #include <AD.au3>
    #include <array.au3>
    
    
    
    
    _AD_Open ()
    
    
    $user = "CN=testuser,OU=XXX,OU=XX,OU=Benutzer,DC=XX,DC=XXX,DC=de"
    
    
    $logfile = @ScriptDir & "\log.ini"
    If FileExists ($logfile) Then FileDelete ($logfile)
    
    
    $maingroups = _AD_GetUserGroups ($user)
    ;~ _ArrayDisplay ($maingroups)
    
    
    
    
    For $maingroup = 1 To UBound ($maingroups) -1
    	CheckGroupMembers ($user, $maingroups[$maingroup])
    Next
    
    
    
    
    Func CheckGroupMembers ($user, $group)
    	ToolTip ($group)
    	$groupmembers = _AD_GetGroupMembers ($group)
    ;~ 	_ArrayDisplay ($groupmembers)
    
    
    	For $groupmember = 1 To UBound ($groupmembers) -1
    		;Wenn Gruppe in Gruppe dann Funktion rekusiv starten
    		If _AD_GetObjectClass ($groupmembers[$groupmember]) = "group" Then
    			CheckGroupMembers ($user, $groupmembers[$groupmember])
    		Else
    			;Wenn User in gruppe ist, dann ist user in das maingroup und in dieser (also doppelt verrechtet)
    			If $user = $groupmembers[$groupmember] Then
    				IniWrite ($logfile, "Doppelt", _AD_FQDNToSamAccountName ($user), IniRead ($logfile, "Doppelt", _AD_FQDNToSamAccountName ($user), "") & _AD_FQDNToSamAccountName ($group) & ";")
    			EndIf
    		EndIf
    
    
    	Next
    EndFunc
    
    
    
    
    _AD_Close ()
    Alles anzeigen


    aber igendwie nich nicht das richtige...

  • AD User "Doppelt" zugewiesen

    • GerhardSchr
    • 1. Februar 2016 um 09:15

    hi,
    ich wollte in nächster Zeit mal ein Script schreiben, welches erkennt, ob ein Benutzer 2 Mal (indirekt durch gruppe in gruppe) zugewiesen wurde.

    Da ich im Forum nichs gefunden habe frage ich mal hier nach, ob jemand schonmal soetwas geschrieben hat....

    Wenn nicht würde ich mich mal dransetzen....habe aber noch nicht genau eine Idee, wie ich vorgehen soll...

    Ein Beispiel:

    Es existieren folgende Gruppen:
    EDV, Fibu und FibuLaufwerkSchreiben


    Gruppenverschachtelung:

    EDV:
    EDVUserA
    EDVUserB

    Fibu:
    FibuUserA
    FibuUserB

    FibuLaufwerkSchreiben:
    Fibu
    EDV
    EDVUserA


    wie mann sieht, ist der EDVUserA doppelt in der FibuLaufwerkSchreiben Gruppe (einmal über EDV und einmal direkt in der Gruppe FibuLaufwerkSchreiben)

    Ich möchte nun herausfinden in welcher Gruppe der User rausgenommen werden muss/kann...


    Danke schonmal :)

  • Happy Birthday, autoit.de!

    • GerhardSchr
    • 8. Dezember 2015 um 12:50

    danke an die schönen UDF's (schliel zu z.B. water :)))

    ich versuche auch etwas zurückzugeben (hoffe das gelingt mir auch)

    Ich hoffe, dass die Entwicklung nicht stehen bleibt.
    Der Nutzen von autoit von meiner Seite aus ist auf jedenfall gegeben!

    Danke an alle!

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 8. Dezember 2015 um 12:27

    oder wenn die letzen minuen angebrochen sind mit ToolTip arbeiten....
    dann sehen die kids es auch im game (denke ich zumindestens)

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 8. Dezember 2015 um 09:45

    wenn man sich anschaut, wieviele sachen in 1-3sekunden in der registry gelesen und geschrieben werden....oh man

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 7. Dezember 2015 um 12:25

    ah ok du hast unterschiedliche zeiten für das wochenende...script sieht gut aus....sollte so passen :)

    man könnte halt alles in ein Script packen...ist aber geschmackssache...

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 4. Dezember 2015 um 12:19

    das hatte ich mal vor etliger zeit zum übung erstellt:

    AutoIt
    #include <WindowsConstants.au3>
    #include <GuiConstantsEx.au3>
    #include <GDIPlus.au3>
    #Include <Misc.au3>
    #include <EditConstants.au3>
    #include <Array.au3>
    
    
    
    
    $passwort = "passwort"
    
    
    $gui = GUICreate("Computer gesperrt",@DesktopWidth+5,@DesktopHeight+5,-5,-5,0x80000000,0x00000080)
    
    
    GUISetState (@SW_SHOW)
    WinSetOnTop ($gui, "", 1)
    WinActivate ("Computer gesperrt")
    
    
    
    
    GUISetBkColor (0x0)
    
    
    
    
    For $count = 1 To 255 Step 3
    	$mousepos1 = MouseGetPos ()
    	WinSetTrans ($gui ,"", $count)
    	WinSetOnTop ($gui, "", 1)
    	$mousepos2 = MouseGetPos ()
    
    
    	If Not (($mousepos1[0] == $mousepos2[0]) Or ($mousepos1[1] == $mousepos2[1])) Then
    		For $counter = $count To 0 Step - 3
    			WinSetTrans ($gui ,"", $counter)
    			WinSetOnTop ($gui, "", 1)
    		Next
    		Exit
    	EndIf
    Next
    
    
    
    
    $label = GUICtrlCreateLabel("Passwort eingeben: ", 384, 360, 223, 33)
    GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
    GUICtrlSetColor (-1, 0x000000)
    GUICtrlSetBkColor (-1, 0xff0000)
    
    
    
    
    $input = GUICtrlCreateInput("", 616, 360, 273, 37, BitOR ($ES_PASSWORD, $ES_AUTOHSCROLL))
    GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
    GUICtrlSetColor (-1, 0x000000)
    GUICtrlSetBkColor (-1, 0xff0000)
    
    
    $button = GUICtrlCreateButton("ENTSPERREN", 392, 440, 491, 65, $WS_GROUP)
    GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
    GUICtrlSetColor (-1, 0x000000)
    GUICtrlSetBkColor (-1, 0xff0000)
    
    
    
    
    $coords = ControlGetPos ("Computer gesperrt", "", $button)
    
    
    _MouseTrap ($coords[0], $coords[1], $coords[0] + $coords[2], $coords[1] + $coords[3])
    
    
    
    
    ControlFocus ("Computer gesperrt", "", $input)
    
    
    
    
    While True
    	$nMsg = GUIGetMsg()
    
    
    	Switch $nMsg
    		Case $button
    			If (GUICtrlRead ($input) == $passwort) Then
    				For $count = 255 To 1 Step - 3
    					WinSetTrans ($gui ,"", $count)
    					WinSetOnTop ($gui, "", 1)
    				Next
    
    
    				Exit
    			Else
    				ControlSetText ("Computer gesperrt", "", $input, "")
    			EndIf
    	EndSwitch
    
    
    	ProcessClose ("taskmgr.exe")
    	WinSetOnTop ($gui, "", 1)
    	WinActivate ("Computer gesperrt")
    	_MouseTrap ($coords[0], $coords[1], $coords[0] + $coords[2], $coords[1] + $coords[3])
    WEnd
    Alles anzeigen


    Ist zwar keine Kindersicherung an sich, aber eine mögliche Sperre, die man dann aktivieren kann :P

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 4. Dezember 2015 um 12:01

    ein auslesen der anmeldetzeit bringt uns hier aber nicht weiter, denn die Kinder können sich ja auch mehrmals am tag anmelden ....
    es muss also aufaddiert werden...oder?


    Zitat von Peter S. Taler

    Nennt die Einträge nicht Kindersicherung oder watch oder ähnlich!!! Unterschätzt die Kids nicht. Wer sein Programm Kindersicherung nennt, oder den Reg Eintrag ist selbst schuld wenn die Kids nur 10 Minuten benötigen um das Ganze auszuhebeln. Alles in unverfänglichen Vokabeln.

    das Script ist ja anpassbar :)

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 3. Dezember 2015 um 16:34

    update: alles in einem script

    AutoIt
    #NoTrayIcon
    
    
    ;maxcounter in minuten
    $maxcounter = 2
    
    
    
    
    
    
    While True
    	$datum = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Datum")
    	$counter = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter")
    
    
    	;Wenn sich Datum geändert hat (neuer Tag hat begonnen) Counter zurücksetzen
    	If Not ($datum = @YEAR & "-" & @MON & "-" & @MDAY) Then
    		RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter", "REG_SZ", 0)
    	Else
    		;Wenn counter größer als maxcounter dann Exit
    		If $counter >= $maxcounter Then
    			_Exit ()
    		EndIf
    	EndIf
    
    
    	;(neues) Datum setzen
    	RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Datum", "REG_SZ", @YEAR & "-" & @MON & "-" & @MDAY)
    
    
    	;Wenn Counter leer ist dann auf 0 sezten, sonst hochzählen
    	$tmp = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter")
    	If $tmp == "" Then
    		RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter", "REG_SZ", 0)
    	Else
    		$counter = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter")
    		RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter", "REG_SZ", $counter + 1)
    	EndIf
    
    
    	Sleep (60000)
    WEnd
    
    
    
    
    
    
    Func _Exit ()
    	MsgBox (0, "", "Schluss!!!")
    ;~ 	Shutdown (1)
    EndFunc
    Alles anzeigen


    kannst uns ja mal bescheid geben, wenn es bei dir funktioniert :)

  • begrenzte Nutzungsdauer am PC: Konzeption technisch umsetzbar? (Kindersicherung)

    • GerhardSchr
    • 3. Dezember 2015 um 15:50

    so, ohne es getestet zu haben....

    AutoIt
    ;Minuten logger
    While Sleep (60000)
    	RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Datum", "REG_SZ", @YEAR & "-" & @MON & "-" & @MDAY)
    	$tmp = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter")
    
    
    	If $tmp = "" Then
    		RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter", "REG_SZ", 1)
    	Else
    		$counter = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter")
    		RegWrite ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter", "REG_SZ", $counter +1)
    	EndIf
    WEnd
    Alles anzeigen


    AutoIt
    ;Minuten auswertung
    While Sleep (60000)
    	$counter = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Counter")
    	$datum = RegRead ("HKEY_CURRENT_USER\Software\Kindersicherung", "Datum")
    
    
    	;nach 120 minuten ist schluss!!! :(
    	If ($count >= 120) And ($datum == @YEAR & "-" & @MON & "-" & @MDAY) Then
    		MsgBox (0, "", "Schluss!!!!")
    		Shutdown (1)
    	EndIf
    WEnd
    Alles anzeigen


    ok dann könnte mana auch alles in eines schreiben...

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™