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

Beiträge von Banana_2_Day

  • Grafikspezialisten - GDIplus - kreisrundes Menü

    • Banana_2_Day
    • 23. August 2019 um 10:32

    Danke - das sind gute Nachrichten!

    Zitat von BugFix

    Kannst du auch schnell selbst schreiben:

    - Verzeichnis mit *.au3 in Array lesen

    - für jede Datei:

    -- Datei lesen - Stringreplace(Variblaname_alt, Variablename_neu) - Datei überschreiben und schliessen

    Nutzt Du selbst so eine Datei oder gibt es tendenziell eher wenige Skripte von früher, die aktualisiert werden?

  • Grafikspezialisten - GDIplus - kreisrundes Menü

    • Banana_2_Day
    • 22. August 2019 um 08:32

    Vielen Dank für Eure hilfreichen Beiträge. Das Skript läuft. :)

    Zitat von Mars

    bei allen _IsPressed() Funktionen ein "02

    Ein guter Gedanke.


    Zitat von water

    $ghGDIPdll zu $__g_hGDIPdll umbenennen.

    Die als "already defined" markierten Funktionen einfach aus dem Skript entfernen. Sind bereits in einer UDF drin.

    Gibt es ein Skript, welches ältere Skripte automatisch auf Zeilen überprüft, die bei Verwendung der aktuellen AutoIt Version entfernt oder umbenannt werden müssen?

    Oder eine Art tabellarische Übersicht, wo ich nachschlagen kann?

  • Grafikspezialisten - GDIplus - kreisrundes Menü

    • Banana_2_Day
    • 21. August 2019 um 21:22

    Hallo,

    auf der Suche nach einem kreisrunden Menü bin ich auf folgendes Script im englischsprachigen Forum gestoßen.

    https://www.autoitscript.com/forum/topic/12…#comment-863309

    Das Script gibt es im genannten Beitrag unter

    https://www.autoitscript.com/forum/applicat…nt.php?id=42825

    Es ist von 2011 / 2013.


    Schafft es jemand von Euch, dass Script lauffähig umzuschreiben? Für das Kreismenü liegen die Bilder und eine Photoshop Vorlage bei.

    PS: Gibt es hier im Forum bereits eine interessante Alternative zu einem kreisrunden Menü?

    Code
    Fehlermeldungen
    
    error: _GDIPlus_ImageClone() already defined.
    Func _GDIPlus_ImageClone($hImage)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    warning: $ghGDIPDll: possibly used before declaration.
        Local $aResult = DllCall($ghGDIPDll,
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    error: _GDIPlus_ImageGetThumbnail() already defined.
    Func _GDIPlus_ImageGetThumbnail($hImage, $iWidth, $iHeight)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    error: $ghGDIPDll: undeclared global variable.
        Local $aResult = DllCall($ghGDIPDll,
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    3 error(s), 1 warning(s)
    Alles anzeigen
  • Checkbox schalten über das Internet - vergleichbar mit Schach online

    • Banana_2_Day
    • 13. August 2019 um 18:03
    Zitat von Oscar

    Button zum connecten mit dem Server

    Nach kurzer Einarbeitung funktionierte das Skript sofort. Danke Oscar!

  • Checkbox schalten über das Internet - vergleichbar mit Schach online

    • Banana_2_Day
    • 12. August 2019 um 21:30
    Zitat von Oscar

    Wenn man die Checkbox beim Client (de-)aktiviert, wird sie auch beim Server (de-)aktiviert.

    Auf lokaler Ebene funktioniert das 1a.

    Ich habe versucht, das ganze für einen Zugriff übers Internet umzuschreiben.

    Ich habe mich hoffnungslos in Endlos-Schleifen verfangen.

    Kannst Du Dein Skript ein wenig dahingehend umschreiben, dass es geteilt ist in Client und Server?

    Ein Verbindungsaufbau soll erst dann gestartet werden, wenn auf beiden Rechnern das Programm gestartet wurde.

    Port im Router habe ich freigeschaltet.

    Global $sIPAddress = "test.ddns.net"

    If @Computername = "A" Then

    $PC = "Server"

    Else

    $PC = "Client"

    EndIf

    Ich versuche zwischenzeitlich weiterzukommen. Wenn ich erfolgreich bin, ergänze ich meinen Post.

  • Pfad - vor oder nach einem Backslash etwas einfügen

    • Banana_2_Day
    • 12. August 2019 um 18:27
    Zitat von Oscar

    StringRegEx wäre auch noch eine Möglichkeit:

    Danke Oscar, die reguläre Suche gehört für mich zu den schwierigsten und gleichzeitig elegantesten Lösungen.

  • Pfad - vor oder nach einem Backslash etwas einfügen

    • Banana_2_Day
    • 12. August 2019 um 16:52
    Zitat von Musashi

    Du könntest auch den Weg über ein Array gehen

    Danke Musashi, die Idee mit dem Array gefällt mir als Alternative.

  • Pfad - vor oder nach einem Backslash etwas einfügen

    • Banana_2_Day
    • 12. August 2019 um 14:54
    Zitat von BugFix

    Die Position des gewünschten Backslash ermitteln.

    Danke für die Anregung. Ich habe den Text mit StringLeft / StringRight zerlegt und wieder zusammengesetzt.

    Das funktioniert und wäre eine Lösungsvariante, um "c:\1 test\Backup\1 test\1 test.txt" zu erhalten.

    Gibt es eine bessere Möglichkeit, um aus

    $sText = "c:\1 test\1 test\1 test\1 test.txt"

    $sText = "c:\1 test\Backup\1 test\1 test.txt"

    zu erhalten? (Ersetze den Text zwischen dem zweiten und dritten Backslash.)

    StringMid und StringReplace habe ich versucht. Wenn ich in der Hilfe richtig gelesen habe, wird nur die "Position des Zeichens, an der das Ersetzen beginnt." verwendet.

    Wie integriere ich bei diesen beiden Befehlen und meinem Beispiel die „Position des Zeichens, an dem das Ersetzen endet“?

    Gibt es einen alternativen Befehl für ...

    Ersetze den Text im String von Zeichen 7-12 durch „Backup“?

  • Pfad - vor oder nach einem Backslash etwas einfügen

    • Banana_2_Day
    • 12. August 2019 um 11:14

    Hallo,

    ich habe einen Pfad

    $Datei_alt = "c:\1\2\3\4\5\test.txt"

    Was ist der beste Weg, um mit AutoIt vor bzw. nach dem 1., 2. .... letzten Backslash etwas einzufügen

    bzw. zwischen dem 3. und 5. Backslash den Text auszutauschen?

    Beispiele, was ich erreichen möchte:

    einfügen

    $Datei_alt = "c:\1\2\3\4\5\test.txt"

    $Datei_neu = "c:\Backup\1\2\3\4\5\test.txt"

    $Datei_neu = "c:\1\2\3\4\5 - Backup\test.txt"

    $Datei_neu = "c:\1\2\Backup - 3\4\5\test.txt"

    ersetzen zwischen Backslash 3 bis 5

    $Datei_alt = "c:\1\2\3\4\5\test.txt"

    $Datei_neu = "c:\1\2\Backup\5\test.txt"


    Die Anzahl der Backslash Zeichen habe ich ermittelt über

    Code
    $sString = "\"
    $sText = "c:\1\2\3\4\5\test.txt"
    StringReplace( $sText , $sString, "")
    $iAnzahl = @extended
    MsgBox(0, "", "Anzahl: " & $iAnzahl)
  • Checkbox schalten über das Internet - vergleichbar mit Schach online

    • Banana_2_Day
    • 12. August 2019 um 10:58

    Vielen Dank Oscar, das sieht sehr interessant aus.

  • Checkbox schalten über das Internet - vergleichbar mit Schach online

    • Banana_2_Day
    • 31. Juli 2019 um 19:56
    Zitat von Musashi

    das von BugFix angesprochene Beispiel

    Danke. Ich glaube, folgendes ist es - ich lese mich gerade ein.Eine neue Erfahrung.

    Interprozesskommunikation

  • Checkbox schalten über das Internet - vergleichbar mit Schach online

    • Banana_2_Day
    • 31. Juli 2019 um 17:03
    Zitat von BugFix

    Schau mal in der Hilfe die Bsp. zu TCPRec() oder auch UDPRec() an. Du brauchst in beiden Fällen Server und Client um Daten in beiden Richtungen senden und empfangen zu können.

    Vielen Dank. Ich habe ein wenig Grundlagen-Erfahrungen.

    Ich kann mit AutoIt übers Internet Dateien senden und abrufen (Router, Portfreigabe ...).

    Habe bisher kein einfaches AutoIt Online-Schach-Script oder "Schiffe versenken" gefunden.

    Bei diesen Spielen werden wechselseitig Daten übertragen und die Oberfläche aktualisiert.

    Dachte, ich könne dort etwas über die wechselseitige Aktualisierung der Daten übers Internet erfahren.

    Das einfachste Script wäre eine geteilte Oberfläche für Rechner A und B und je einem lächelnden und einem weinenden :-).

    Jeder kann auswählen, wie es ihm geht und wenn beide ein positives oder negatives :) ausgewählt haben, wird bei beiden eine entsprechende Musik abgespielt :)

  • Variable - aus Buchstabe eine Ziffer - Logik Spalten Excel

    • Banana_2_Day
    • 31. Juli 2019 um 15:14

    Vielen Dank water, das hat auf Anhieb funktioniert.

  • Checkbox schalten über das Internet - vergleichbar mit Schach online

    • Banana_2_Day
    • 31. Juli 2019 um 15:11

    Hallo,

    auf einer AutoIt-Oberfläche gibt es 2 Checkboxen (später viel mehr).

    (x) Brot

    (x) Butter

    Wird eine Checkbox angeklickt, ändert sich der Status checked <-> unchecked.

    Solange die Anwendung auf einem Computer läuft, ist das kein Problem.

    Ich suche eine Lösung, wie das ganze bei zwei Computern über eine Internetverbindung funktionieren kann.

    Die IP des entfernten Computers ist bekannt.

    A ändert den Status einer Checkbox und auf beiden Computern A und B ist der neue Status zu sehen.

    B ändert den Status einer Checkbox und auf beiden Computern A und B ist der neue Status zu sehen.

    Wie synchronisiere ich auf diese Weise die Anzeige von der Oberfläche zwei Programme über das Internet?

    Welche Beispiele kennt Ihr, die ich mir hierzu ansehen kann?

    Im Prinzip müsste das genauso funktionieren, wie zum Beispiel ein Schachprogramm über das Internet.

    Wobei wahrscheinlich in einem Schachprogramm viel zu viele Scriptzeilen stecken, um das zu verstehen.

  • Variable - aus Buchstabe eine Ziffer - Logik Spalten Excel

    • Banana_2_Day
    • 31. Juli 2019 um 14:40

    Hallo,

    die Spalten-Beschriftungen in Excel besteht aus Buchstaben.

    A-Z

    dann

    AB-AZ

    BA-BZ

    ...

    ZA-ZZ

    dann

    AAA-AAZ

    Ich suche eine Lösung, wie ich die Buchstabenwerte A bis ZZ.in Zahlenwerte bekomme.

    Ich möchte die Variable $col mit einer Ziffer belegen.

    Mein bisheriger Versuch ist nicht praktikabel, weil ich dann extrem viele Case-Zweige anlegen müsste.

    Code
    Select
    
    Case $Spalte = "A"
    
    $col = 1
    
    ...
    
    Case $Spalte = "F"
    
    $col = 6
    
    Case $Spalte = "G"
    
    $col = 7
    
    ...
    
    Case $Spalte = "K"
    
    $col = 11
    Alles anzeigen

    Hat jemand eine Lösung, wie man das ganze in eine logische Formel bringen kann?

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™