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

Beiträge von BugFix

  • Zeile in 2D Array schreiben

    • BugFix
    • 6. April 2012 um 10:36

    Wenn es eleganter (und skriptsparender) sein soll, einfach die Zuweisungen in eine Funktion auslagern, dazu gibts die :D

    [autoit]

    ; statt:
    $foobar[5][0] = "Spalte0"
    $foobar[5][1] = "Spalte1"
    $foobar[5][2] = "Spalte2"

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

    ; einfach mit einer kleinen Funktion:
    _FillArrayRow($foobar, 5, "Spalte0", "Spalte1", "Spalte2")

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

    Func _FillArrayRow(ByRef $_a, $_i, $_v1, $_v2, $_v3)
    $_a[$_i][0] = $_v1
    $_a[$_i][1] = $_v2
    $_a[$_i][2] = $_v3
    EndFunc

    [/autoit]
  • [Openpandora] Neuer Handheld mit Mini-Computer Potential

    • BugFix
    • 4. April 2012 um 20:29

    Dinge, die die Welt nicht braucht.
    Und damit es überhaupt wahrgenommen wird, bietet man solch technisch antikes Gedöns dann zu überteuerten Preisen an. tz tz :D

  • Maus lässt sich nicht mehr Bewegen

    • BugFix
    • 3. April 2012 um 18:15

    Das ist selbst für OffTopic zu OT!

    Dafür gibt es PC-Foren.

  • Datenbank Return als Aarray

    • BugFix
    • 3. April 2012 um 17:11

    Schau mal hier: https://autoit.de/index.php?page…8003#post248003
    Das Bsp. ist für eine ander DB, aber vorgehensweise ist identisch.
    Das Geheimnis liegt in:

    [autoit]

    $array = $oRecSet.GetRows

    [/autoit]


    ;)

  • Board-Editor zu klein

    • BugFix
    • 3. April 2012 um 09:09
    Zitat von progandy

    noch folgendes Scriptish-Skript


    Habe mir das AddOn mal installiert und das Skript.
    Aber da paßt was nicht:

    Zitat

    [09:06:29.677] GM_addStyle is not defined
    @Scratchpad:15
    @ Scratchpad:15

  • Board-Editor zu klein

    • BugFix
    • 2. April 2012 um 20:13

    Danke progandy, hab ich noch nie bemerkt ;) - damit gehts. Trotzdem ist es eigentlich Humbug, dass die Header die Hälfte der Seite fressen.

  • Board-Editor zu klein

    • BugFix
    • 2. April 2012 um 19:30

    Hi,
    eines nervt mich an WoltLab schon länger, aber seit dem ich ein Laptop mit Full-HD Screen habe fällt es richtig ins Auge:
    Wenn ich einen Beitrag schreibe, steht für die reine Editierfläche weniger als 1/3 der Seite zur Verfügung, lumpige 12 Zeilen sind sichtbar. Auf der Hälfte der Seite tummeln sich die Header.

    Kann man das ändern?
    Wenn man in einem längeren Post etwas sucht ist das ziemlich mühselig. :wacko:

  • SciTE Individualisierung - Ermitteln freier command-Nummern

    • BugFix
    • 2. April 2012 um 13:10

    Hi,
    wer im SciTE-Menü eigene Skripte, Tools etc. einbindet muß dafür dem Befehl eine Nummer zuweisen (command.Nr....).
    Die Anzahl der Nummern ist begrenzt auf 50 ( 0-49 ) und bei Installation von ScITE4AutoIt sind gleich mal 35 verbraten ;( . Über die SciTE-Konfiguration (in SciTE Strg+1 <Tools-Selection>) könnt ihr auswählen welche dieser Tools ihr überhaupt möchtet. Ich verwende kaum ein Drittel davon.
    Habt ihr dort Tools abgewählt, stehen die command-Nummern zur freien Verfügung und können von euch in den SciTEUser.properties eigenständig belegt werden.
    Damit ihr nicht beide properties-Dateien händisch durchsuchen müßt nach freien command-Nummern, habe ich dafür ein kleines Skript erstellt.

    Kleiner Tipp:
    Verwendet als erstes die Nummern 36-49. Erst wenn ihr damit nicht mehr ausreicht, solltet ihr die Nummern der deaktivierten Tools verwenden.
    Hintergrund: Kommt eine neue SciTE-Version, dann werden die Tools alle wieder aktiv installiert. Vergeßt ihr diese zu deaktivieren kann das in Einzelfällen zu Konflikten mit euren Einträgen in den User.properties führen, falls z.B. bei den Tools ein Befehlsdetail mehr als bei euch zur gleichen Nummer hinterlegt ist.
    Grundsätzlich haben alle Einträge in den User.properties höchste Priorität. Deshalb sollte man auch ausschließlich dort Einträge vornehmen.


    OK, Anhängen geht nicht. 2 kB ist viiieeel zu riesig für WoltLab: Die Datei _GetFreeCommandNum[0.1].au3 ist zu groß (PHP Limit). :wacko:
    Also müßt ihr kopieren. ;)

    Spoiler anzeigen
    [autoit]

    #Region - TimeStamp
    ; 2012-04-02 12:49:28 v 0.1
    #EndRegion - TimeStamp
    #include <File.au3>

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

    $sPath1 = StringTrimRight(@AutoItExe, StringLen(@AutoItExe)-StringInStr(@AutoItExe, '\', 1, -1)) & 'SciTE\properties\au3.properties'
    $sPath2 = @HomeDrive & @HomePath & '\SciTEUser.properties'
    $sUsed = ''

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

    _GetUsed($sPath1, $sUsed)
    _GetUsed($sPath2, $sUsed)

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

    Local $aUsed = StringSplit(StringTrimRight($sUsed, 1), ' '), $sFree = '', $fFound
    For $i = 0 To 49
    $fFound = False
    For $j = 1 To $aUsed[0]
    If $aUsed[$j] = $i Then
    $fFound = True
    ExitLoop
    EndIf
    Next
    If Not $fFound Then $sFree &= $i & ' '
    Next
    $sFree = StringTrimRight($sFree, 1)
    ConsoleWrite('! Freie command-Zahlen: ' & $sFree & @CRLF)

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

    Func _GetUsed($_path, ByRef $_s)
    Local $aFile, $aMatch, $sUsed = ''
    _FileReadToArray($_path, $aFile)
    For $i = 1 To $aFile[0]
    If StringRegExp($aFile[$i], '^b?command\.\d{1,2}.+') Then
    $aMatch = StringRegExp($aFile[$i], '^b?command\.(\d{1,2}).+', 3)
    $_s &= $aMatch[0] & ' '
    EndIf
    Next
    EndFunc

    [/autoit]
  • Die $Variablen auflisten, kopieren (zwecks Beschreibung)

    • BugFix
    • 1. April 2012 um 20:47

    SciTEUser.properties kannst du einfach in SciTE öffnen: <Optionen><Benutzereinstellungen öffnen>
    Wenn du keine Einträge hast, kannst du mit Nr. 36 starten, 35 sind schon vorbelegt in den Globalen properties.

  • Die $Variablen auflisten, kopieren (zwecks Beschreibung)

    • BugFix
    • 1. April 2012 um 13:06

    Schau mal hier: https://autoit.de/index.php?page…7347#post217347, macht genau das.

    Und wenn du von Anfang an deine Variablen hiermit kommentierst, bekommst du jederzeit die erforderliche Info per HotKey.

  • Permutation mit wiederholungen

    • BugFix
    • 31. März 2012 um 13:00

    Versuche mal dein Ansinnen etwas verständlicher zu erklären.
    Ich habe keine Ahnung, was du hier mit Slots meinst. Dieses Wort hat soviel Bedeutungen, wie es Graustufen gibt. :D
    Sinnvoll ist immer ein Besipiel mit verschiedenen Zuständen. Vorher, nacher, Schrittweite von-bis, etc. pp.

    Mit deiner bisherigen Fragestellung kann ich nur Raten, was du vorhast.

  • Folgebuchstabe errechnen

    • BugFix
    • 31. März 2012 um 11:53

    Das hier ist das Einfachste:

    [autoit]

    ConsoleWrite(Chr(Asc('A')+1) & @CRLF)

    [/autoit]

    Es ist natürlich sinnvoll, die Grenzen mit abzufangen, aber das bekommst du schon hin. ;)

  • Python - AutoIt Liste/Tabelle

    • BugFix
    • 31. März 2012 um 11:21
    Zitat von RedHead

    die auf einer Seite die AutoIt - Befehle auflistet und auf der anderen Seite die dazu passenden Python - Befehle?


    Warum das nicht machbar ist, wurde schon beschrieben. Aber es wäre auch der falsche Weg sich eine Sprache anzueignen. Jede Sprache hat ihre eigenen Eckpunkte, die man erst mal verstehen muß bevor man sich dann komplexen Themen widmen kann.
    Allerding hat Python eine sehr verständliche Syntax und ist angenehm zu lernen. Es sind ausreichend Tutorials vorhanden, in denen man sich Schritt für Schritt mit der Sprache vertraut machen kann.
    Der Weg, eine neue Sprache zu lernen ist niemals so mühsam, wie die erste Sprache. Syntax ändert sich, evtl.muß man sich mit Objekten beschäftigen, aber eines ändert sich nie: Programmlogik. Denn diese ist unabhängig von jeder Sprache. Kannst du Programmieren, dann ist das Codieren (in welcher Sprache auch immer) kein Teufelswerk mehr. ;)

  • Permutation mit wiederholungen

    • BugFix
    • 31. März 2012 um 11:10

    Wieviel Zustände können sich denn da ergeben? (Jetzt mit 1 und 2 angegeben)
    Du könntest statt 1,2,3 (oder was vorgesehen ist, Dualzahlen verwenden (1,2,4,8..) und diese mit BitOR verknüpfen, mit BitXOr löschen, mit BitAnd auf Existenz prüfen. Somit hast du nur eine Zahl, die alle Statuswerte (oder was die 1,2 auch bedeuten) trägt.

  • #NoTrayIcon innerhalb einer Funktion wird *immer* ausgeführt

    • BugFix
    • 31. März 2012 um 11:02
    Zitat von drustix

    Seltsamerweise wird diese Zeile auch dann ausgeführt, wenn die Funktion gar nicht aufgerufen wird


    Das hat auch in einer Funktion nichts verloren, es handelt sich hier um eine Kompilerdirektive (unter dem Begriff kannst du ach nach weiteren Erläuterungen suchen ;)) und diese wird immer vor dem Kompilieren des Skriptes ausgeführt, unerheblich von der Position.
    Die Compiler Directives sind Bestandteil des AutoIt Wrappers, der in SciTE4AutoIt integriert ist. Somit mußt du in der SciTE-Hilfe (Strg+F1) danach suchen.

  • Microsoft iSCSI Software Target 3.3

    • BugFix
    • 30. März 2012 um 18:55
    Zitat von franzp

    der Links siehe oben ist von MS gefixed.


    :D Gefixed hört sich nach entfernt an, du wolltest aber sicher sagen, dass er repariert wurde. ;) Link

  • _ExcelBookOpen (Return Values, falls das Passwort nicht stimmt)

    • BugFix
    • 28. März 2012 um 20:41
    Zitat von GlammaKid

    Wollte nur kurz anmerken, dass "If .ActiveWorkbook.Sheets($i).Visible" im Excel.au3 drin steht.


    Dann aber in einem, hier nicht sichtbaren Kontext, z.B.:

    [autoit]


    With $oExcel
    If .ActiveWorkbook.Sheets($i).Visible .....
    ;...

    [/autoit]

    ;)
    Aus diesem Grund ist es immer sinnvoll das Skript zu zeigen und nicht nur Fragmente davon.

  • _ExcelBookOpen (Return Values, falls das Passwort nicht stimmt)

    • BugFix
    • 27. März 2012 um 19:31
    Zitat von water

    Ab 3.3.9.2 schon.


    Mag sein :D - aber ich hab den Betas abgeschworen, da sie i.A. doch recht verbugt sind. Da nutze ich lieber die Funktionen, von denen ich weiß dass es klappt. ;)

  • _ExcelBookOpen (Return Values, falls das Passwort nicht stimmt)

    • BugFix
    • 27. März 2012 um 18:01
    Zitat von GlammaKid

    If .ActiveWorkbook.Sheets($i).Visible = $xlSheetVisible Then


    Die Codezeile kann nie funktionieren: If .ActiveWorkbook.Sheets($i).Visible  ;)
    Und du kannst Objekt-Fehler nicht mit "If @error..." abfangen. Diese Aufgabe übernimmt ja der Error-Handler.
    Es ist doch völlig wurscht, welchen Fehlercode du bei falschem Passwort generierst. Schreib doch die Fehlerfunktion einfach so:

    [autoit]


    Func MyErrFunc()
    ConsoleWrite('Passwortfehler bei Datei: ' & $sFilePath1 & @CRLF)
    EndFunc

    [/autoit]

    Die Variable $g_eventerror kannst du dir hier schenken. Im Fehlerfall wird die definierte Funktion (MyErrFunc) aufgerufen und gibt dir die gewünschte Info.

  • _ExcelBookOpen (Return Values, falls das Passwort nicht stimmt)

    • BugFix
    • 25. März 2012 um 22:02

    Der com-Error Handler, wie du ihn in der Hilfe findest, ist schon das richtige Instrument.
    Welche Werte die Fehler haben ist eigentlich zweitrangig. Wichtig ist, dass sie erkannt werden und du reagieren kannst ohne dass dein Programm abstürzt.
    Und wenn ich dich recht verstanden habe, treten Fehler doch nur auf, wenn du mit falschem Passwort öffnen willst.

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™