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

  • SciTE - Toggle Folding #Region

    • BugFix
    • 18. September 2013 um 22:18
    Zitat von alpines

    Meiner Meinung nach ein bisschen überflüssig noch mehr HotKeys anzulegen,
    stattdessen kann man auch einfach Alt + 3x Rechts + Runter + Enter drücken und schon hat man das gleiche, dann erreicht man auch Toggle All Folds.


    Sorry, aber dieser Beitrag ist ziemlich unproduktiv. Natürlich kann man sich mit dem Alt-Menü durchhangeln. Aber bei der Tastenfolge ist das alles andere als übersichtlich. Insofern ist das Anlegen eines Hotkeys durchaus sinnvoll. Denn eh ich mich so kompliziert durchhangele, kann ich dann auch die Maus nehmen, das geht dann deutlich schneller (Str+Shift+Klick-auf-Falzmarke).

  • SciTE - Toggle Folding #Region

    • BugFix
    • 18. September 2013 um 21:35

    Ich sag doch: Wenn du es nicht weist - nimm die 36!
    Die Tools, die mit SciTE installiert werden, belegen normalerweise die Nummern bis inklusive 34. (Diese findest du in der "au3.properties")

  • SciTE - Toggle Folding #Region

    • BugFix
    • 18. September 2013 um 21:16

    AnMa: Ist bei dir denn die Nr. 23 frei?
    Nimm mal lieber die 36, wenn du das nicht sicher weißt.

  • SciTE - Toggle Folding #Region

    • BugFix
    • 18. September 2013 um 20:59

    Grundsätzlich gilt:
    • SciTEUser.properties öffnen
    • freie command-Nr raussuchen (bei aktueller SciTE-Version steht dann dort z.B. "command.name.33.$(au3)="
    • wenn du selbst noch keine Einträge erstellt hast kannst du auf jeden Fall die Nummern 36 bis 49 verwenden

    So ist der Aufbau der Einträge:

    Code
    command.name.35.*.au3=OrganizeIncludes    <== Name, erscheint unter Extras
    command.35.*.au3="$(autoit3dir)\autoit3.exe" "$(SciteDefaultHome)\OrganizeIncludes\OI_1.0.0.50.au3"    <== Befehl der ausgeführt wird
    command.save.before.35.*.au3=1     <== Speichern vor Ausführen, nur wenn erforderlich
    command.shortcut.35.*.au3=Ctrl+Shift+Alt+I     <== der Hotkey

    Der verwendete Befehl kann sein:
    • Aufruf einer EXE (mit/ohne Parameter), somit auch AU3-Skripte als Param der autoit3.exe
    • Aufruf von Lua-Skripten ( dofile )
    • Ausfüren von Lua-Code direkt ( dostring )

    Bezüglich "Toggle All Folds": Ich werde das Bsp. in eine Funktion integrieren, die differenzierte Regionen (#Region, Function, Comment-Block, etc.) oder alle Foldings betrifft. Hab noch etwas Geduld. ;)

  • SciTE - Toggle Folding #Region

    • BugFix
    • 17. September 2013 um 23:18

    Mit diesem kleinen Tool lassen sich per Hotkey alle Regionen im Skript aus-/einklappen. Die anderen Faltungen in Funktionen etc. sind davon nicht betroffen.

    Einfach in eurer SciTEUser.properties bei einer freien Nummer eintragen:

    Code
    # 23 Un/Fold #Region
    command.name.23.$(au3)=Toggle Fold #Region
    command.23.*.au3=dostring local text = editor:GetText() tReg = {} pos, iEnd = text:find('#[Rr][Ee][Gg][Ii][Oo][Nn]') \
    if pos ~= nil then table.insert(tReg, pos) while true do \
    pos, iEnd = text:find('#[Rr][Ee][Gg][Ii][Oo][Nn]', iEnd) \
    if pos == nil then break end table.insert(tReg, pos) end \
    for i=1, #tReg do editor:GotoPos(tReg[i]) editor.CurrentPos = tReg[i] \
    scite.MenuCommand(IDM_EXPAND) end end
    command.mode.23.*=subsystem:lua
    command.shortcut.23.*.au3=Ctrl+Alt+R
  • DLLCall und Absturz: Exit Code -1073741819

    • BugFix
    • 17. September 2013 um 17:15

    Also wenn ich mich recht erinnere, müssen die Enumerationen, wenn sie in Strukturen enthalten sind, als Array eingebunden werden. Nur weiß ich nicht, welcher Datentyp vorgesehen ist. Eigentlich sollte "byte[Anzahl_Enumeration]" funktionieren.

  • DLLCall und Absturz: Exit Code -1073741819

    • BugFix
    • 17. September 2013 um 15:57

    Dann zeig mal das AutoIt-Pendant dazu. Ich habe bisher immer Stress gehabt, wenn Enumerationen in der Struktur enthalten sind, weil AutoIt Enumeration als Datentyp nicht kennt. Ich vermute mal, dass auch in diesem Fall dort der Fehler entsteht.

  • DLLCall und Absturz: Exit Code -1073741819

    • BugFix
    • 17. September 2013 um 15:47

    Bist du denn auch sicher, dass der Pointer auf einen passenden Inhalt ( WCHAR[260] ) verweist? Ich vermute mal, dass die Datenstruktur nicht passt.

  • DLLCall und Absturz: Exit Code -1073741819

    • BugFix
    • 17. September 2013 um 15:13

    Probier doch mal so:

    [autoit]

    $ptr = DllStructGetData($PackageInfo_struct, "InstallClient")
    If Not IsPtr($ptr) Then Exit MsgBox(0, 'FEHLER', '"InstallClient" ist kein Pointer')
    $struct = DllStructCreate("WCHAR[260]", $ptr)
    ConsoleWrite( DllStructGetData($struct, 1)) & @LF)

    [/autoit]
  • Audiofiles zusammenführen

    • BugFix
    • 16. September 2013 um 18:36

    In diesem Post findest du eine Funktionsliste.

  • Win 7 Bibliotheken nach D: verschieben

    • BugFix
    • 16. September 2013 um 18:27

    Xenon: Bibliotheken kann man nicht wie Ordner behandeln, da sie nur Verknüpfungen darstellen. Noch dazu sind die angezeigten Namen nicht real, intern werden andere verwendet.
    Ich habe das noch nie automatisiert, da auf Hard- und Softlinks aufgepasst werden muss. Zu schnell zerschießt man dabei die Struktur.

  • [PROJEKT] Automatisierter Download und Verarbeitung von Audiodateien

    • BugFix
    • 16. September 2013 um 12:54

    Auch mit diesem Skript ist alles linksbündig.

    PS: Bitte benenne die GroupEx[0.7].au3 um zur GroupEx.au3. "[0.7]" ist nur die Programmversion, die ich beim Veröffentlichen im Dateinamen mit angebe.

    EDIT: "...Eben diese Box ist dann rechtsbündig zu dem Menupunkt."
    DAS kannst du nicht beeinflussen. Das hat auch nichts mit der Ausrichtung von Menü oder Menü-Item zu tun.
    Wenn du das anders möchtest, musst du dir ein eigenes Fenster basteln mit Menüpunkten, das du dann an gewünschter Position einbindest.

  • [PROJEKT] Automatisierter Download und Verarbeitung von Audiodateien

    • BugFix
    • 16. September 2013 um 12:30

    2 Sachen
    1. Bitte poste immer ein lauffähiges Skript. Kaum jemand hat Lust, da eine GUI herumzubasteln.
    2. Was genau soll linksbündig sein? Die Menüpunkte innerhalb der GUI (das ist der Fall) oder der Text in einem Menü-Item (auch der ist linksbündig)

  • Rangliste für ein Browsergame

    • BugFix
    • 16. September 2013 um 11:04

    Also falls dein Highscore nicht unendlich viele Werte aufnehmen soll, sondern z.B. etwa 100, ist eine INI immer noch einfacher zu händeln (und auch nicht weniger performant) als eine Datenbank.
    Hier mal ein Bsp.wie ich sowas im Allgemeinen verwende. Ein Limit ist hier nicht gesetzt, kann aber problemlos als erste Abfrage in der AddHighScore-Funktion integriert werden.
    Im Gegensatz zu den bisherigen Beispielen, wird hier auch berücksichtigt, dass bei demselben Score auch derselbe Rang zu vergeben ist.

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>

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

    #cs
    [highscore]
    0=1|1990|nameA|01.09.2013
    0=2|1888|nameA|11.09.2013
    0=3|900|nameB|02.09.2013
    0=4|890|nameA|07.09.2013
    #ce

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

    OnAutoItExitRegister('_WriteIni')

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

    Local $INI = 'sortHigh.ini'
    Local $aHigh = _ReadIniScoreToArray($INI, 'highscore')

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

    _ArrayDisplay($aHigh, 'Highscore aus INI')

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

    _AddNewScoreAndSort($aHigh, 900, 'MrX', '12.09.2013')
    _AddNewScoreAndSort($aHigh, 900, 'MrY', '12.09.2013')
    _AddNewScoreAndSort($aHigh, 900, 'MrZ', '12.09.2013')
    _AddNewScoreAndSort($aHigh, 900, 'MrQ', '12.09.2013')
    _AddNewScoreAndSort($aHigh, 1990, 'MrsP', '12.09.2013')
    _ArrayDisplay($aHigh, 'Highscore aktualisiert')

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

    Func _WriteIni()
    _WriteScoreArrayToIni($INI, 'highscore', $aHigh)
    EndFunc

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

    Func _ReadIniScoreToArray($_sPathINI, $_sSection)
    Local $aSection = IniReadSection($_sPathINI, $_sSection), $aSplit
    Local $aScore[$aSection[0][0]+1][4] = [[$aSection[0][0]]] ; [[Rang,Score,Name,Datum]], [0][0]=Anzahl
    For $i = 1 To $aSection[0][0]
    $aSplit = StringSplit($aSection[$i][1], '|')
    For $j = 1 To 4
    If $j = 2 Then $aSplit[$j] = Number($aSplit[$j])
    $aScore[$i][$j-1] = $aSplit[$j]
    Next
    Next
    Return $aScore
    EndFunc

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

    Func _WriteScoreArrayToIni($_sPathINI, $_sSection, ByRef $_aScore)
    Local $sWrite = ''
    For $i = 1 To $_aScore[0][0]
    $sWrite &= '0|' & $_aScore[$i][0] & '|' & $_aScore[$i][1] & '|' & $_aScore[$i][2] & '|' & $_aScore[$i][3] & @LF
    Next
    IniWriteSection($_sPathINI, $_sSection, $sWrite)
    EndFunc

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

    Func _AddNewScoreAndSort(ByRef $_aScore, $_iScore, $_sName, $_sDate)
    $_aScore[0][0] += 1
    ReDim $_aScore[$_aScore[0][0]+1][4]
    $_aScore[UBound($_aScore)-1][1] = Number($_iScore)
    $_aScore[UBound($_aScore)-1][2] = $_sName
    $_aScore[UBound($_aScore)-1][3] = $_sDate
    _ArraySort($_aScore, 1, 1, 0, 1)
    Local $iRank = 1
    For $i = 1 To $_aScore[0][0]
    $_aScore[$i][0] = $iRank
    If $i > 1 And $_aScore[$i-1][1] = $_aScore[$i][1] Then
    $_aScore[$i][0] = $_aScore[$i-1][0]
    Else
    $iRank += 1
    EndIf
    Next
    EndFunc

    [/autoit]
  • Spezielles Fensterdesign, Icon, Button und Inputbox vom Windows-eigenen Programm

    • BugFix
    • 15. September 2013 um 17:20
    Zitat von bbm1995

    hier bekommt man wohl keine Hilfe und Friesel braucht zu lange, bis da mal was kommt.

    Das und ständiges Pushen sehe ich als Grund für Verwarnung des TE.
    [CLOSED]

  • [PROJEKT] Automatisierter Download und Verarbeitung von Audiodateien

    • BugFix
    • 15. September 2013 um 12:34

    Schau mal in meine Signatur, da findest du ein Tut zu Arrays.

    Ich hab mal eine Lösungsvariante gebastelt. Probier erst mal selber, dann guck in den Spoiler:

    Spoiler anzeigen
    [autoit]

    #include <Date.au3>

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

    ConsoleWrite('Heute ist: ' & _WeekDay_GE(@YEAR, @MON, @MDAY) & @LF)

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

    Func _WeekDay_GE($_iYYYY, $_iMM, $_iDD)
    Local $aWDays[8] = ['','Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag']
    Local $iDay = _DateToDayOfWeek($_iYYYY, $_iMM, $_iDD) ; So = 1, ... Sa = 7
    Return $aWDays[$iDay]
    EndFunc

    [/autoit]
  • Controlgettext("") von unbekanntem aber fokussiertem control herausfinden

    • BugFix
    • 14. September 2013 um 16:54

    Ich wollte mal dein Projekt mir anschauen. Ich nutze allerdings nicht die Klicki-Bunti, an Unübersichtlichkeit nicht zu überbietenden Versionen 2003 oder 2010, sondern nach wie vor, das auf die Funktionen beschränkte Office 2000. :thumbup:
    Somit konnte ich mit deinem Bsp. nix anfangen.

  • [PROJEKT] Automatisierter Download und Verarbeitung von Audiodateien

    • BugFix
    • 14. September 2013 um 15:02

    Aha - Fehler wurde lokalisiert und gefixed. - Lade v0.7 und alles ist geritzt.

  • GroupEx.au3 -- User Group Control, vielseitig modifizierbar

    • BugFix
    • 14. September 2013 um 15:01

    Noch ein kleiner Fix. Controls innerhalb der Group ausserhalb der Main-GUI wurden nicht dargestellt.
    Danke AnMa fürs Entdecken. ;)

    Aktuelle Version: v0.7

  • [PROJEKT] Automatisierter Download und Verarbeitung von Audiodateien

    • BugFix
    • 14. September 2013 um 14:18

    Mein Goldstück :D, dann brauch ich aber mal etwas Code, um zu sehen was da los ist. ;)

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™