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

Beiträge von Donsen64

  • Teilstring bis bzw. ab einem bestimmten Zeichen

    • Donsen64
    • 30. November 2009 um 15:31

    Hallo,
     die Funktion von oben erledigt schon alles was ich wollte. Hatte nur auf eine direkte Anweisung dafür gehofft. ;)


     Danke für eure Hilfe!!! :rock:


     Gruß Ingo

  • Teilstring bis bzw. ab einem bestimmten Zeichen

    • Donsen64
    • 30. November 2009 um 15:26

    Hallo,
    ich brauche immer nur den ersten oder den zweiten Teil des Strings.
    Am besten würde eine Funktion passen die mir nur den ersten Teilstring zurück gibt und eine zweite Funktion die mir nur den zweiten Teilstring gibt.

    Also so eigentlich:

    [autoit]

    $Text = "Text erster Teil*der zweite Teil"

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

    MsgBox(0, "erster Teil", StringSplitTeilstring ($Text, "*", 1))
    MsgBox(0, "zweiter Teil", StringSplitTeilstring ($Text, "*", 2))

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

    Func StringSplitTeilstring ($sString, $sDelimiters, $iNummer)
    Local $aTEMP

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

    $aTEMP = StringSplit ($sString, $sDelimiters, 0)
    Return($aTEMP[$iNummer])
    EndFunc

    [/autoit]

    Hatte nur gehofft es gibt etwas Besseres. ;)

    Gruß Ingo

  • Teilstring bis bzw. ab einem bestimmten Zeichen

    • Donsen64
    • 30. November 2009 um 13:36

    Hallo,
    StringSplit ist durchaus ein Ansatz, gibt aber ein Array zurück. Ich brauche aber nur den reinen String. Dafür habe ich nichts gefunden. ?(

    Gruß Ingo

  • Teilstring bis bzw. ab einem bestimmten Zeichen

    • Donsen64
    • 30. November 2009 um 10:31

    Hallo,
    habe da ein vermutlich recht einfaches Problem:
    Ich möchte eine Zeichenkette an einem bestimmten Zeichen teilen. Also einmal brauche ich alle Zeichen bis zum Trennzeichen und dann alle Zeichen ab dem Trennzeichen. Gibt es da eine fertige Funktion?

    Quelle: „Text erster Teil*der zweite Teil“
    Trennzeichen: *
    Ergebnis:

    • „Text erster Teil“
    • „der zweite Teil“


    Gruß Ingo

  • PDF Datei anzeigen

    • Donsen64
    • 14. November 2009 um 13:41

    Hallo,
    das hat bei mir aber nur funktioniert wenn der Dateiname der PDF Datei keine Freizeichen enthält und zwei X " " hat eine Fehlermeldung erzeugt.

    Gruß Ingo

  • PDF Datei anzeigen

    • Donsen64
    • 13. November 2009 um 17:03

    Hallo Andy,
    super, so funktioniert das ohne Probleme. Ist eben einfach ein klasse Forum mit echten Spezialisten!!! :rock:
    Danke!!! :rock:
    Gruß Ingo

  • PDF Datei anzeigen

    • Donsen64
    • 13. November 2009 um 16:53

    Hallo, ich stehe irgendwie auf dem Schlauch. Ich möchte einfach nur eine PDF Datei anzeigen lassen und bekomme das nicht hin.

    Ich habe zwei Probleme, der Name der PDF Datei enthält Freizeichen und ich habe verschiedenen Versionen von Adobe Reader. Also auch verschiedene Verzeichnisse für die AcroRd32.exe.

    Wie könnte ich das Lösen?

    Gruß Ingo

    [autoit]

    Run("C:\Program Files\Adobe\Reader X.0\Reader\AcroRd32.exe Das ist die Datei.pdf")

    [/autoit]
  • MS Visio Zeichnung mit AutoIt erzeugen

    • Donsen64
    • 7. November 2009 um 14:11

    Hallo,
    ich habe es soweit geschafft etwas lauffähiges zu erzeugen. ;)

    Jetzt habe ich allerdings ein Problem beim Verändern der Farbe. In der Zeile 37 wird natürlich das fehlen der im VB verwendeten Variabeln bemängelt.

    Wie kann ich die denn definieren und vor allem mit welchem Inhalt?

    Gruß Ingo

    [autoit]

    Visio ()

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

    Func Visio ()
    $oVisio = ObjCreate("Visio.Application") ;Visio Object erzeugen
    $oVisio.Visible = 1 ;Visio sichtbar

    $oVisio.Documents.AddEx ("bstorm_m.vst") ;Zeichnung aus Vorlage anlegen
    $oVisio.ActivePage.Name = "Übersicht" ;Name vom Blatt setzen

    ;---------------- Objekte anlegen ----------------------------------
    $oVisio.ActiveWindow.Page.Drop($oVisio.Documents.Item("BSTORM_M.VSS").Masters.ItemU("Topic"), 6.5, 3.5) ;neues Item erstellen
    $oVisio.ActiveWindow.Page.Drop($oVisio.Documents.Item("BSTORM_M.VSS").Masters.ItemU("Topic"), 6.5, 3.5) ;neues Item erstellen

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

    ; --------------- verbinden der Objekte ---------------------------------
    $oVisio.ActiveWindow.Page.Drop($oVisio.Documents.Item("BSTORM_M.VSS").Masters.ItemU("Dynamic connector"), 6.696943, 4.196358) ;Verbinder erzeugen

    $vsoCell1 = $oVisio.ActiveWindow.Page.Shapes.ItemFromID(3).CellsU("BeginX") ;Verbinder Beginn als Objekt definieren
    $vsoCell2 = $oVisio.ActiveWindow.Page.Shapes.ItemFromID(1).CellsSRC(7, 1, 0) ;das erste Item als Objekt definieren
    $vsoCell1.GlueTo($vsoCell2) ;beide verbinden

    $vsoCell1 = $oVisio.ActiveWindow.Page.Shapes.ItemFromID(3).CellsU("EndX") ;Verbinder Ende als Objekt definieren
    $vsoCell2 = $oVisio.ActiveWindow.Page.Shapes.ItemFromID(2).CellsSRC(7, 0, 0) ;das zweite Item als Objekt definieren
    $vsoCell1.GlueTo($vsoCell2) ;beide verbinden

    ;----------- beschriften der Objekte --------------------------
    $vsoCharacters1 = $oVisio.ActiveWindow.Page.Shapes.ItemFromID(1).Characters
    $vsoCharacters1.Begin = 0
    $vsoCharacters1.End = 11
    $vsoCharacters1.Text = "Item 1"

    $vsoCharacters1 = $oVisio.ActiveWindow.Page.Shapes.ItemFromID(2).Characters
    $vsoCharacters1.Begin = 0
    $vsoCharacters1.End = 11
    $vsoCharacters1.Text = "Item 2"

    ;----------- Farbe ändern --------------------------
    $oVisio.ActiveWindow.Page.Shapes.ItemFromID(3).CellsSRC(visSectionObject, visRowLine, visLineColor).FormulaU = "2"

    $oVisio.ActiveWindow.Page.Layout
    EndFunc

    [/autoit]
  • MS Visio Zeichnung mit AutoIt erzeugen

    • Donsen64
    • 5. November 2009 um 14:16

    Hallo,
    danke für den Hinweis. Diese Seite hatte ich gefunden. Allerdings habe ich keine Ahnung wie ich das dort beschriebene richtig auf AutoIt übertragen kann. Habe mir VB Macros im Visio erstellt die zwei Objekte anlegen und ein zweites was die Objekte verbindet. Mit der Umsetzung im AutoIt hapert es aber noch etwas. Dazu habe ich nicht genug Erfahrung.

    Wie könnte ich denn die beiden angehängten VB Macros in das angehängte AutoIt Programm übertragen.
    Schon jetzt vielen Dank für jegliche Hilfe!!! :rock:
    Gruß Ingo

    [autoit]

    Visio()

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

    Func Visio()
    Local $oVisio
    Local $sV_Blatt_Name = "Übersicht"

    $oVisio = ObjCreate("Visio.Application") ;Visio Object erzeugen
    $oVisio.Visible = 1 ;Visio sichtbar

    $oVisio.Documents.AddEx ("bstorm_m.vst");Zeichnung aus Vorlage anlegen
    $oVisio.ActivePage.Name = $sV_Blatt_Name ;Name vom Blatt setzen
    EndFunc

    [/autoit]
    Code
    Sub anlegen_Objekt()
    
    
    	Application.Windows.ItemEx("Zeichnung1").Activate
    	Application.ActiveWindow.Page.Drop Application.Documents.Item("BSTORM_M.VSS").Masters.ItemU("Topic"), 6.333661, 3.883858
    
    
    	Application.Windows.ItemEx("Zeichnung1").Activate
    	Application.ActiveWindow.Page.Drop Application.Documents.Item("BSTORM_M.VSS").Masters.ItemU("Topic"), 8.430118, 3.937008
    
    
    End Sub
    Sub verbinden_Objekt()
    
    
    	Dim UndoScopeID1 As Long
    	UndoScopeID1 = Application.BeginUndoScope("Auf Zeichenblatt ablegen")
    	Application.Windows.ItemEx("Zeichnung1").Activate
    	Application.ActiveWindow.Page.Drop Application.Documents.Item("BSTORM_M.VSS").Masters.ItemU("Dynamic connector"), 6.696943, 4.196358
    	Dim vsoCell1 As Visio.Cell
    	Dim vsoCell2 As Visio.Cell
    	Set vsoCell1 = Application.ActiveWindow.Page.Shapes.ItemFromID(6).CellsU("EndX")
    	Set vsoCell2 = Application.ActiveWindow.Page.Shapes.ItemFromID(4).CellsSRC(7, 1, 0)
    	vsoCell1.GlueTo vsoCell2
    	Application.EndUndoScope UndoScopeID1, True
    
    
    	Dim UndoScopeID2 As Long
    	UndoScopeID2 = Application.BeginUndoScope("Objektgröße ändern")
    	Dim vsoCell3 As Visio.Cell
    	Dim vsoCell4 As Visio.Cell
    	Set vsoCell3 = Application.ActiveWindow.Page.Shapes.ItemFromID(6).CellsU("BeginX")
    	Set vsoCell4 = Application.ActiveWindow.Page.Shapes.ItemFromID(5).CellsSRC(7, 0, 0)
    	vsoCell3.GlueTo vsoCell4
    	Application.EndUndoScope UndoScopeID2, True
    
    
    End Sub
    Alles anzeigen
  • MS Visio Zeichnung mit AutoIt erzeugen

    • Donsen64
    • 5. November 2009 um 12:25

    Hallo, ich möchte aus meinem AutoIt Programm eine MS Visio Zeichnung erzeugen. Dies wollte ich über COM-Objecte erledigen. Habe auch den ersten Schritt bereits durchgeführt und Visio gestartet.

    [autoit]

    $oVisio = ObjCreate("Visio.Application") ;Visio Object erzeugen
    $oVisio.Visible = 1 ;Visio sichtbar

    [/autoit]


    Jetzt suche ich eine Liste der verfügbaren COM-Objecte um eine Zeichnung erstellen zu können.

    Oder kennt jemand eine bessere Möglichkeit mit AutoIt eine Zeichnung zu erstellen?

    Gruß Ingo

  • "Zurück" Buttom Wie geht der?

    • Donsen64
    • 28. August 2009 um 22:09

    Hallo,
    unter C:\Program Files\AutoIt3\Examples\GUI\Simple\child.au3 findest du ein Beispiel für eine Kind GUI.

    Gruß Ingo

  • GUI erstellen aber mit wenig Code.

    • Donsen64
    • 28. August 2009 um 22:02

    Hallo
    versuche _ArrayDisplay

    Gruß Ingo

  • Weg zu einer IP Adresse speichert und später vergleichen

    • Donsen64
    • 28. August 2009 um 21:56

    Wie meinst du das mit dem Aufteilen?

  • Weg zu einer IP Adresse speichert und später vergleichen

    • Donsen64
    • 28. August 2009 um 21:39

    Vielen Dank an Xenobiologist :rock:

  • Weg zu einer IP Adresse speichert und später vergleichen

    • Donsen64
    • 28. August 2009 um 21:37

    Hallo,
    habe schon etwas gefunden mit:

    [autoit]

    #Include <Array.au3>
    $sText = _getDOSOutput('tracert http://www.google.de')
    $aIP = StringRegExp($sText, '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', 3)

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

    _ArrayDisplay($aIP)

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

    Func _getDOSOutput($command)
    Local $text = '', $Pid = Run('"' & @ComSpec & '" /c ' & $command, '', @SW_HIDE, 2 + 4)
    While 1
    $text &= StdoutRead($Pid, False, False)
    If @error Then ExitLoop
    Sleep(10)
    WEnd
    Return $text
    EndFunc ;==>_getDOSOutput

    [/autoit]

    sollte es klappen.

    Gruß Ingo

  • Weg zu einer IP Adresse speichert und später vergleichen

    • Donsen64
    • 28. August 2009 um 21:16

    Hallo Xenobiologist,
    das ist ja ein super schneller Ansatz. Wie kann ich mir den aus der Ausgabe die IP Adressen am besten rauslösen und abspeichern?

    Danke für die schnelle Hilfe!!!

    Gruß Ingo

  • Weg zu einer IP Adresse speichert und später vergleichen

    • Donsen64
    • 28. August 2009 um 21:02

    Hallo,
    ich suche ein Programm welches den Weg zu einer IP Adresse speichert (also z.B. wie tracert mit Speicherfunktion) und dann später mit dem aktuellen vergleicht. Also mit dem festgestellt werden kann, ob eine backup Verbindung verwendet wird.

    Kennt da jemand eine AutoIT Lösung?

    Gruß Ingo

  • Überflüssige Zeilenumbrüche entfernen

    • Donsen64
    • 14. August 2009 um 14:52

    Hallo,
    das ist genau die Lösung! Super danke!!

    Der abgebildete Quelltext ist eigentlich nur ein Auszug aus einem größeren Programm. In der Schleife wird jede Sekunde eine GUI, mit dem gelesenen Daten aktualisiert. Daher das Sleep (1000) und die Bearbeitung des Strings innerhalb der Schleife.

    Gruß Ingo

  • Überflüssige Zeilenumbrüche entfernen

    • Donsen64
    • 14. August 2009 um 11:12

    Hallo,
    ich versuche grad überflüssige Zeilenumbrüche in einem String zu entfernen. Leider ohne erfolgt.
    Hat jemand eine zündende Idee?

    Gruß Ingo

    [autoit]

    $PING_ret = Run(@ComSpec & " /c PING " & $Ziel, @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)

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

    While 1
    Sleep (1000)
    $line = $line & StdoutRead($PING_ret)
    If @error Then ExitLoop ; wenn ein Fehler beim Lesen aufgetreten ist verlassen

    ;??????
    StringReplace ( $line, @CRLF & @CRLF, @CRLF) ;doppele Zeilenvorschübe entfernen zur 1.
    StringReplace ( $line, @CR & @CR, @CR) ;doppele Zeilenvorschübe entfernen zur 2.
    StringReplace ( $line, @LF & @LF, @LF) ;doppele Zeilenvorschübe entfernen zur 3.
    StringReplace ( $line, @CR & @LF & @CR & @LF, @CR & @LF) ;doppele Zeilenvorschübe entfernen zur 4.
    Wend

    [/autoit]
  • HotKeySet mit F1 bis F9 und einer andere Taste

    • Donsen64
    • 10. August 2009 um 13:22

    Hallo,
    funktioniert das eigentlich auch bei euch nicht? :(

    Ich kann mich erinnern, genau solch eine Definition von Tasten bereits mit einer alten Version von AutoIT verwendet zu haben. Ich suche noch den Quelltext.

    Gruß Ingo

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™