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

Beiträge von funkey

  • Tabellennamen aus SQLite-Datenbank auslesen

    • funkey
    • 31. März 2011 um 06:29

    Danke, das geht super und ist auch noch schneller als die vorherige Lösung! :thumbup:

  • Tabellennamen aus SQLite-Datenbank auslesen

    • funkey
    • 30. März 2011 um 13:09

    Danke Bugfix, so erhalte ich 4 Tabellen wobei die erste den Namen "tbl_name" hat. Wenn man das noch verhindern könte wäre schön, muss aber nicht sein.
    Aber eigentlich bin ich mit der Lösung schon sehr zufrieden.
    Pragma hatte ich auch schon versucht, bin aber auf keinen grünen Zweig gekommen.

    [autoit]

    Func _SQLite_GetTableNames($hDB = -1)
    Local $aResult, $iRows, $iColumns
    _SQLite_GetTable(-1, "SELECT tbl_name FROM sqlite_master WHERE type='table';", $aResult, $iRows, $iColumns)
    Return $aResult
    EndFunc

    [/autoit]
  • Tabellennamen aus SQLite-Datenbank auslesen

    • funkey
    • 30. März 2011 um 12:38

    Hallo!
    Ich versuche die Tabellennamen aller Tabellen einer Datenbank zu bekommen. Ich habe zwar eine Lösung mittels _SQLite_SQLiteExe gefunden, bin damit aber nicht zufrieden, da es damit Schwierigkeiten gibt, wenn die Tabellennamen Leerzeichen enthalten.
    Ich würde eine Lösung mit _SQLite_Exec bevorzugen, wenn möglich und das muss es ja wohl sein.

    Spoiler anzeigen
    [autoit]

    #include <SQLite.au3>
    #include <SQLite.dll.au3>

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

    Local $sDB = @ScriptDir & "\Test.db"

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

    _SQLite_Startup()

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

    _SQLite_Open($sDB)
    _SQLite_Exec(-1, 'CREATE TABLE "Test1" (T11, T12, T13, T14, T15);')
    _SQLite_Exec(-1, 'CREATE TABLE "Test 2" (T21, T22, T23, T24, T25);')
    _SQLite_Exec(-1, 'CREATE TABLE "Test 3" (T31, T32, T33, T34, T35);')

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

    _SQLite_Close ()

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

    Local $sTableNames = _SQLite_GetTableNames($sDB)
    ConsoleWrite($sTableNames & @CRLF)

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

    _SQLite_Shutdown ()
    FileDelete($sDB)

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

    Func _SQLite_GetTableNames($sDB)
    Local $sTable
    _SQLite_SQLiteExe($sDB, ".tables", $sTable)
    Return $sTable
    EndFunc

    [/autoit]

    Vielen Dank für Vorschläge und Lösungen.

  • Radio Buttons auf Hintergrundbild

    • funkey
    • 28. März 2011 um 16:44

    Hab mal schnell was gebastelt.

    Spoiler anzeigen
    [autoit]

    #include <Constants.au3>
    #include <GUIConstantsEx.au3>
    #include <SendMessage.au3>
    #include <WinAPI.au3>
    #include <WindowsConstants.au3>

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

    Global Enum _
    $i_Start_Row = -1, _
    $i_hGUI_Row, $i_hPic_Row, $i_hCB_Row, _
    $i_Total_Rows
    Global $aTrnsChckBxs_DATA[1][$i_Total_Rows]

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

    $hGUI = GUICreate("Test transparent checkbox replacement", 400, 200)

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

    $nRadio1 = _GUICtrlTransRadio_Create($hGUI, "TransparentRadio1", 200, 33)
    $nRadio2 = _GUICtrlTransRadio_Create($hGUI, "TransparentRadio2", 200, 53)

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

    $nPic = GUICtrlCreatePic(@AutoItExe & "\..\Examples\GUI\msoobe.jpg", 0, 0, 400, 200, 0)

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

    $nCB1 = _GUICtrlTransCheckbox_Create($hGUI, $nPic, "TransparentCheckbox 1", 10, 30)
    $nCB2 = _GUICtrlTransCheckbox_Create($hGUI, $nPic, "TransparentCheckbox 2", 10, 50)

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

    GUISetState(@SW_SHOW, $hGUI)

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

    While 1
    $nGUIMsg = GUIGetMsg()

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

    Switch $nGUIMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $nCB1, $nCB2
    ConsoleWrite("CheckBox [" & GUICtrlRead($nGUIMsg, 1) & "] checked = " & (GUICtrlRead($nGUIMsg) = $GUI_CHECKED) & @LF)
    Case $nRadio1
    GUICtrlSetState($nRadio2, 4)
    Case $nRadio2
    GUICtrlSetState($nRadio1, 4)
    EndSwitch
    WEnd

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

    Func _GUICtrlTransRadio_Create($hGUI, $sText, $iLeft, $iAbove, $iWidth = -1, $iHeight = -1)
    Local $hRadioChild = GUICreate("", 13, 13, $iLeft, $iAbove, 0x40000000, 0x20, $hGUI)
    Local $nRadio = GUICtrlCreateRadio("", 0, 0, 13, 13)
    Local $rgn = _WinAPI_CreateRoundRectRgn(1, 1, 13, 13, 10, 10)
    _WinAPI_SetWindowRgn($hRadioChild, $rgn)
    _WinAPI_DeleteObject($rgn)

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

    GUISetState()
    GUISwitch($hGUI)
    GUICtrlCreateLabel($sText, $iLeft + 18, $iAbove, $iWidth, $iHeight, -1, 0x28)
    GUICtrlSetBkColor(-1, -2)
    Return $nRadio
    EndFunc ;==>_GUICtrlTransRadio_Create

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

    Func _GUICtrlTransCheckbox_Create($hGUI, $nBackPic, $sText, $iLeft, $iAbove, $iWidth = -1, $iHeight = -1, $iStyle = -1, $iExStyle = 0)
    Local $nCB = GUICtrlCreateCheckbox($sText, $iLeft, $iAbove, $iWidth, $iHeight, $iStyle, $iExStyle)
    Local $hCB = GUICtrlGetHandle($nCB)
    Local $hPic = GUICtrlGetHandle($nBackPic)

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

    If $aTrnsChckBxs_DATA[0][0] = 0 Then
    GUIRegisterMsg($WM_NOTIFY, '_TrnsChckBx_WM_NOTIFY')
    EndIf

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

    $aTrnsChckBxs_DATA[0][0] += 1
    ReDim $aTrnsChckBxs_DATA[$aTrnsChckBxs_DATA[0][0] + 1][$i_Total_Rows]

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

    $aTrnsChckBxs_DATA[$aTrnsChckBxs_DATA[0][0]][$i_hGUI_Row] = $hGUI
    $aTrnsChckBxs_DATA[$aTrnsChckBxs_DATA[0][0]][$i_hPic_Row] = $hPic
    $aTrnsChckBxs_DATA[$aTrnsChckBxs_DATA[0][0]][$i_hCB_Row] = $hCB

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

    Return $nCB
    EndFunc ;==>_GUICtrlTransCheckbox_Create

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

    Func _GUICtrlTransCheckbox_Delete($nChckBx)
    Local $hCB = GUICtrlGetHandle($nChckBx)
    Local $aTmp[$aTrnsChckBxs_DATA[0][0]][$i_Total_Rows]

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

    GUICtrlDelete($nChckBx)

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

    For $i = 1 To $aTrnsChckBxs_DATA[0][0]
    If $aTrnsChckBxs_DATA[$i][$i_hCB_Row] <> $hCB Then
    $aTmp[0][0] += 1

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

    $aTmp[$aTmp[0][0]][$i_hGUI_Row] = $aTrnsChckBxs_DATA[$i][$i_hGUI_Row]
    $aTmp[$aTmp[0][0]][$i_hPic_Row] = $aTrnsChckBxs_DATA[$i][$i_hPic_Row]
    $aTmp[$aTmp[0][0]][$i_hCB_Row] = $aTrnsChckBxs_DATA[$i][$i_hCB_Row]
    EndIf
    Next

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

    ReDim $aTmp[$aTmp[0][0] + 1][$i_Total_Rows]
    $aTrnsChckBxs_DATA = $aTmp

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

    Return $aTmp[0][0]
    EndFunc ;==>_GUICtrlTransCheckbox_Delete

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

    Func _TrnsChckBx_WM_NOTIFY($hWnd, $iMsg, $wParam, $lParam)
    Local $hWndFrom, $iIDFrom, $tNMHDR
    Local Const $tagNMCUSTOMDRAW = 'hwnd hWndFrom;uint_ptr IDFrom;int_ptr Code;dword DrawStage;hwnd hDC;' & $tagRECT & ';dword_ptr ItemSpec;uint ItemState;lparam ItemlParam'
    Local Const $STM_GETIMAGE = 0x0173

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

    Local $tNMCD = DllStructCreate($tagNMCUSTOMDRAW, $lParam)
    Local $hWndFrom = DllStructGetData($tNMCD, 'hWndFrom')
    Local $iCode = BitOR(DllStructGetData($tNMCD, 'Code'), 0)
    Local $DrawStage = DllStructGetData($tNMCD, 'DrawStage')
    Local $ItemSpec = DllStructGetData($tNMCD, 'ItemSpec')
    Local $hDC = DllStructGetData($tNMCD, 'hDC')
    Local $hPic, $aPos, $hMemDC, $hBitmap, $hPrev
    Local $iAbove, $iBeneath, $iBoxSize = 13
    For $i = 1 To $aTrnsChckBxs_DATA[0][0]
    If $hWndFrom = $aTrnsChckBxs_DATA[$i][$i_hCB_Row] Then
    Switch $iCode
    Case $NM_CUSTOMDRAW
    Switch $DrawStage
    Case $CDDS_PREPAINT
    $hPic = $aTrnsChckBxs_DATA[$i][$i_hPic_Row]
    $aPos = ControlGetPos($hWnd, '', $hWndFrom)

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

    If @error Then
    ExitLoop
    EndIf

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

    If $aPos[3] < $iBoxSize Then $iBoxSize = $aPos[3]
    $iAbove = Floor(($aPos[3] - $iBoxSize) / 2)
    $iBeneath = $iAbove + $iBoxSize

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

    $hMemDC = _WinAPI_CreateCompatibleDC($hDC)
    $hBitmap = _SendMessage($hPic, $STM_GETIMAGE, $IMAGE_BITMAP, 0)
    $hPrev = _WinAPI_SelectObject($hMemDC, $hBitmap)
    _WinAPI_BitBlt($hDC, 0, 0, $iBoxSize, $iAbove, $hMemDC, $aPos[0], $aPos[1], $SRCCOPY) ;field above checkbox
    _WinAPI_BitBlt($hDC, 0, $iBeneath, $iBoxSize, $iBeneath - $iAbove, $hMemDC, $aPos[0], $aPos[1] + $iBeneath, $SRCCOPY) ;field beneath checkbox
    _WinAPI_BitBlt($hDC, $iBoxSize, 0, $aPos[2] - $iBoxSize, $aPos[3], $hMemDC, $aPos[0] + $iBoxSize, $aPos[1], $SRCCOPY) ;checkbox text field
    _WinAPI_SelectObject($hMemDC, $hPrev)
    _WinAPI_DeleteDC($hMemDC)
    Return $CDRF_DODEFAULT
    EndSwitch
    EndSwitch

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

    ExitLoop
    EndIf
    Next

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

    Return $GUI_RUNDEFMSG
    EndFunc ;==>_TrnsChckBx_WM_NOTIFY

    [/autoit]
  • Flackernder Cursor in Editbox

    • funkey
    • 21. März 2011 um 11:51

    Also bei mir flackert da nichts mit der "editbox.au3" und auch sonst nichts.

  • Auf GUI Buttons aller Art klicken (.net)

    • funkey
    • 18. März 2011 um 09:51

    Ich weiß es nicht, aber vllt hilft ja auch das: http://www.autoitscript.com/forum/topic/79…-by-their-name/

  • Auf GUI Buttons aller Art klicken (.net)

    • funkey
    • 17. März 2011 um 09:42

    Wenn sich die ID und die Instanznummer ändern, dann kannst du immer noch über Position und/oder Größe des Controls einen Controlclick ausführen.
    Irgendetwas muss ja gleich bleiben.

    [autoit]


    ControlClick("Dingens", "", "[CLASS:WindowsForms10.BUTTON.app.0.2e0c681; X:11; Y:11; W:528; H:20]")

    [/autoit]
  • Hat jemand eine Siemens LOGO! Zuhause im Einsatz?

    • funkey
    • 16. März 2011 um 11:11

    Wenn jemand von euch eine Siemens LOGO! (Version 0BA4, 0BA5, 0BA6) im Einsatz hat, könnte er sich bitte bei mir melden. Ich habe mit AutoIt einige kleine Funktionen geschrieben, um den Status der Ein-, Ausgänge, Merker,... über die COM-Schnittstelle und das Programmierkabel auszulesen. Ich kann aber leider nur mit der Version 0BA5 testen und hätte gerne Feedback ob es auch auf den anderen Versionen funktioniert.

    Gruß funkey

  • Msgbox Ja Nei Ja,alle

    • funkey
    • 16. März 2011 um 10:48

    Hier mal ein Beispiel mittels CbtHook aus meiner FunSkin-UDF:

    Spoiler anzeigen
    [autoit]

    #include <WinAPI.au3>

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

    Local $hProcMsgBox = DllCallbackRegister("CbtHookProcMsgBox", "int", "int;int;int")
    Local $TIDMsgBox = _WinAPI_GetCurrentThreadId()
    Local $hHookMsgBox = _WinAPI_SetWindowsHookEx($WH_CBT, DllCallbackGetPtr($hProcMsgBox), 0, $TIDMsgBox)

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

    Local $iRet = MsgBox(34, "Select example", "Please select the skin you want to try")

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

    _WinAPI_UnhookWindowsHookEx($hHookMsgBox)
    DllCallbackFree($hProcMsgBox)

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

    #region Just for fun!!
    ;##########################################################
    Func CbtHookProcMsgBox($nCode, $wParam, $lParam)
    Local $RET = 0, $hBitmap = 0, $xWnd = 0
    If $nCode < 0 Then
    $RET = _WinAPI_CallNextHookEx($hHookMsgBox, $nCode, $wParam, $lParam)
    Return $RET
    EndIf
    Switch $nCode
    Case 5 ;5=HCBT_ACTIVATE
    _WinAPI_SetDlgItemText($wParam, 3, "1")
    _WinAPI_SetDlgItemText($wParam, 4, "2")
    _WinAPI_SetDlgItemText($wParam, 5, "3")
    EndSwitch
    Return
    EndFunc ;==>CbtHookProcMsgBox

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

    Func _WinAPI_SetDlgItemText($hDlg, $nIDDlgItem, $lpString)
    Local $aRet = DllCall('user32.dll', "int", "SetDlgItemText", _
    "hwnd", $hDlg, _
    "int", $nIDDlgItem, _
    "str", $lpString)
    Return $aRet[0]
    EndFunc ;==>_WinAPI_SetDlgItemText

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

    ;##########################################################
    #endregion Just for fun!!

    [/autoit]
  • ShellExecuteEx schlug fehl; Code 255

    • funkey
    • 11. März 2011 um 15:49

    Wieso benutzt du ShellExecuteEx un nicht ShellExecute? Und wie verwendest du es?

    Hab gelesen, dass das Problem gelöst werden kann, wenn man .NET aktualisiert.

  • Funktionen der Skripte im Includeverzeichnis anzeigen

    • funkey
    • 9. März 2011 um 18:54

    Also ich muss die Include-Datei nicht vorher öffnen, damit Strg+j funktioniert.

  • File Counter

    • funkey
    • 9. März 2011 um 17:53

    Du hast recht Oscar. Dann muss man eben schwerere Geschütze auffahren und eine Richedit nehmen, da EM_SETEVENTMASK nur für Richedit vorgesehen ist.


    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <GuiRichEdit.au3>
    #include <RichEditConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiRichEdit.au3>

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

    Global $hGui = GUICreate("Editor", 500, 500)
    GUIRegisterMsg(0x0111, "_WM_COMMAND")

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

    Global $LineCounter = GUICtrlCreateEdit("1", 0, 0, 40, 500, 0x6)
    Global $hLineCounter = GUICtrlGetHandle(-1)
    GUICtrlSetBkColor(-1, 0xCCCCCC)

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

    Global $hEdit = _GUICtrlRichEdit_Create($hGui, "", 40, 0, 460, 500, BitOR($ES_MULTILINE, $WS_VSCROLL, $WS_HSCROLL))
    _GUICtrlRichEdit_SetEventMask($hEdit, BitOR($ENM_SCROLL, $ENM_SCROLLEVENTS))

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

    GUISetState(@SW_SHOW)

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

    Do
    Until GUIGetMsg() = -3
    _GUICtrlRichEdit_Destroy($hEdit)

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

    Func _WM_COMMAND($hWnd, $Msg, $wParam, $lParam)
    $nNotifyCode = BitShift($wParam, 16)
    $nID = BitAND($wParam, 0x0000FFFF)
    $hCtrl = $lParam
    Switch $hCtrl
    Case $hLineCounter
    ;~ GUICtrlSetState($nEdit, $GUI_FOCUS)
    Case $hEdit
    Local $nline = _GUICtrlRichEdit_GetLineCount($hEdit)
    Local $sCounter
    For $i = _GUICtrlRichEdit_GetNumberOfFirstVisibleLine($hEdit) To $nline
    $sCounter &= $i & @CRLF
    Next
    If GUICtrlRead($LineCounter) <> $sCounter Then GUICtrlSetData($LineCounter, $sCounter)
    EndSwitch
    EndFunc ;==>_WM_COMMAND

    [/autoit]

    Edit: _GUICtrlRichEdit_SetEventMask wird für den Scroll-Event anscheinend gar nicht gebraucht!? Es funktioniert auch so.

  • File Counter

    • funkey
    • 9. März 2011 um 17:18

    Ich hätte es auch so gemacht wie Oscar, nur eben ohne Timer.

    Spoiler anzeigen
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>

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

    GUICreate("Editor", 500, 500)
    GUIRegisterMsg(0x0111, "_WM_COMMAND")

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

    Global $LineCounter = GUICtrlCreateEdit("1", 0, 0, 40, 500, 0x6)
    GUICtrlSetBkColor(-1, 0xCCCCCC)

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

    Global $nEdit = GUICtrlCreateEdit("", 40, 0, 460, 500)
    GUICtrlSetLimit(-1, 99999999)

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

    GUISetState()

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

    Do
    Until GUIGetMsg() = -3

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

    Func _WM_COMMAND($hWnd, $Msg, $wParam, $lParam)
    $nNotifyCode = BitShift($wParam, 16)
    $nID = BitAND($wParam, 0x0000FFFF)
    $hCtrl = $lParam
    Switch $nID
    Case $LineCounter
    GUICtrlSetState($nEdit, $GUI_FOCUS)
    Case $nEdit
    Local $nline = GUICtrlSendMsg($nEdit, $EM_GETLINECOUNT, -1, 0)
    Local $sCounter
    For $i = GUICtrlSendMsg($nEdit, $EM_GETFIRSTVISIBLELINE, 0, 0) + 1 To $nline
    $sCounter &= $i & @CRLF
    Next
    If GUICtrlRead($LineCounter) <> $sCounter Then GUICtrlSetData($LineCounter, $sCounter)
    EndSwitch
    EndFunc ;==>_WM_COMMAND

    [/autoit]
  • StringRegExp Function incl. Header bekommen?

    • funkey
    • 4. März 2011 um 12:48
    Spoiler anzeigen
    [autoit]

    #Include <Array.au3>

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

    $aUDF = _GetFunctionFromUDF(StringReplace(@AutoItExe, "autoit3.exe", "") & "Include\Array.au3")
    If @error Then Exit
    ConsoleWrite($aUDF[Random(0, UBound($aUDF) - 1)] & @cr)

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

    Func _GetFunctionFromUDF($sUDF)
    ;funkey 04.03.2011
    Local $hFile = FileOpen($sUDF, 0)
    Local $sFile = FileRead($hFile)
    FileClose($hFile)
    Local $aFile = StringSplit($sFile, @CRLF, 3)
    $aRegExp = StringRegExp($sFile, "(?!End)Func \b.+[\w\W]+?EndFunc", 3)
    If @error Then Return SetError(1, 0, "")
    Local $aTemp, $sTemp, $sTemp2
    For $i = 0 To UBound($aRegExp) -1
    $aTemp = StringSplit($aRegExp[$i], @CRLF, 3)
    For $j = 0 To UBound($aFile) - 1
    If $aTemp[0] = $aFile[$j] Then
    $sTemp = StringLeft(StringStripWS($aFile[$j - 1], 1), 1)
    $sTemp2 = StringLeft(StringStripWS($aFile[$j - 2], 1), 1)
    If $sTemp = ";" Or $sTemp2 = ";" Then
    For $k = $j - 1 To 0 Step -1
    If StringLeft(StringStripWS($aFile[$k], 1), 1) = ";" Or $k = $j - 1 Then
    $aRegExp[$i] = $aFile[$k] & @CRLF & $aRegExp[$i]
    Else
    ExitLoop
    EndIf
    Next
    EndIf
    EndIf
    Next
    Next
    Return $aRegExp
    EndFunc

    [/autoit]
  • eukalyptus ist 32

    • funkey
    • 2. März 2011 um 17:07

    Ich wünsche dir auch alles Gute zum Geburtstag! Feier schön!! :party:

    [Blockierte Grafik: http://geeksontheinside.files.wordpress.com/2010/04/birthday-hamster.jpg]

  • Array erst ab [1] befüllen

    • funkey
    • 24. Februar 2011 um 13:18

    Wenn $aSplit vorher ein normaler String ist, dann:


    [autoit]

    $aSplit = StringSplit($aSplit & @CRLF & GUICtrlRead($GUILizNetzVerteiltServerName), @CRLF, 3)

    [/autoit]
  • Schnellste Skript zur Rätsellösung

    • funkey
    • 17. Februar 2011 um 17:27

    Ich erhalte nur beim dreifachen eine gültige Lösung.

  • UEZ hat Geburtstag

    • funkey
    • 17. Februar 2011 um 16:41

    Auch ich wünsche dir alles Gute zu deinem Geburtstag!! [Blockierte Grafik: http://www.greensmilies.com/smile/smiley_emoticons_zauberer.gif]
    Bleib so wie du bist!

  • Head - Tail v0.65 Build 2011-03-15 Beta

    • funkey
    • 15. Februar 2011 um 14:48
    Zitat von UEZ

    Ich habe auch ein _WinAPI_CloseHandle($hFile) beim Fehler Rücksprung vergessen -> zwischen Zeile 9 und 10 würde ich noch ein _WinAPI_CloseHandle($hFile) einbauen!

    Was soll das bringen? Was muss den geschlossen werden, wenn es gar nicht geöffnet weden konnte?

  • Head - Tail v0.65 Build 2011-03-15 Beta

    • funkey
    • 15. Februar 2011 um 06:42

    Vielen Dank UEZ für die 2 Skripte. Hab mir mal die Hauptfunktion von Tail für mich passend umgeschrieben.

    Spoiler anzeigen
    [autoit]


    Func _GetTailOfFile($filename, $bytes = 512, $save = 0)
    Local $nBytes, $data, $em, $hSave
    Local Const $fsize = FileGetSize($filename)
    If FileGetSize($filename) < $bytes Then $bytes = $fsize
    If $bytes > 0x7FFFFF Then $bytes = 512
    Local $tBuffer = DllStructCreate("byte[" & $bytes & "]")
    Local $hFile = _WinAPI_CreateFile($filename, 2, 2)
    If Not $hFile Then
    $em = "ERROR: unable to open file. Might be open by another process."
    Return SetError(1, "", $em)
    EndIf
    _WinAPI_SetFilePointer($hFile, -$bytes, 2)
    _WinAPI_ReadFile($hFile, DllStructGetPtr($tBuffer), $bytes, $nBytes)
    _WinAPI_CloseHandle($hFile)
    $data = BinaryToString(DllStructGetData($tBuffer, 1))
    $tBuffer = ""

    If $save Then
    $hSave = FileOpen($save, 2)
    If $hSave = -1 Then
    $em = "ERROR: " & $save & " could not be created!"
    Return SetError(1, "", $em)
    EndIf
    FileWrite($hSave, $data)
    FileClose($hSave)
    EndIf
    Return $data
    EndFunc ;==>GetTailOfFile

    [/autoit]

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™