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

Beiträge von misterspeed

  • Inbutbox > Eingabe in Variable speichern und weiterverwenden

    • misterspeed
    • 26. Januar 2014 um 19:13

    Also lag der Fehler doch im unterschlagenen Code, denn in deinem Codeschnipsel verwendest du exakt 2 Variablen, welche beide global deklariert sind und somit deiner Aussage nach nicht für das Problem verantwortlich waren. Gerne hätte ich dir auch erklärt warum das globale Deklarieren der fraglichen Variable letzlich dein Problem gelöst hat und ob es vielleicht bessere Lösungen als globale Variablen gegeben hätte, aber ohne vollständigen code geht das eben nicht. Ob du anderswo besseren Support findest wenn du die relvanten Stellen nicht postest wage ich mal zu bezweifeln. Trotzdem viel Glück...

  • Inbutbox > Eingabe in Variable speichern und weiterverwenden

    • misterspeed
    • 24. Januar 2014 um 20:10

    Sehe ebenfalls keinen Fehler. Du hast im übrigen auch nicht wirklich geschrieben was nicht funktioniert. Erscheint die inputbox nicht? Wenn sie erscheint wie kommst du darauf, dass der Wert nicht wie gewünscht in der Variable landet?´Schonmal ein wenig Debugging betrieben? Lass dir einfach mit einer msgbox oder consolewrite anzeigen ob und wann gewisse code passagen aufgerufen wurden und lass dir die Werte der für dich relevanten Variablen ausgeben. Vermutlich steckt dein Problem in den unterschlagenen Codezeilen und ich kann mir auch denken warum du uns diese nicht zeigen magst...

  • Tray Menü funktioniert nicht wirklich

    • misterspeed
    • 23. Januar 2014 um 21:46

    Guigetmsg hat nichts mit dem Traymenu zu tun. Du brauchst:

    [autoit]

    traygetmsg

    [/autoit]
  • includes als trojaner erkannt

    • misterspeed
    • 20. Januar 2014 um 23:55
    Zitat von Captain09

    Niemand will ein Programm, dass als Trojaner erkannt wird :/

    Um nochmal auf deine ursprüngliche Sorge zurückzukommen... veröffentliche einfach den Quellcode deines Programmes. Dadurch kann sich jeder selbst davon überzeugen, dass deine Software das tut was sie soll und keine Schadroutinen beinhaltet. Außerdem könnten andere so Fehler in deinem Code beheben und dich bei der Weiterentwicklung unterstützen. Open Source ist was feines. :P

  • includes als trojaner erkannt

    • misterspeed
    • 20. Januar 2014 um 23:38

    Nein das heißt man kann keiner Software vertrauen die man nicht selbst geschrieben hat oder deren Quellcode man selbst kontrolliert hat. Ich kann dir auch eine Funktion schreiben die deinen Windowskey und viele andere Dinge ausliest. Diese Software ist dadurch nicht zwangsläufig Schadsoftware, sie wird erst zu einer wenn diese Funktionalität versteckt wird und der eigentliche Sinn des Programmes ein völlig anderer ist. Es gibt aber schlichtweg keinen Virenscanner der den Unterschied zwischen einem Hilfsprogramm für Administratoren und einem Trojaner erkennen kann. Dafür gibt es Verhaltensanalysen die beim gehäuften Einsatz von problematischen Funktionen Alarm schlagen (wie z.B. Bildschirmfotos anfertigen, mit dem Internet kommunizieren und Registry Werte ändern). Ein Beweis für schadhaftes Verhalten ist aber keines dieser Verhaltensmuster. Der eine Virenscanner reagiert empfindlicher auf solche Muster, der andere weniger empfindlich. Letzlich bleibt aber die Aussage, dass Virenscanner nur dann wirklich schützen können wenn eine Software weit verbreitet ist und definitiv bereits auf etlichen Systemen schaden angerichtet hat. Vor neuer oder wenig verbreiteter Schadsoftware schützt kein Virenscanner effektiv, er kann nur auffällige Verhaltensweisen erkennen und übervorsichtig darauf reagieren.

  • includes als trojaner erkannt

    • misterspeed
    • 20. Januar 2014 um 23:14

    Klar hats was gebracht. Die beiden halbwegs namhaften Scanner von Gdata und Bitdefender erkennen es nun nicht mehr als Schadsoftware. Die restlichen völlig unbekannten Scanner interessieren nun wirklich keinen. False Positiv Treffer sind nichts ungewöhnliches und passieren selbst bei bekannter Software immer wieder. Es gab schon zu genüge Amoklaufende Virenscanner die völlig intakte Systeme zerstört haben weil sie originale Windowsdateien als Viren erkannt haben. Wenn 45 von 49 Suchengines der Meinung sind die Datei ist ok, dann ist das ein gutes Ergebnis, insbesondere wenn die 4 Abweichler kein Mensch kennt. Echte Schadsoftware würde von mindestens einem Drittel der Scanner erkannt werden und innerhalb weniger Tage von fast allen. Oder eben sehr lange Zeit mangels Verbreitung garnicht wie z.B. der Bundestrojaner oder auch Stuxnet.

  • includes als trojaner erkannt

    • misterspeed
    • 20. Januar 2014 um 22:48

    UPX beim kompilieren abschalten...

  • _IECreateEmbedded Fenster ohne vertikaler Scrollbar

    • misterspeed
    • 19. Januar 2014 um 11:14

    Naja wozu brauchst du überhaupt ein sichtbares Fenster? Das Ergebnis, welches letzlich auf der Webseite dargestellt wird könntest du auch einfach aus dem Quellcode auslesen und dann in ein Label der GUI schreiben.

    Das Ergebnis steht in diesem Input der Webseite:

    Code
    <input name="betrag" class="ipttext" style="width: 194px;" value="677,00" disabled="disabled" />
  • Excel Tabellen auslesen und Berechnen

    • misterspeed
    • 19. Januar 2014 um 09:49

    Das auslesen kannst du dir in der Hilfe ansehen:

    [autoit]


    _ExcelBookOpen
    _ExcelReadCell
    _ExcelReadArray
    _ExcelReadSheetToArray

    [/autoit]

    Zusätzlich solltest du dir das Array Tutorial von Bugfix ansehen: http://www.bug-fix.info/array_tut.htm

    Jenachdem welche Excel Version du verwendest kann es eventuell auch sinnvoll sein hier im Forum nach einer neueren Version der Excel UDF zu suchen. Ich denke "Water" hat hier irgendwann mal damit angefangen die UDF für Excel 2007/2010/2013 fit zu machen. Ich persönlich habe nie wirklich mit den Excel Funktionen von Autoit gearbeitet.
    EDIT: hier ist der Link zum Thread --> https://autoit.de/index.php?page=Thread&amp;threadID=32997

    Zitat von was2

    Das Problem dabei ist nicht nur die Technik des auslesens, sondern auch die Tatsache, dass die Positionen der Werte sich immer verändern.

    Nunja wir sind keine Hellseher und auch Autoit kann keine magischen Dinge tun. Wenn man mit Daten arbeitet muss auch ein System bekannt sein wie diese gespeichert werden und aufgefunden werden können. Da dein Hirn in der Lage ist ein System zu erkennen und die richtigen Daten in der Tabelle zu finden solltest du auch in der Lage sein diese Denkprozesse in geeigneten Autoit Code umzusetzen. Das mag nicht immer einfach sein, aber es ist definitiv unmöglich wenn man keine Beispieldateien hat. Somit bist entweder du gefragt das System zu erkennen und umzusetzen oder du stellst mindestens zwei Beispieldateien zur Verfügung die das Problem der Datenerkennung und Zuordnung veranschaulichen.

  • KODA Integrierte ProgressBar

    • misterspeed
    • 18. Januar 2014 um 21:57

    Naja du musst den Wert schon auch erhöhen. Derzeit machst du folgendes:

    [autoit]

    $range = 250
    $progressbase = 100/250 ; = 0.4
    $progressplus = 0.4

    [/autoit]

    und du setzt in jedem Schleifendurchlauf immer den selben Wert, nämlich progressbase + progressplus, also 0.8.

    Korrekter wäre den aktuellen Wert der Progressbar auszulesen und zu diesem Wert das rangeplus zu addieren. Dann erhöht sich der Wert auch mit jedem Schleifendurchlauf um die gewünschten 0.4 Prozent.
    Wie liest man den Wert eines Controls aus? Das solltest du bereits wissen, da du genau das mit den Input controls schon machst.

    [autoit]


    guictrlsetdata($progressbar,guictrlread($progressbar)+$progressplus)

    [/autoit]
  • DBC Rechner

    • misterspeed
    • 18. Januar 2014 um 17:48

    Da Excel prinzipiell nichts mit GUI Programmierung oder der Autoit Syntax bezüglich mathematischen Formeln zu tun hat halte ich es für sinnvoller einfach einen neuen Thread mit aussagekräftigem Titel zu eröffnen wenn du nochmals Hilfe benötigst. Im Gegensatz zum aktuellen Threadtitel wären z.B folgende Titel sinnvoll "Excel udf kann keine PDF speichern" oder "Probleme mit excel udf beim Einfügen von Tabellenwerten". Eine saubere thematische Abgrenzung und Beschreibung der Probleme macht es wesentlich einfacher für andere die Suchfunktion des Forums zu nutzen. Das sollte auch immer dein erster Schritt sein bevor du ein Thema eröffnest.

    Threads werden hier im übrigen nicht geschlossen, sondern vom Autor selbst durch editieren des ersten Postings und ändern des Threadpräfix auf "[gelöst]" als erledigt markiert. Da dein Problem wohl erstmal erledigt ist solltest du das nun auch entsprechend ändern.

    PS:
    Bei sehr langem Quellcode (mehr als 20 Zeilen) solltest du die Spoilerfunktion nutzen:

    Spoiler anzeigen
    [autoit]

    ;langer Quellcode

    [/autoit]
  • DBC Rechner

    • misterspeed
    • 18. Januar 2014 um 17:37

    Siehe mein zweites Posting. Wie vermutet liest du die Controls nur einmal aus und nicht jedesmal wenn der Case "calc" zutrifft. Pack die 3 Zeilen an den Anfang des Cases und es sollte laufen.

  • DBC Rechner

    • misterspeed
    • 18. Januar 2014 um 17:31

    Ahja und da du nur einen Bruchteil des Quellcodes gepostet hast wäre noch folgender Fehler denkbar:

    Du liest den Inhalt der Controls nur zum Programmstart aus. Zu diesem Zeitpunkt sind alle Controls noch auf "" bzw. 0 gesetzt, dadurch ändert sich natürlich auch nichts am Ergebnis wenn du später Werte einträgst. Du musst die Controls also immer unmittelbar bevor gerechnet werden soll auslesen.

  • DBC Rechner

    • misterspeed
    • 18. Januar 2014 um 17:25

    Erstmal wie gesagt ist execute völlig sinnfrei in diesem Fall. Zum anderen schadet es nicht mit Klammern zu arbeiten um sicherzustellen, dass Punkt-Vor-Strich Regeln korrekt umgesetzt werden. Außerdem muss bei Divisionen auch immer sichergestellt sein, dass nicht durch 0 geteilt wird. Das sollte am besten vorab beim Auslesen des Controls passieren. Sofern du die Controls nicht abgesichert hast und dort auch anderes als Zahlen eingetragen werden kann sollte grundsätzlich auch ein Casting in den "Typ" number vorgenommen werden.


    [autoit]


    $AW = number(GUICtrlRead($Input1))
    $EW = number(GUICtrlRead($Input2))
    $Lv = number(GUICtrlRead($Input3))

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

    Case $calc
    if $Lv <> 0 then
    $sol = ($EW-$AW) / $Lv
    else
    $sol = "Division durch Null !"
    endif
    GUICtrlSetData($Label1, $sol)

    [/autoit]
  • Große Anzahl an Daten automatisch bearbeiten

    • misterspeed
    • 17. Januar 2014 um 21:12
    Zitat von metalphony

    So. Also ich habs soweit angepasst wie ich dachte das es richtig wäre.
    Es ist irgendwie einmal fehlerfrei durchgelaufen, aber es wurde keine dateien in dem gewünschten ZIelordner abgespeichert.

    Dann ist es ja scheinbar nicht fehlerfrei durchgelaufen. Der Sinn ist ja schließlich, dass Dateien erzeugt werden...


    Zitat von metalphony


    verstehe ist das richtig, dass die zeile 18 mit "$pathTargetFiles" der Pfad für die konvertierten videos sein soll?

    Ja. Dieser muss allerdings vermutlich schon existieren, außer der Converter ist schlau genug um Verzeichnisse bei Bedarf selbst anzulegen. Also falls der Ordner den du angegeben hast nicht existiert solltest du diesen vielleicht vorher anlegen und nochmals testen.

    Sollte das nicht die Ursache für die fehlenden Dateien sein ist "Onkel Debug" an der Reihe.

    Bevor du irgendetwas in Autoit probierst solltest du erstmal sicherstellen, dass es von Hand über die Windows Eingabeaufforderung funktioniert. Wie der Befehl aussehehn muss steht ja bereits weiter oben.
    Klappt das? Wenn ja, dann liegt der Fehler im Script. Als erstes ändern wir daher die Sichtbarkeit des cmd Fensters, welches das Script öffnet:

    [autoit]

    runwait('"' & $pathConverter & '" "' & $pathSourceFiles & $aSourceFiles[$i] & '" "' & $pathTargetFiles & stringreplace($aSourceFiles[$i],"AWLive","avi") & '" 2',"",@SW_SHOW) ; SW_SHOW statt SW_HIDE

    [/autoit]

    Du solltest nun sehen was der Converter tut oder auch nicht tut. Sehr wahrscheinlich kannst du die Fehlermeldung im cmd Fenster aber nicht lesen, da das Fenster gleich wieder verschwindet. Deswegen änderst du die Zeile wie folgt ab:

    [autoit]

    runwait(@ComSpec & ' /k ""' & $pathConverter & '" "' & $pathSourceFiles & $aSourceFiles[$i] & '" "' & $pathTargetFiles & stringreplace($aSourceFiles[$i],"AWLive","avi") & '" 2',"",@SW_SHOW) ; cmd fenster pausiert nach Ende...

    [/autoit]

    Spätestens nun solltest du sehen was der converter tut oder zu bemängeln hat. Wichtig: Dein Autoit Script wartet bis der cmd Prozess beendet wird. Die nächste Datei wird also erst abgearbeitet wenn du das cmd Fenster schließt. Deswegen eignet sich diese Variante nur zum Debuggen und muss später natürlich wieder geändert werden.


    Zitat von metalphony


    Eine Sache ist mir noch eingefallen die sehr wichtig wäre, und ich auch überhaupt nicht weiß wie ich diese in das Programm integrieren sollte.
    Man muss bei dem Konverter jedesmal wenn man ein video konvertieren möchte dass richtige Ausgangsformat (avi) und das gewünschte komprimierungsformat (Microsoft Video 1) einstellen.
    Das mit dem Ausgangsformat ist wohl in der schleife integriet soweit ich das richtig verstanden habe....aber wie stellt man das richtige komprimierungsformat ein?
    Ich danke euch!

    Da in der Dokumentation zu den cmdline Optionen diesbezüglich nichts steht ist es entweder nicht möglich per cmdline das "Komprimierungsformat" festzulegen oder aber die Dokumentation ist unvollständig. Sollte ersteres zutreffen nimmt der Converter vermutlich das Standard Komprimierungsformat. Dieses ist evtl. in einer Konfig Datei oder der Registry gespeichert. Im schlechtesten Fall ist es hardcodet im Converter. Wie dem auch sei... diese Frage kann dir am ehesten der Hersteller der Software beantworten, also schreib einfach eine Email an den Support um zu klären wie man dieses Format per cmdline festlegt oder ob es andere Wege gibt den Standard für das Format permanent zu ändern (z.B. Registry oder Konfig Datei...).

  • Response Header bearbeiten

    • misterspeed
    • 16. Januar 2014 um 19:06

    Und was hat dein Excel Code nun mit deinem eigentlichen Problem zu tun? Wenn du eine Webseite automatisieren willst wäre es wohl naheliegend deinen nicht funktionierenden Code der Webseitenautomatisierung plus Link zur Webseite und ggf. Auszüge des Webseitenquellcodes oder anderer Webseitenanalysen zu posten. Woher du deine Daten zum befüllen des Webseitenformulars nimmst ist völlig irrelevant für die Beantwortung deiner Frage.

    Grundsätzlich stehen dir neben den Funktionen für den Internet Explorer auch noch folgende Alternativen zur Verfügung:

    • ff.au3
    • winhttp.au3
    • TCP Funktionen
    [autoit]

    _ieattach()

    [/autoit]


    ist jedenfalls nur dazu gedacht um eine bestehende InternetExplorer Instanz zu nutzen und hat erstmal nicht mit dem Befüllen von Formularen zu tun.

  • Werte aus SQLite in eine ListView Tabelle integrieren

    • misterspeed
    • 15. Januar 2014 um 20:18
    Zitat von Blubkuh


    Super. Das ist zu 90% das was ich brauche. Das einzige was stört sind die namen der spalten( a,b,c) die sollten eigentlich nicht mit in die tabelle.

    Wo bitte siehst du im der geposteten Lösung die Spaltennamen a,b,c im Listview?

    [Blockierte Grafik: http://i.imgur.com/iXsCssZ.png]

  • Große Anzahl an Daten automatisch bearbeiten

    • misterspeed
    • 14. Januar 2014 um 19:03

    Wo ist nun das Problem?

    Zitat

    Ich hab mir mal den geschickten link durchgelesen. Ich verstehe jedoch nicht ganz wie ich dass über die cmd machen soll...hab sowas grundsätzlich auch noch nie gemacht und bin auch AutoIt Anfänger.


    Was ist eine Kommandozeile? --> http://de.wikipedia.org/wiki/Kommandozeile

    Aus der von mir oben verlinkten Dokumentation der "ImageConvert.exe", welche wohl Bestandteil deiner Active Webcam Software ist geht folgende Syntax hervor:

    Code
    imageconvert.exe "Pfad zur Quelldatei" "Pfad zur Zieldatei" EncodingModus

    Konkret kannst du eine Datei also über die Windows Kommandozeile z.B. so von AWLive nach AVI umwandeln:

    Code
    "C:\programme\blah....\imageconvert.exe" "C:\videos\test.awlive" "C:\videos\output\test.avi" 2
    Zitat

    Also ist das ein ganz normales AutoIt Skript was ich einfach in den Editor eingeben und abspeichern muss??? :huh:


    Da wir hier nicht im Windows für Anfänger Forum sondern im Autoit Forum sind war ich gestern noch so nett dir ein Autoit Script zu schreiben, dass genau das automatisiert was du auch 400 mal hintereinander von Hand über die Windows Kommandozeile tun könntest. Da ich lediglich 6 verschiedene Autoit Funktionen dafür verwende erwarte ich von dir einfach mal, dass du in der Lage bist die Funktionen in der Hilfe selbst nachzuschlagen und ggf. konkrete Fragen zum Script zu stellen wenn dir einzelne Code Zeilen trotzdem noch unklar sind.

    Zur Funktionsweise sei noch gesagt, dass mein Script es erfordert, dass alle Quelldateien im selben Ordner liegen. Sollten diese in Unterordnern organisiert sein, so benötigst du anstelle von

    [autoit]

    _fileListToArray()

    [/autoit]

    eine rekursive Version dieser Funktion. Eine kurze Foren oder Googlesuche sollte dir da rech schnell Ergebnisse liefern.

  • Große Anzahl an Daten automatisch bearbeiten

    • misterspeed
    • 13. Januar 2014 um 19:31

    Anhand der dortigen infos dürfte das in etwa so ausschaun:

    [autoit]


    #include <file.au3>

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

    $pathConverter = 'C:\...\ImageConvert.exe'
    $pathSourceFiles = 'C:\videos\awliveaufnahmen\'
    $pathTargetFiles = 'C:\videos\awliveaufnahmen\AVIencode\'
    $aSourceFiles = _filelisttoarray($pathSourceFiles,"*.AWLive",1)

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

    for $i = 1 to ubound($aSourceFiles)-1
    runwait('"' & $pathConverter & '" "' & $pathSourceFiles & $aSourceFiles[$i] & '" "' & $pathTargetFiles & stringreplace($aSourceFiles[$i],"AWLive","avi") & '" 2',"",@SW_HIDE)
    traytip("AWLife encode",$pathSourceFiles & $aSourceFiles[$i] & " erfolgreich umgewandelt. [" & $i & " / " & ubound($aSourceFiles)-1 & "]",10)
    next

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

    msgbox(0,"Done","Alle Dateien wurden umgewandelt.")

    [/autoit]
  • Große Anzahl an Daten automatisch bearbeiten

    • misterspeed
    • 13. Januar 2014 um 19:11

    Verwende einfach cmdline anstatt GUI Automatisierung und bau dir ne entsprechende Schleife...

    http://www.pysoft.com/ActWebCamHelp/VideoConversion.htm

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™