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

Beiträge von MadCatz

  • Unter-Unter-Menu erstellen

    • MadCatz
    • 24. Februar 2016 um 09:05

    Danke Leute :thumbup:

    Das war ja irgendwie einfacher als ich es gedacht habe :D

  • Unter-Unter-Menu erstellen

    • MadCatz
    • 23. Februar 2016 um 15:17

    Hallo Zusammen,

    ich würde gern ein Menu anlegen, welches so ausschaut: Extras->Language-> English/Deutsch

    Nach meinem Code wird das allerdings alles unter Extras angelegt und nicht unter Language.

    Kann mir jemand behilflich sein?

    Viele Grüße,
    MadCatz

    AutoIt
    Global $Menu = GUICtrlCreateMenu("Extras")
    Global $MenuItemPrimary = GUICtrlCreateMenuItem("Language", $Menu)
    Global $MenuItemSecundary = GUICtrlCreateMenuItem("English",$MenuItemPrimary,-1,1)
    Global $MenuItem = GUICtrlCreateMenuItem("German",$MenuItemPrimary,-1,1)
  • Prüfe welche Maustaste die Primäre ist

    • MadCatz
    • 23. Februar 2016 um 15:07

    mit fileread bekomme ich aj keine pdf oder xls geöffnet, daher kann ich die nicht verwenden.

    Wenns dafür natürlcih ne schöne Lösung hinbekommen würde, ohne das ganze auf die Festplatte auszulagern, wäre das natürlcih deutlcih besser, da geb ich dir vollkommen recht.

    :thumbup:

  • Prüfe welche Maustaste die Primäre ist

    • MadCatz
    • 23. Februar 2016 um 13:37
    Zitat von Xorianator

    Tut nicht genau FileRead eben selbiges? Und die Crypt Funktionen übergeben doch sowieso wieder Daten in den Speicher, nicht auf die Festplatte?

    Verstehe leider nicht was du meinst

  • Prüfe welche Maustaste die Primäre ist

    • MadCatz
    • 23. Februar 2016 um 08:53

    Das öffnen von anderen Anwendungen/Fenstern wird geblockt. Das schließen des Scripts wird geblockt. Nur bestimmte Tasten werden zugelassen.
    Alle Versuche eines Users, die Warnhinweise auszulassen führen dazu, dass die Datei mit einem Randomkey verschlüsselt.

    Ein normalsterblicher Anwender wird es wohl kaum hinbekommen die Verschlüsseleung auszuhebeln, ohne sich damit zu beschäftigen.


    Die Idee mit dem Ram find ich gut, wusste gar nicht, dass es dazu schon ne UDF gibt :thumbup: Werd ich mir mal ansehen.

  • Prüfe welche Maustaste die Primäre ist

    • MadCatz
    • 22. Februar 2016 um 10:47

    @BugFix und @eukalyptus vielen Dank für eure Codes :) Die sind genau das was ich brauche :)

    @Xorianator ich weiß wie ich Str+C verhindern kann, aber die Mous war halt das Problem.

    Ich brauche das, da ich den kompletten kopierversuch verhindern will. Server kommt nicht Infrage. Die Dateien sollen Lokal verwendet werden können. Sind allerdings verschlüsselt, wenn nicht verwendet. Wenn die verwendet werden, sind sie entschlüsselt und in dem Fall könnte man diese Kopieren, und das muss ich abfangen. Dazu werd ich soviele Wege wie möglich verhindern, sodass sich das unerlaubte kopieren der Datei ohne Aufwand erst gar nicht mehr lohnt.


    Ich Danke euch :)

    PS: Server kommt nicht in Frage, muss alles local ablaufen

  • Prüfen ob eine Datei geöffnet ist

    • MadCatz
    • 22. Februar 2016 um 08:02
    Zitat von misterspeed

    Nun ohne es genau zu wissen könnte ich mir vorstellen, dass Notepad die Datei nicht sperrt bzw. geöffnet hält, sondern lediglich einmalig einliest und die Datei dann bis zum Speichervorgang geschlossen lässt. Eine Prüfung ob die Datei von einem Programm "geöffnet" ist und bearbeitet wird ist in solch einem Fall jedenfalls nicht möglich. Daher wäre es vielleicht noch interessant was genau der TE mit der Prüfung überhaupt sicherstellen möchte.


    Geht überwiegend um PDF, Word, Excel, Powerpoint Dateien, daher ist es kein Problem, dass Notepad nicht klappt ^^

  • Prüfen ob eine Datei geöffnet ist

    • MadCatz
    • 22. Februar 2016 um 08:01
    Zitat von Kanashius

    Das was er da gemacht hat nennt man Testprogramm. Dort wird dir gezeigt, wie die Funktion funktioniert. Der Aufruf steht dort.
    Sieh dir das Beispiel doch mal genau und vernünftig an ;)

    Hi, wenn du mein Edit gelesen hättest hättest du bemerkt, dass ich es nochmal durchgelesen hab ;)

  • Prüfe welche Maustaste die Primäre ist

    • MadCatz
    • 22. Februar 2016 um 07:59

    Hi,

    ich muss das KontextMenü von Windows verhindern, da ich nicht will, dass man hierrüber eine Datei einfach kopieren kann.
    Da man das aushebeln kann, indem man einfach links mit rechts tauscht muss ich wissen welche Taste die Primäre ist, damit die Sekundäre unterdrückt wird.

    mir _ispreset(02) frag ich nämlich ja nur ab, ob die rechte geklickt wurde.

  • Prüfe welche Maustaste die Primäre ist

    • MadCatz
    • 21. Februar 2016 um 19:20

    Hallo Leute,

    kurze Frage: Gibt es die Möglichkeit auszulesen, welche Maustaste die momentane Primäre ist, also ob links mit rechts getauscht wurde?


    Viele Grüße,
    MadCatz

  • Prüfen ob eine Datei geöffnet ist

    • MadCatz
    • 21. Februar 2016 um 18:27

    Hi, erstmal Danke für deine Hilfe :)


    Aber bei deinem Skript gehst du ja hin und öffnest mit FileOpen die Datei, ich will die Datei aber nicht per Script öffnen, sondern nur abfragen, ob eine bestimmte Datei geöffnet ist.

    Korrigiere mich bitte, falls ich da falsch liege :)


    Gruß,
    MadCatz

    Edit:

    Sorry, habs grad gesehen :D alles richtig :)

  • Prüfen ob eine Datei geöffnet ist

    • MadCatz
    • 20. Februar 2016 um 18:08
    Code
    if _FileInUse("Dateiname", 0) then
    ....
    else
    ....
    endif
  • Prüfen ob eine Datei geöffnet ist

    • MadCatz
    • 19. Februar 2016 um 19:21

    Hallo Leute,

    ich war auf der suche nach einer Lösung zur Überprüfung, ob eine Datei geöffnet wurde.
    Dabei kam ich bei :

    cmd openfiles an

    Allerdings dauert der Ausleseprozess in cmd ziemlich lange und benötigt zudem auch noch Adminrechte, was das ganze leider ziemlich unbrauchbar macht.

    Schließlich stieß ich dann auf diesen Code:

    AutoIt
    ;===============================================================================
    ;
    ; Function Name:    _FileInUse()
    ; Description:      Checks if file is in use
    ; Syntax.........: _FileInUse($sFilename, $iAccess = 1)
    ; Parameter(s):     $sFilename = File name
    ; Parameter(s):     $iAccess = 0 = GENERIC_READ - other apps can have file open in readonly mode
    ;                   $iAccess = 1 = GENERIC_READ|GENERIC_WRITE - exclusive access to file,
    ;                   fails if file open in readonly mode by app
    ; Return Value(s):  1 - file in use (@error contains system error code)
    ;                   0 - file not in use
    ;                   -1 dllcall error (@error contains dllcall error code)
    ; Author:           Siao
    ; Modified          rover - added some additional error handling, access mode
    ; Remarks           _WinAPI_CreateFile() WinAPI.au3
    ;===============================================================================
    Func _FileInUse($sFilename, $iAccess = 0)
        Local $aRet, $hFile, $iError, $iDA
        Local Const $GENERIC_WRITE = 0x40000000
        Local Const $GENERIC_READ = 0x80000000
        Local Const $FILE_ATTRIBUTE_NORMAL = 0x80
        Local Const $OPEN_EXISTING = 3
        $iDA = $GENERIC_READ
        If BitAND($iAccess, 1) <> 0 Then $iDA = BitOR($GENERIC_READ, $GENERIC_WRITE)
        $aRet = DllCall("Kernel32.dll", "hwnd", "CreateFile", _
                                        "str", $sFilename, _ ;lpFileName
                                        "dword", $iDA, _ ;dwDesiredAccess
                                        "dword", 0x00000000, _ ;dwShareMode = DO NOT SHARE
                                        "dword", 0x00000000, _ ;lpSecurityAttributes = NULL
                                        "dword", $OPEN_EXISTING, _ ;dwCreationDisposition = OPEN_EXISTING
                                        "dword", $FILE_ATTRIBUTE_NORMAL, _ ;dwFlagsAndAttributes = FILE_ATTRIBUTE_NORMAL
                                        "hwnd", 0) ;hTemplateFile = NULL
        $iError = @error
        If @error Or IsArray($aRet) = 0 Then Return SetError($iError, 0, -1)
        $hFile = $aRet[0]
        If $hFile = -1 Then ;INVALID_HANDLE_VALUE = -1
            $aRet = DllCall("Kernel32.dll", "int", "GetLastError")
            ;ERROR_SHARING_VIOLATION = 32 0x20
            ;The process cannot access the file because it is being used by another process.
            If @error Or IsArray($aRet) = 0 Then Return SetError($iError, 0, 1)
            Return SetError($aRet[0], 0, 1)
        Else
            ;close file handle
            DllCall("Kernel32.dll", "int", "CloseHandle", "hwnd", $hFile)
            Return SetError(@error, 0, 0)
        EndIf
    EndFunc
    Alles anzeigen

    Leider hab ich das Gefühl, dass der Code nicht wirklich funktionert, denn wenn ich hier per IF-Else-Abfrage abfrage, ob eine bestimmte Datei geöffnet ist, bekomme zu aller erst gesagt, dass $iAccess zuvor nicht deklariert wurde, bzw erhalte ich immer die Info, dass die gesuchte Datei geöffnet ist, egal ob dies zutrifft oder nicht.

    Vielleicht kann mich jemand aufklären, an welcher Stelle mein Kopf gerade quer steht :)


    Euer,
    MadCatz

  • Chatbot (jetzt auch mit logischem Denken)

    • MadCatz
    • 17. Februar 2016 um 10:17

    ok, dass hat ich nicht gesehen :D

    danke autoBert ;)

    Dann werd ich einfach mal bei 0 anfangen und alles ohne einen vorherigen blick zu riskieren schreiben ^^

  • Chatbot (jetzt auch mit logischem Denken)

    • MadCatz
    • 17. Februar 2016 um 07:34

    Hi, ich weiß der Post ist schon ziemlich alt, aber gibt es auch eine ensprechende AU3 mit Database um sich deine Arbeit mal anzusehen?

    :)

    Wäre nämlich sehr interessant das Ganze mal in Action zu erleben :)


    Viele Grüße,
    MadCatz

  • Plex-Notificator

    • MadCatz
    • 5. Februar 2016 um 11:00

    So ich bins wieder mein PC läuft endlich wieder :)

    Hab jetzt leider eiige Probleme mit dem Code, die vorher nicht waren, bin dabei diese zu finden und zu neutralisieren!


    Edit:

    Die erste komplette Version (v.0.8.0.0) ist fertig und befindet sich in der Testphase.

    Feautres der Version:
    - Checkt ob Plex berites gestartet wurde, falls nicht bietet euch "Plex-Notificator" an Plex-Media-Server für euch zu starten
    - Checkt die beiden angelegte Excel Tabellen (Filme und Serien) auf neuen Inhalt
    - Wenn neuer Inhalt gefunde wurde wird Outlook gestartet und zuvor eingetragene E-Mail Kontakte darüber Informiert (Film-/Serien-Titel, Qualität [Bild und Ton], Erscheinungsjahr oder Staffel)
    -Legt eine Sicherung der Exceldatei und aller anderen benötigten Konfigurationsdateien an, falls einmal ein Fehler auftreten sollte.


    Gruß,
    MadCatz

  • Plex-Notificator

    • MadCatz
    • 1. Februar 2016 um 12:05

    Hey Zusammen,

    also ein Update gibt es, sofern mein PC wieder funktioniert, Win10 da einiges zerlegt -.-!

    Sobald alles wieder läuft melde ich mich wieder und stelle euch schon einmal die bisherige Funktionsweise vor.

    Bisher sind jedoch zwingend MS Outlook und Excel notwendig

    Viele Grüße,
    MadCatz

  • Plex-Notificator

    • MadCatz
    • 20. Januar 2016 um 10:13

    Hallo Leute,

    ich bins MadCatz :)

    Wie der Titel verrät bin ich momentan damit beschäftigt einen Plex-Notificator zu schreiben, da es so etwas noch nicht selbst von Plex gibt.
    Für alle die nicht wissen, was Plex ist:

    Plex ist Dienst, der webbasiert und/oder anwendungsbasiert einen eigenen Mediaserver fürs Heimnetzwerk bereitsstellt und wenn der Internetprovider unterstützt auch über das Web erreichbar ist.


    Jedenfalls bastell ich gerade an einem Script, dass allen Usern, die mit dem Server verbundenen sind, eine Info gibt, dass der Server nun Online und erreichbar ist und die Inhalte abgerufen werden können.
    Zudem wird den verbundenen Usern mitgeteilt, wenn auf dem Server neue Filme, Serien oder Musik verfügbar für den Stream sind.


    Ich bin noch in der Alphaphase und das Script ist momentan explizit auf meine eigenen Bedürfnisse zugeschnitten, da ich aber davon ausgehe, dass mehr Personen als nur ich auf der suche sind nach einem solchen Tool habe ich mich einmal dran gesetzt :thumbup:
    Wenn die Alphaphase vorbei ist, werde ich das Script für die Allgemeinheit anpassen, sodass jeder der sich für den Einsatz des Tool interessiert dieses auch verwenden kann :)

    PS: Die Anwendung funktionert bereits einwandfrei, ist aber bisher nur auf Filme ( der Rest folgt noch!) und ein E-Mailprogramm zugeschnitten. :D

    Viele Grüße,
    MadCatz

  • Array Datensätze Vergleichen

    • MadCatz
    • 15. Januar 2016 um 08:48
    Code
    $File = FileExists("C:\Users\Compare.ini")
    		$a = Ubound($Range_Data)-2
    		$b = Ubound($Range_Data)-1
    			MsgBox(0,0,$a & " | " & $b,0)
    		If Not $File then
    			$Write = IniWrite("C:\Users\Compare.ini", "Filme",$b, "leer")
    			$Read = IniReadSection("C:\Users\Compare.ini", "Filme")
    					_ArrayDisplay($Read)
    					$c = Ubound($Read)-2
    					$d = Ubound($Read)-1
    					MsgBox(0,0, $c & " | " & $d,0)
    					$R= $Read[$c][0]
    					$Q = $Read[$d][0]
    					MsgBox(0,"Hi", $R & " | " & $Q,0)
    						If $R = $Q then
    							MsgBox(0,0, "Kein neuer Content", 0)
    						Elseif $R < $Q then
    							For $i = $R to $Q
    								$M = $Range_Data[$i][0]
    								MsgBox(0,0,$M,0)
    							Next
    						EndIf
    		Elseif $File Then
    			If $a <> $b then
    				$Read = IniReadSection("C:\Users\Compare.ini", "Filme")
    				$d = Ubound($Read)-1
    				$Q = $Read[$d][0]
    				If $b <> $Q Then
    					MsgBox(0,0,$b & " | " & $Q ,0)
    					IniWrite("C:\Users\Compare.ini", "Filme", @CR & $b, "leer")
    					$Read = IniReadSection("C:\Users\Compare.ini", "Filme")
    					_ArrayDisplay($Read)
    					$c = Ubound($Read)-2
    					$d = Ubound($Read)-1
    					MsgBox(0,0, $c & " | " & $d,0)
    					$R= $Read[$c][0]
    					$Q = $Read[$d][0]
    					MsgBox(0,"Hi", $R & " | " & $Q,0)
    						If $R = $Q then
    							MsgBox(0,0, "Kein neuer Content", 0)
    						Elseif $R < $Q then
    							For $i = $R to $Q
    								$M = $Range_Data[$i][0]
    								MsgBox(0,0,$M,0)
    							Next
    						EndIf
    Alles anzeigen

    Läuft, muss natürlich noch Sinvoll in eine Funktion gepackt werden, da ich den Code noch mehrmals verwenden werden muss, hier wird er a scon 2x verwendet


    Schließe jetzt den Beitrag ;)

  • Array Datensätze Vergleichen

    • MadCatz
    • 15. Januar 2016 um 08:12

    Hi Leute,

    ich hab das Problem gestern noch alleine gelöst :)
    Musste mir mal den Kopf frei schreiben, und quasi anderen mein Problem erklären, damit ich wusste wie ich es lösen kann :)

    Mein fertigest Script werde ich euch heute Mittag noch reinstellen, damit ihr wisst, wie ich es gelöst habe :)


    Ich danke euch das ihr euch die Zeit genommen habt, um mir zu Antworten ;)

    Vielen Dank

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™