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

  • Wie bekomme ich eine bestehende sqlite.db ins memory?

    • misterspeed
    • 11. Januar 2014 um 16:59

    Naja du könntest bei jedem Programmstart mit einer "frischen" memory db arbeiten und jedesmal einmalig alle Tabellen und Datensätze der HDD db in diese per SQL übertragen und zum Programmende wieder zurück transferieren. Ob das letzlich dann für dich aus Performancesicht noch lohend ist ist wieder ein anderes Thema, denn die Übertragung der kompletten Datei dürfte einiges an Zeit beanspruchen.

    Ein anderer Ansatz wäre eine reale RamDisk in die du bei Programmstart die DB Datei kopierst und dann von dort öffnest / bearbeitest und dann bei Porgrammende wieder zurück auf die HDD kopierst. Für eine RamDisk bist du aber soweit ich weiß auf Drittanbieter SW angewiesen, das wäre also nur eine Lösung wenn das Programm nur auf Rechnern genutzt wird die du selbst kontrollierst.

    Ebenfalls interessant wäre dein Programmcode. Vielleicht ist es garnicht wegen der Festplatte so langsam, sondern weil du unnötig viele Einzelabfragen machst die du auch über eine Transaktion zusammenfassend ausführen könntest. Siehe dazu auch meinen Thread in dem mich Bugfix genau auf diesen Fehler aufmerksam gemacht hat: https://autoit.de/index.php?page…8387#post328387

  • Text aus .txt in variable speichern?

    • misterspeed
    • 11. Januar 2014 um 13:26

    Was bekommst du nicht hin? Wo sind deine Script-Versuche? Hilfebeispiel angesehen? Arraytutorial von Bugfix angesehen?

    Hier einige Alternativen die du dir in der Hilfe ansehen könntest:

    [autoit]


    fileread
    filereadline

    [/autoit]

    Array Tutorial: http://www.bug-fix.info/array_tut.htm

  • Prozessnamen festlegen, unabhängig des Dateinamen

    • misterspeed
    • 10. Januar 2014 um 18:51

    Ich glaube ihr habt sein Problem nicht verstanden oder ich bin nun gerade total auf dem Holzweg. Soweit ich ihn verstehe möchte er schlichtweg im Taskmanager eine Beschreibung des Programmes haben so wie es die meisten Programme tun.

    [autoit]

    #AutoIt3Wrapper_Res_Description=Dein eigener Programmname

    [/autoit]

    Mit dieser Zeile beim kompilieren wird ein beliebiger String als Bechreibung gesetzt, ohne diese Zeile wird lediglich der Name der Datei als Beschreibung angezeigt.

  • Problem beim auslesen einer e-mail

    • misterspeed
    • 6. Januar 2014 um 23:57

    Woran happerts denn? Keine Lust dich 2min mit der Dokumentation der UDF Funktionen auseinanderzusetzen? Mangelnde Englischkenntnisse? Mangelnde Erfahrung in der richtigen Anwendung von Funktionen und deren Parametern?

    Wie dem auch sei... was ich dir mit meinem Post sagen wollte war mehr oder weniger, dass Lesen hilft. Die von dir genutzte Funktion _Pop3Top() gibt dir nur dann den Inhalt der Email zurück wenn du den 2. Funktionsparameter entsprechend setzt. Sofern es an deinem Englisch liegt hier die Übersetzung der Funktionsbeschreibung:

    Zitat

    Sting _Pop3Top(msg_number, lines) --> Retreives the mail headers, and the X first lines of the message. Or returns -1 and sets @error.

    Empfängt den Mail Header und die ersten X Zeilen der Emailnachricht. Im Fehlerfall gibt die Funktion den Wert -1 zurück und setzt das Makro @error
    X steht hierbei für den 2. Parameter "lines", also die Anzahl der zu lesenden Zeilen der Emailnachricht.

    Da du den 2. Parameter in deinem Testscript auf den Wert 0 gesetzt hast wird die Funktion keine einzige Zeile der eigentlichen Email, sondern nur den Email Header zurückgeben.

    Demzufolge würde folgender Funktionsaufruf den Emailheader und die ersten 5 Zeilen der Nachricht zurückgeben:

    [autoit]

    Local $top = _Pop3Top(1, 5)

    [/autoit]

    Die Frage ist aber ob dich der Emailheader überhaupt interessiert. Wenn nicht ist vielleicht die Funktion _Pop3Retr() eher das was du suchst.


    Du hast es zwar editiert, aber da du vorhin meintest manchmal würde es garnicht mehr funktionieren... die meisten Freemail Anbieter haben Limits was die Häufigkeit der POP Abrufe anbelangt. Bei web.de sind es glaube ich 5min. bei GMX sogar 10min. Du wirst also ggf. etwas warten müssen bevor du erneut testen kannst. Alternativ teste mit einer Emailadresse die keine derartige Limitierung besitzt, z.B. eigene Domain oder bezahlte Emailadresse.

  • Problem beim auslesen einer e-mail

    • misterspeed
    • 6. Januar 2014 um 20:10
    [autoit]

    Local $top = _Pop3Top(1, 0)
    ; Sting _Pop3Top(msg_number, lines) ; Retreives the mail headers, and the X first lines of the message. Or returns -1 and sets @error.

    [/autoit]
  • verschlüsselungsprogramm, es wird keine datei erstellt

    • misterspeed
    • 6. Januar 2014 um 16:28
    [autoit]

    Case $btProgress
    $path1 = GUICtrlRead($tfPath1)
    $path2 = GUICtrlRead($tfPath2)
    _crypt(FileRead($path1),FileRead($path2),$crypt)

    [/autoit]

    Das ist auch Unfug, ausser in der Datei die du im Input angibst steht der Pfad den du letztlich zum speichern verwenden willst, andernfalls hat das fileread beim destination Parameter nichts verloren... :P


    EDIT:

    [autoit]


    Case $btBrowse2
    $path2 = FileOpenDialog("Eingangsdatei",@WindowsDir, "(*)")
    GUICtrlDelete($tfPath2)
    $tfPath2 = GUICtrlCreateInput($path2, 0, 64, 209, 21)

    [/autoit]

    Das hier ist auch unsinnig. Schau dir in der Hilfe mal die Funktion

    [autoit]

    guictrlsetdata

    [/autoit]

    an. Dann kannst du dir das Löschen und Neuerstellen des Controls sparen.

  • Problem beim auslesen einer e-mail

    • misterspeed
    • 6. Januar 2014 um 15:59

    Betreib halt mal ein wenig Debugging wenn du uns schon keinen Link zur UDF bzw. dem Thread der UDF postest...

    Lass dir alle Rückgabewerte und @error Codes der jeweiligen UDF Funktionen mit consolewrite ausgeben. Danach schaust du entweder in die Dokumentation der UDF, oder falls keine vorhanden ist in der UDF selbst nach was die zurückgegebenen @error Werte bedeuten. Was Debugging in eine Datei anbelangt solltest du außerdem eher filewrite verwenden, damit es keine Komplikationen mit der INI Struktur gibt.

  • Herausfinden ob x32 oder x64 ?

    • misterspeed
    • 6. Januar 2014 um 14:32

    Die Frage ist nicht spezifisch genug. Es gibt drei verschiedene Makros die diesbezüglich nützlich sein könnten:

    [autoit]


    @CPUArch ; 32 oder 64bit Prozessor?
    @OSArch ; 32 oder 64bit Betriebssystem?
    @AutoItX64 ; 32 oder 64bit Interpreter?

    [/autoit]

    Details zu den Rückgabewerten der Makros entnimmst du bitte der Hilfe.

  • Variablen: Dim / Global / Local / Const

    • misterspeed
    • 5. Januar 2014 um 19:52

    Und um die letzte Variante

    [autoit]

    Const

    [/autoit]

    noch abzudecken:

    Hierbei handelt es sich um eine "schreibgeschützte Variable", also eine Konstante. Diese kann während der Laufzeit nicht geändert werden.

  • Text nach einem Wort durchsuchen und entfernen

    • misterspeed
    • 5. Januar 2014 um 19:43
    Zitat von James


    Dann helfen wohl nur reguläre Ausdrücke... :D

    Vorallem hilft sein vorgeschlagenes stringsplit anhand eines Leerzeichens dann auch "nicht" mehr :P

    Und ansonsten... um Teilübereinstimmung zu vermeiden reicht es normalerweise wie oben vorgeschalgen ein Leerzeichen oder besser vor und nach dem Wort ein Leerzeichen mit in den Replacestring zu packen. Bei Spezialfällen wie Satzzeichen hilft das natürlich nicht mehr da hast du recht. Hier bleibt dann die Brechhammermethode einfach mehrere Stringreplace die alle Sonderfälle abdecken darauf loszulassen oder eben die Kurzform davon

    [autoit]

    stringregexpreplace

    [/autoit]
  • Text nach einem Wort durchsuchen und entfernen

    • misterspeed
    • 5. Januar 2014 um 17:54
    [autoit]


    stringinstr
    ;oder am besten gleich
    stringreplace

    [/autoit]
  • Bildübereinstimmung überprüfen

    • misterspeed
    • 5. Januar 2014 um 10:30

    Wie Bugfix bereits sagte arbeite lieber mit MD5 oder vergleichbaren Hashfunktionen. Am besten pflegst du beim Upload eine zentrale Indexdatei auf dem Webserver in dem die Hashwerte aller Bilder vermerkt sind. Du musst dann nur noch diese Indexdatei herunterladen und mit den Hashwerten der lokalen Bilder abgleichen.

  • Arraywerte als Text zusammenfassen

    • misterspeed
    • 4. Januar 2014 um 13:09

    Bevor man irgendwelche lustigen Schleifen programmiert, sollte man vielleicht erstmal klären wie die Daten überhaupt ausgewählt werden sollen. Ich sehe jedenfalls in der Beispielausgabe im ersten Posting noch kein System das den Einsatz einer intelligenten Schleife erlauben würde.


    Also @ Katrijn : Wie sollen die Blöcke ausgewählt werden? Wie groß sollen die Blöcke sein? Welches System steckt dahinter?

    Edit: Kommt davon wenn man nicht richtig liest...

  • Button drücken ohne MouseClick-Funktion

    • misterspeed
    • 3. Januar 2014 um 15:23

    Die ID lautet ja auch "button3" und nicht " Reports"...

  • Button drücken ohne MouseClick-Funktion

    • misterspeed
    • 3. Januar 2014 um 15:05

    Was geht denn nicht? Wo ist dein Code? Um welche Webseite gehts überhaupt?

    Du hast doch alles was du brauchst.. id des Buttons und die IE Funktionen um das Objekt zu erhalten bzw. anzuklicken.

  • Excel Tabelle öffnen Excelfunktionen?

    • misterspeed
    • 3. Januar 2014 um 13:18

    Und was passiert wenn du mal versuchst Excel per run() oder shellexecute() zu starten und danach _ExcelBookAttach verwendest?

  • Excel Tabelle öffnen Excelfunktionen?

    • misterspeed
    • 3. Januar 2014 um 12:28

    Nein, in meinem deutschen Excel 2010 funktioniert sum() jedenfalls nicht summe() hingegen schon.

  • Excel Tabelle öffnen Excelfunktionen?

    • misterspeed
    • 3. Januar 2014 um 11:49

    Soweit ich mich erinnere funktionieren die deutschen Excelfunktionsbezeichnungen nicht in der englischen Excel Version und umgekehrt. Vielleicht liegt der Hase ja dort begraben? Mit den Autoit Excel Funktionen hat das erstmal garnichts zu tun, schließlich öffnet dein code nur das Dokument. Der Fehler sollte also auch da sein wenn du das Dokument von Hand öffnest. Es wäre höchstens noch denkbar, dass die Autoit UDF die Spracheinstellung von Excel irgendwie beeinflußt...

  • WinMove / GUI - Größe ändern ?

    • misterspeed
    • 1. Januar 2014 um 21:23

    Du schaust dir den Befehl GUICtrlSetResizing an, welcher bei der globalen Option in der Beschreibung erwähnt wird. Dort sind alle Werte und ihre Bedeutung aufgelistet, unter anderem auch die Kombination die 802 bzw. dockall ergibt:

    [autoit]

    GUICtrlSetResizing

    [/autoit]

    Die Option ist der globale Standard der GUI fürs resizing, mit der Funktion GUICtrlSetResizing wird dies für das gewünschte Control vom globalen Standard abweichend festgelegt. Du könntest statt der globalen Optiona also auch nur bestimmte controls festsetzen und das Verschieben oder Vergrößern für andere controls zulassen.

  • WinMove / GUI - Größe ändern ?

    • misterspeed
    • 1. Januar 2014 um 21:04
    [autoit]

    Opt("GUIResizeMode",802)

    [/autoit]

    Und das Problem war nun? Wurde btw. bereits von Tweaky im 2. Post gelöst, du hättest die beiden Dinge nur in der Hilfe nachschlagen müssen...

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™