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

Beiträge von cobain86

  • Classe aus website auslesen und clicken

    • cobain86
    • 25. April 2014 um 12:03

    hi
    ich habe auf einer website ein button der in einem DIV nur so eingebunden ist:

    <span class="button_buy"></span>


    das Image kann ich leider auch nicht auslesen das dies als Background eingebunden wurde.

    habt ihr eine Möglichkeit wie ich die span class auslesen kann damit hierauf im IE ein Click folgt?

  • GUI Sperren solange command ausgeführt wird

    • cobain86
    • 17. März 2013 um 12:47

    hi

    gibt es eine mögichkeit eine GUI zu sperren solange ein command ausgeführt wird? also das ich in der GUI auf start drücke, dann sperrt sich die GUI so lange bis das cmd im hintergrund ausgeführt wurde und dann entsperrt sich die GUI wieder bzw. es wird in der GUI "Bitte Warten" angezeigt

  • txt zeile mit Endung rauswerfen

    • cobain86
    • 17. März 2013 um 11:55

    autoBert
    klappt! Danke
    jetzt muss ich den code nur noch verstehen

  • txt zeile mit Endung rauswerfen

    • cobain86
    • 16. März 2013 um 14:06
    Zitat von Make-Grafik

    Lies einfach jede Zeile der *.txt einzelnd ein, und überprüfe dann mit einem StringRegExp Pattern ob die Datei eine Dateiendung hat.
    Hatte schonmal sowas geschrieben. Ich suche es mal eben auf mein rechner bzw. Tippe es neu...

    Achja, speicher in einer Variable die Zeilennummer,... Kannst dann den Text ersetzen.


    €dit:
    Machs dir doch noch einfacher... Lies jede Zeile einzelnd aus und überprüfe ob sich ein Punkt " . " im String befindet. Wenn ja, hat es definitiv eine Dateiendung ^^
    Vorraussgesetzt der Aufbau bleibt so gleich...


    no das geht nicht
    da auch die einzelnen ordner nach dem \ einen punkt haben!
    aber ich könnte es so machen das alle zeilen die auf \. enden bestehen bleiben und der rest gelöscht wird.

  • txt zeile mit Endung rauswerfen

    • cobain86
    • 16. März 2013 um 12:27

    ich hab was gefunden
    muss es nur noch anpassen das es für endungen .xxx. gilt(also beliebige)

    [autoit]


    Global $_Array
    _FileReadToArray ( 'ACL.txt', $_Array )
    $_Array = _DeleteArrayElementWithStringInstr ( $_Array, '.mp3.' )
    _FileWriteFromArray ( 'ACL.txt', $_Array, 1 )
    Func _DeleteArrayElementWithStringInstr ( $_Array, $_String )
    Local $_Item
    For $_Element In $_Array
    If StringInStr ( $_Element, $_String ) <> 0 Then
    _ArrayDelete ( $_Array, $_Item )
    Else
    $_Item+=1
    EndIf
    Next
    Return ( $_Array )
    EndFunc ;==> _DeleteArrayElementWithStringInstr ( )

    [/autoit]
  • txt zeile mit Endung rauswerfen

    • cobain86
    • 16. März 2013 um 12:10

    hi
    ich habe mir ein kleines tool gebaut mit dem ich ACL Berechtigungen pro Ordner inkl. unterordner pro Benutzername/Gruppe auswählen kann.

    die ausgabe erfolgt wie foglt

    [autoit]

    Local $output
    FileDelete("ACL.txt")
    Local $file = FileOpen("ACL.txt", 1)
    ConsoleWrite($MyCommand)
    While 1
    $output = StdoutRead($foo)
    If @error Then ExitLoop
    If $file = -1 Then
    MsgBox(0, "Error", "Unable to open file.")
    Exit
    EndIf
    FileWrite($file, $output)
    WEnd
    FileClose($file)

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

    ShellExecute('notepad.exe', "ACL.txt")

    [/autoit]

    Das klappt auch ganz gut. ich kann vor dem command wählen ob mit oder ohne unterordner.
    Die Ausgabe der TXT sieht dann wie folgt aus

    Zitat

    SID gefunden: C:\Users\username\Desktop\test\.
    SID gefunden: C:\Users\username\Desktop\test\hallo.txt
    SID gefunden: C:\Users\username\Desktop\test\Thumbs.db.
    SID gefunden: C:\Users\username\Desktop\Application\
    SID gefunden: C:\Users\username\Desktop\Application\test.txt
    5 Dateien erfolgreich verarbeitet, bei 0 Dateien ist ein Verarbeitungsfehler aufgetreten.

    Was mich jetzt interessieren würde ist folgendes.
    Ich möchte das in der TXT alle zeilen die eine Datei am Ende haben, entfernt werden.
    So das bei diesm Beispiel in der TXT dann nur noch das hier steht

    Zitat

    SID gefunden: C:\Users\username\Desktop\test\.
    SID gefunden: C:\Users\username\Desktop\Application\
    5 Dateien erfolgreich verarbeitet, bei 0 Dateien ist ein Verarbeitungsfehler aufgetreten.

    Sprich alle Zeilen die am ende eine .xls .exe oder sonstige dateiendung haben sollen komplett entfernt werden.
    Ich muss leider den umweg über die änderung über die TXT-Datei machen da ich mit dem ACL Tool nur Ornder oder ORdner inkl. Unterordner wählen kann aber nicht "nur ordner ohne Dateien"

    Ich könnte mir vorstellen das es wie folgt geht
    "Wenn in einer Zeile in der txt datei ein punkt . und noch 3 weitere zeichen kommen, dann lösch die zeile raus."

  • FTP Upload geht nur sporadisch

    • cobain86
    • 22. Juli 2011 um 11:11

    soweit klappt alles
    nur ein problem habe ich
    wenn ich das programm als 32bit compiliere geht es einfach nicht mehr

    er bleibt beim ftp upload hängen

    Spoiler anzeigen

    If $ext = ".jpg" Then
    ConsoleWrite(" Datei: " & $aFilelist[$i])
    If _FTP_FilePut($l_FTPSession, $aFilelist[$i], $aFilelist[$i]) Then
    ConsoleWrite(" Upload: erfolgreich" & @CRLF)

    der erste console write kommt noch, dann is schluss.

    ok für x32 muss man den passive mode nutzen, sonst gehts nicht!

  • FTP Upload geht nur sporadisch

    • cobain86
    • 22. Juli 2011 um 09:05

    so muss das sein, sonst erkennt er den local pfad nicht

    Spoiler anzeigen

    For $i = 1 To $aFilelist[0]
    $ext = StringRight($aFilelist[$i], 4)

    ConsoleWrite(" Datei: " & $aFilelist[$i])
    If $ext == ".jpg" Then
    If _FTP_FilePut($l_FTPSession, "C:\temp\" & $aFilelist[$i], $aFilelist[$i]) Then
    ConsoleWrite(" Upload: erfolgreich" & @CRLF)
    Else
    ConsoleWrite(" Upload: fehlgeschlagen " & " " & @error & @CRLF)
    EndIf
    EndIf
    Next

  • FTP Upload geht nur sporadisch

    • cobain86
    • 21. Juli 2011 um 16:29

    also habs nun abgeändert
    jedoch imemrnoch das problem das nur eine jpg anstatt alle 3 in dem ordner hochgeladen werden

    [autoit]


    Local $i_Passive = 0
    Local $l_InternetSession, $l_FTPSession, $errOpen, $errFTP

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

    $aFilelist = _FileListToArray("C:\uninst")
    $l_InternetSession = _FTP_Open('AuoItZilla') ;Öffnet eine FTP Sitzung
    $errOpen = @error

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

    ;Datei suche
    For $i = 1 To $aFilelist[0]
    $ext = StringRight($aFilelist[$i], 4)

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

    If $ext == ".jpg" Then

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

    If Not @error Then
    $l_FTPSession = _FTP_Connect($l_InternetSession, $s_ServerName, $s_Username, $s_Password, $i_Passive) ;Verbindet zu einem FTP Server
    $errFTP = @error
    If Not @error Then
    If _FTP_FilePut($l_FTPSession, $aFilelist[$i], '/' & $aFilelist[$i]) Then
    ConsoleWrite("Upload: erfolgreich" & @CRLF)
    Else
    ConsoleWrite("Upload: fehlgeschlagen " & " " & @error & @CRLF)
    EndIf
    Else
    MsgBox(0, "Connect", "fehlgeschlagen")
    ConsoleWrite("Connect: " & " " & $errFTP & @CRLF)
    EndIf
    Else
    MsgBox(0, "Open", "fehlgeschlagen")
    ConsoleWrite("Open " & " " & $errOpen & @CRLF)
    EndIf

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

    ;MsgBox(0, 'Test', $aFilelist[$i])
    EndIf
    Next

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

    _FTP_Close($l_InternetSession) ;schliesst die FTP-Sitzung

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit]
  • FTP Upload geht nur sporadisch

    • cobain86
    • 21. Juli 2011 um 14:47

    scheint was damit zu tun zu haben, das ich den desktop auswähle
    mit nem ordner unter C gehts

  • FTP Upload geht nur sporadisch

    • cobain86
    • 21. Juli 2011 um 14:38

    hi
    ich mache mir gerade ein tool, welches prüft ob TXT dateien bei mir lokal liegen und die dann auf nen FTP pumpen
    leider klappt das nicht immer
    manchmal werden nur 1 datei hochgeladen. manchmal garnix
    vielleicht wisst ihr ja woran es liegen könnte?
    Habe es auch schon mit aktiv und passiv FTP Probiert

    Und noch ne frage, gibt es eine möglichkeit dem FTP zu sagen, das er nur die daten hohladen soll wenn der dateiname noch nicht auf dem FTP vorhanden ist??


    [autoit]

    #include <File.au3>
    #include <Array.au3>
    #include <FTPEx.au3>

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

    ;lädt eine Datei hoch
    Local $s_ServerName = '***.funpic.de' ;
    Local $s_Username = ""
    Local $s_Password = ""

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

    Local $i_Passive = 1
    Local $l_InternetSession, $l_FTPSession, $errOpen, $errFTP

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

    $aFilelist = _FileListToArray(@DesktopDir)

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

    ;Datei suche
    For $i = 1 To $aFilelist[0]
    $ext = StringRight($aFilelist[$i], 4)
    ;abfrage nach doppelten namen in liste
    If $ext == ".txt" Then
    $l_InternetSession = _FTP_Open('AuoItZilla') ;Öffnet eine FTP Sitzung
    $errOpen = @error
    If Not @error Then
    $l_FTPSession = _FTP_Connect($l_InternetSession, $s_ServerName, $s_Username, $s_Password, $i_Passive) ;Verbindet zu einem FTP Server
    $errFTP = @error
    If Not @error Then
    If _FTP_FilePut($l_FTPSession, $aFilelist[$i], "/" & $aFilelist[$i]) Then
    ConsoleWrite("Upload: erfolgreich" & @CRLF)
    Else
    ConsoleWrite("Upload: fehlgeschlagen " & " " & @error & @CRLF)
    EndIf
    Else
    MsgBox(0, "Connect", "fehlgeschlagen")
    ConsoleWrite("Connect: " & " " & $errFTP & @CRLF)
    EndIf
    Else
    MsgBox(0, "Open", "fehlgeschlagen")
    ConsoleWrite("Open " & " " & $errOpen & @CRLF)
    EndIf
    _FTP_Close($l_InternetSession) ;schliesst die FTP-Sitzung

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

    MsgBox(0, 'Test', $aFilelist[$i])
    EndIf
    Next

    [/autoit]
  • registry schlüsselnamen ändern?

    • cobain86
    • 30. Mai 2011 um 14:26

    also ich habe jetz eine lösung gefunden!!!
    über ein drittes script welches ich aus autoit anspreche

  • registry schlüsselnamen ändern?

    • cobain86
    • 30. Mai 2011 um 13:31
    Zitat von Dietmar

    Wieso, hast Du mich nicht verstanden? :D


    das problem beim export - import ist aber, das die alten schlüsselwerte ja noch da stehen!! bzw. ja dann doppelt vorhanden sind
    einmal mit dc1 und einmal mit printserver1

  • registry schlüsselnamen ändern?

    • cobain86
    • 30. Mai 2011 um 13:20

    zum besseren verständnis!

    ich muss überall wo Printserver1 steht, dc1 reinschreiben lassen!!

    Bilder

    • reg.JPG
      • 17,28 kB
      • 222 × 140
  • registry schlüsselnamen ändern?

    • cobain86
    • 30. Mai 2011 um 11:49
    Zitat von stayawayknight

    Denke nicht dass das so geht, kannst aber mit

    [autoit]

    RegRead

    [/autoit]

    davor auch die betreffenden Dinge auslesen.

    Zitat von stayawayknight

    Denke nicht dass das so geht, kannst aber mit

    [autoit]

    RegRead

    [/autoit]

    davor auch die betreffenden Dinge auslesen.


    ja das auslesen ist nciht mein problem
    das erstellen eines schlüssels mit den ganzen unter Keys! das muss ja alles wieder passen
    ansonsten halt export import nutzen(was aber auch mist ist)

  • registry schlüsselnamen ändern?

    • cobain86
    • 30. Mai 2011 um 11:34
    Zitat von Dietmar

    Naja ändern wohl in 2 Schritten.
    Neuen Schlüssel anlegen

    [autoit]

    Regwrite

    [/autoit]

    und danach den alten löschen

    [autoit]

    RegDelete

    [/autoit]

    .

    das is mist! da sind die unter keys ja weg
    die muss ich dann ja moven oder kopieren
    das is mist! gibts echt keine möglichkeit einen schlüssel einfach umzubenennen?

    Zudem macht er hiermit ja wieder einen value key
    ich möchte aber den schlüsselnamen ändern(also das vorne im Ordnersymbol!)

  • registry schlüsselnamen ändern?

    • cobain86
    • 30. Mai 2011 um 10:20

    hi

    ist es möglich mit AutoIt in der Registry einen Schlüsselnamen(nicht der variablenname!) zu ändern?
    ich baue mir gerade ein script welches die drucker umlenkt! daher muss unter HKEY_CURRENT_USER\Printers\Connections\
    auch der Schlüsselname angepasst werden!!

  • IE Message Fenster beantworten

    • cobain86
    • 15. März 2011 um 22:34

    oh da war jemand schneller
    naja habs jetzt so gelöst

    [autoit]

    $file="temp.txt"
    $url = "http://www.wer-kennt-wen.de"
    $Stringleft = '<A class=deleteJN title="Eintrag löschen" href="'
    $Stringright = '"'

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

    $HTML = _IEBodyReadHTML ($oIE)
    FileWrite($file,$HTML)
    $source= FileRead("temp.txt")
    $string=_StringBetween($source,$Stringleft,$Stringright)

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

    $link = $url & $string[0]
    ;MsgBox(0,"", $link)

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

    _IENavigate ($oIE, $link)

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

    FileDelete($file)

    [/autoit]

    hier fehlt nur noch eine if abfrage ob der Text $string auch in der TXT file ist, und wenn icht dann eben den punkt überspringen.
    weiß jemand den command um das zu prüfen?

  • IE Message Fenster beantworten

    • cobain86
    • 15. März 2011 um 20:53

    hmm leider keine abhilfe.
    aber ich habe gemerkt das der Button einen dymanischen link hat(also das Icon welches ich mit _IEImgClick($oIE, "Eintrag löschen", "alt") auslese)

    wenn ich diesen Dynamischen link nun direkt im Browser anwähle macht er gleich richtig weiter ohne erst die Dialog Box zubringen.
    Gibt es nun eine möglichkeit diesen Dynamischen link der auf dem Icon liegt zu aktivieren

    anbei mal der html code

    <a class="deleteJN" href="/justnow/del/ogkk6dok/entry/v67ul4qwpx/return/start/" title="Eintrag löschen">

  • IE Message Fenster beantworten

    • cobain86
    • 15. März 2011 um 13:25
    Zitat von autoBert

    Hallo cobain86,

    ich hatte es befürchtet tatsächlich ein Missverständnis. Wenn diese Meldungsbox tatsächlich dein Skript blockiert bleibt dir nichts anderes übrig als mit

    [autoit]

    AdlibRegister

    [/autoit]

    eine func zu registrieren die regelmässig nachschaut ob ein solches Fenster existiert und es dann schliesst.

    mfg autoBert

    hmm habs jetz mal so probiert
    leider auch keine abhilfe
    es kommt kein SEND zu stande

    Spoiler anzeigen

    AdlibRegister("_MsgCheck", 350)

    Func _MsgCheck()
    ;... die Ausführung darf nicht blockiert werden. Die Verwendung der ...Wait(), MsgBox(), InputBox() Funktionen ist daher zu vermeiden.
    If WinActive("Meldung von Webseite") Then
    Send("{ENTER}")
    EndIf
    EndFunc

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™