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

Beiträge von Oscar

  • Benutzerauswahl für EMailEmpfänger

    • Oscar
    • 18. Mai 2009 um 21:20

    Meinst Du sowas:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <ComboConstants.au3>
    GUICreate('Test', 400, 100)
    $sUser = _UserAccount()
    GUICtrlCreateCombo('', 10, 20, 280, 20, $CBS_DROPDOWNLIST)
    GUICtrlSetData(-1, $sUser)
    GUISetState()
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

    Func _UserAccount()
    Local $wbemFlagReturnImmediately = 0x10
    Local $wbemFlagForwardOnly = 0x20
    Local $strComputer = 'localhost'
    Local $Output=""
    Local $objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\CIMV2')
    Local $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_UserAccount', 'WQL', $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
    If IsObj($colItems) then
    For $objItem In $colItems
    If $objItem.Disabled = 0 Then $Output &= $objItem.Caption & '|'
    Next
    Endif
    Return StringTrimRight($Output, 1)
    EndFunc

    [/autoit]
  • AutoIt Fehler: Error allocating memory.

    • Oscar
    • 18. Mai 2009 um 14:20

    Also die WinApi-Funktion ist auf jeden Fall recht schnell. Allerdings kann ich bei mir nicht mehr als 240.000.000 Bytes auf einmal einlesen.
    Hier mal ein Beispielscript:

    [autoit]


    #include <WinAPI.au3>
    Global $nBytes
    Global $BufferSize = 240000000 ; Anzahl der einzulesenden Bytes (größer als 240.000.000 geht bei mir nicht)
    $tBuffer = DllStructCreate("byte[" & $BufferSize & "]")
    $hFile = _WinAPI_CreateFile('test.log', 2, 2)
    _WinAPI_SetFilePointer($hFile, 1) ; hier den Anfang des einzulesenden Bereichs setzen (ab Byte 1)
    _WinAPI_ReadFile($hFile, DllStructGetPtr($tBuffer), $BufferSize, $nBytes)
    _WinAPI_CloseHandle($hFile)
    $sText = BinaryToString(DllStructGetData($tBuffer, 1))
    MsgBox(0,0,StringLen($sText))
    $tBuffer = 0

    [/autoit]


    Ich habe mir eine ca. 3GB große Datei in "test.log" umbenannt, zum testen. So wie das Script jetzt ist, funktioniert es. Erhöht man die $BufferSize allerdings auf z.B. 250.000.000 dann gibt's eine Fehlermeldung.

  • AutoIt Fehler: Error allocating memory.

    • Oscar
    • 18. Mai 2009 um 13:58

    Muss ich selbst erstmal testen. Kann ein wenig dauern. Melde mich dann...

  • AutoIt Fehler: Error allocating memory.

    • Oscar
    • 18. Mai 2009 um 13:39

    Hast Du es schonmal mit der WinApi-Funktion "_WinAPI_ReadFile" versucht?

  • C++ bereich

    • Oscar
    • 18. Mai 2009 um 04:37

    Ich habe mit "Nein" gestimmt, weil wir sonst auch noch ein BASIC-, PASCAL-, D-, Perl- und Assemblerbereich (Liste nicht vollständig) aufmachen müssten.
    Und die (paar) Fragen, die AutoIt und C++ gemeinsam betreffen, können auch hier in "Hilfe & Unterstützung" gestellt werden.

  • Fehlermeldung

    • Oscar
    • 18. Mai 2009 um 04:02
    Zitat von Deepred

    Weil es ziemlich doof aussieht, wenn bei exe dateien eine Fehlermeldung wie "Variable used without declared" erscheint. Die Fehlermeldungsfenster will ich nämlich selber machen :D

    Am Anfang Deines Scripts:

    [autoit]

    Opt('MustDeclareVars', 1)

    [/autoit]


    verhindert solche Fehlermeldungen, weil AutoIt dann schon beim SyntaxCheck meckert.

    Im übrigen sind die "besten" Fehlermeldungsfenster die, die gar nicht erst erscheinen. ;)

  • FileSelectFolder in GUI

    • Oscar
    • 18. Mai 2009 um 03:57
    Zitat von MehmeX

    Bei deiner Funktion hatte ich nur einen Einwand und zwar das die TreeViewItems "Checkboxen" hatten. Nicht das du mich jetzt falsch verstehst Oscar . Aber so wie ich das jetzt sehe, ist diese Funktion einwenig anderst. Besser. Diese Funktion werde ich jetzt von dir verwenden, danke. :thumbup:

    Die Funktion ist immer noch die Gleiche, nur das Beispiel dazu ist anders. :)
    Du hattest ja noch geschrieben, dass Du ein Resizing haben willst. Bekommst Du das hin? Ansonsten frag ruhig.

  • Frage zu Buttonabfrage mit Array...

    • Oscar
    • 17. Mai 2009 um 19:59
    Zitat von Commander21


    Ich würde es gerne so machen, dass wenn man einen Button drückt, dessen Array ausgelesen wird.
    Also so dass wenn man $Button[0] drückt, auch dieser ausgelesen wird, wenn man Button[5] drückt, soll dieser ausgelesen werden.

    Entweder den OnEvent-Mode benutzen und dann in der Funktion das Makro @GUI_CtrlId benutzen oder wenn Du beim MessageLoop-Mode bleiben willst, dann eben 12 Case-Anweisungen und die Funktion mit Parameter (Button) aufrufen. Ich würde Ersteres bevorzugen.

    Zitat von Commander21


    PS: Ich weis, man könnte die 12 Buttons in eine For-Next schleife packen, ums zu kü+rzen, aber bitte lasst es so,
    ich finds so übersichtlicher.

    Aber sowas von umständlich. :D
    War das Erste, was mir ins Auge sprang. Hatte ich schon so geändert:

    [autoit]


    Dim $Button[12]
    For $i = 0 To 11
    $Button[$i] = GUICtrlCreateButton("", 10 + Mod($i, 4) * 150, 10 + Int($i / 4) * 50, 140, 40)
    Next

    [/autoit]
  • First / Last Day in Month

    • Oscar
    • 17. Mai 2009 um 19:11

    Nicht schlecht, kann man aber noch etwas kürzen:

    Spoiler anzeigen
    [autoit]


    Func _getFirstDayMonth($date)
    Local $aWeekDays[7] = ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag']
    Local $aDate = StringSplit($date, '.')
    Local $aOut[2] = [ _
    '01.' & $aDate[2] & '.' & $aDate[3], _
    $aWeekDays[_DateToDayOfWeekISO($aDate[3], $aDate[2], 1)]]
    Return $aOut
    EndFunc ;==>_getFirstDayMonth

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

    Func _getLastDayMonth($date)
    Local $aWeekDays[7] = ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag']
    Local $aDate = StringSplit($date, '.')
    Local $iLast = _DateDaysInMonth($aDate[3], $aDate[2])
    Local $aOut[2] = [ _
    $iLast & '.' & $aDate[2] & '.' & $aDate[3], _
    $aWeekDays[_DateToDayOfWeekISO($aDate[3], $aDate[2], $iLast)]]
    Return $aOut
    EndFunc ;==>_getLastDayMonth

    [/autoit]
  • FileSelectFolder in GUI

    • Oscar
    • 17. Mai 2009 um 17:57

    Ich dachte, dass hätten wir per EMail geklärt?
    Wenn Du mit meiner Funktion nicht weiter gekommen bist, warum hast Du nicht nochmal gefragt?

    Also hier mal ein anderes Beispiel zu meiner Funktion:

    Spoiler anzeigen
    [autoit]


    #include <WindowsConstants.au3>
    #include <GuiTreeView.au3>
    #include <GUIConstantsEx.au3>
    $hGui = GUICreate('SelectFolder', 800, 600)
    $hTreeView = GUICtrlCreateTreeView(10, 10, 380, 580, Default, $WS_EX_STATICEDGE)
    GUISetState()
    ToolTip('Please wait...')
    _GUICtrlTreeView_CreateDirectory($hTreeView, @UserProfileDir)
    ToolTip('')
    Do
    Until GUIGetMsg() = -3

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

    ;===============================================================================
    ; Function Name: _GUICtrlTreeView_CreateDirectory($hTreeView, $sPath, $bFiles)
    ; Description:: erstellt ein TreeView mit Verzeichnissen (+Dateien)
    ; Parameter(s): $hTreeView = ControlID/Handle des TreeViews
    ; $sPath = Verzeichnispfad, der dargestellt werden soll
    ; $bFiles = True = auch Dateien anzeigen, False = nur Verzeichnisse
    ; Requirement(s): #include<GuiTreeView.au3>
    ; Return Value(s): Array mit Anzahl der Verzeichnisse=[0] und Dateien=[1]
    ; 0 und @error = 1, wenn der Pfad nicht existiert bzw. kein Verzeichnis ist
    ; 0 und @error = 2, wenn das FileSystemObject nicht erstellt werden konnte
    ; Author(s): Oscar (http://www.autoit.de)
    ;===============================================================================
    Func _GUICtrlTreeView_CreateDirectory($hTreeView, $sPath, $bFiles = False)
    Local $hFileItem, $FolderColor = 0x0000FF, $Folder, $aCount[2] = [0, 0]
    If Not StringInStr(FileGetAttrib($sPath), 'D') Then Return SetError(1, 0, 0)
    $sPath = FileGetLongName($sPath)
    Local $oFSO = ObjCreate('Scripting.FileSystemObject')
    If @error Then Return SetError(2, 0, 0)
    _GUICtrlTreeView_BeginUpdate($hTreeView)
    _GUICtrlTreeView_DeleteAll(GUICtrlGetHandle($hTreeView))
    Local $hTreeViewItem = GUICtrlCreateTreeViewItem($sPath, $hTreeView)
    GUICtrlSetColor(-1, $FolderColor)
    _GUICtrlTreeView_SetIcon($hTreeView, $hTreeViewItem, 'shell32.dll', 0)
    $Folder = $oFSO.GetFolder($sPath)
    _CreateDirectoryRecursive($hTreeView, $Folder, $hTreeViewItem, $bFiles, $aCount)
    If $bFiles Then
    For $Files In $Folder.Files
    $hFileItem = GUICtrlCreateTreeViewItem($Files.Name, $hTreeViewItem)
    $aCount[1] += 1
    Next
    EndIf
    _GUICtrlTreeView_SetIcon($hTreeView, $hTreeViewItem, 'shell32.dll', 3, 2)
    _GUICtrlTreeView_SetIcon($hTreeView, $hTreeViewItem, 'shell32.dll', 110, 4)
    _GUICtrlTreeView_EndUpdate($hTreeView)
    GUICtrlSetState($hTreeViewItem, $GUI_EXPAND)
    $oFSO = ''
    Return $aCount
    EndFunc ;==>_GUICtrlTreeView_CreateDirectory

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

    Func _CreateDirectoryRecursive($hTreeView, $Folder, $ItemOld, $bFiles, ByRef $aCount)
    Local $hFolderItem, $hFileItem, $FolderColor = 0x0000FF
    For $Subfolder In $Folder.SubFolders
    $hFolderItem = GUICtrlCreateTreeViewItem($Subfolder.Name, $ItemOld)
    GUICtrlSetColor(-1, $FolderColor)
    _GUICtrlTreeView_SetIcon($hTreeView, $hFolderItem, 'shell32.dll', 3, 2)
    _GUICtrlTreeView_SetIcon($hTreeView, $hFolderItem, 'shell32.dll', 110, 4)
    $aCount[0] += 1
    _CreateDirectoryRecursive($hTreeView, $Subfolder, $hFolderItem, $bFiles, $aCount)
    If $bFiles Then
    For $Files In $Subfolder.Files
    $hFileItem = GUICtrlCreateTreeViewItem($Files.Name, $hFolderItem)
    $aCount[1] += 1
    Next
    EndIf
    Next
    EndFunc ;==>_CreateDirectoryRecursive

    [/autoit]
  • GUI - GUICtrlRead nur zweite Zeile

    • Oscar
    • 17. Mai 2009 um 17:45

    Ohne das letzte GUICtrlRead:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    GUICreate("TEST", 320, 300)
    GUISetState()
    Dim $hEditI = GUICtrlCreateEdit("", -1, -1, 320, 300)
    GUICtrlSetData($hEditI, "Zeile1" & @CRLF & "Zeile2" & @CRLF & "Zeile3" & @CRLF & "Zeile4" & @CRLF & "Zeile5" & @CRLF & "5+5")
    If GUICtrlRead($hEditI) <> "" Then
    Dim $hLine = ControlCommand("", "", $hEditI, "GetLineCount")
    Dim $iLine = ControlCommand("", "", $hEditI, "GetLine", $hLine)
    GUICtrlSetData($hEditI, GUICtrlRead($hEditI) & @CRLF & Execute($iLine))
    EndIf

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

    While 1
    If GUIGetMsg() = $GUI_EVENT_CLOSE Then Exit
    WEnd

    [/autoit]
  • GUI - GUICtrlRead nur zweite Zeile

    • Oscar
    • 17. Mai 2009 um 17:25

    Es gibt doch auch "GetLineCount" zum ermitteln wie viele Zeilen im Edit sind.

  • GUI - GUICtrlRead nur zweite Zeile

    • Oscar
    • 17. Mai 2009 um 17:17

    ControlCommand mit "GetLine" sollte auch funktionieren.

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    GUICreate("TEST", 320, 300)
    GUISetState()
    Dim $hEditI = GUICtrlCreateEdit("", -1, -1, 320, 300)
    GUICtrlSetData($hEditI, "Zeile1" & @CRLF & "Zeile2" & @CRLF & "Zeile3" & @CRLF & "Zeile4" & @CRLF & "Zeile5" & @CRLF & "Zeile6")
    MsgBox(0,0, ControlCommand('TEST', '', $hEditI, 'GetLine', 2))

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

    While 1
    If GUIGetMsg() = $GUI_EVENT_CLOSE Then Exit
    WEnd

    [/autoit]
  • Frage wegen ListView

    • Oscar
    • 17. Mai 2009 um 17:13

    Ich hab's mal angepasst:

    Spoiler anzeigen
    [autoit]


    #cs ----------------------------------------------------------------------------

    AutoIt Version: 3.3.0.0
    Author: myName

    Script Function:
    Template AutoIt script.

    #ce ----------------------------------------------------------------------------

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

    ; Script Start - Add your code below here

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

    #include <GUIConstants.au3>
    #include <GuiListView.au3>
    #include <WindowsConstants.au3>

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

    Global Const $LVM_GETITEM = $LVM_FIRST + 5
    Dim $nCurCol = -1
    Dim $nSortDir = 1
    Dim $bSet = 0
    Dim $nCol = -1
    Dim $nr, $Kundendaten

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

    Local $INI = @ScriptDir & "\data\ListView1.ini"
    Local $INI_1 = @ScriptDir & "\data\ListView2.ini"

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

    Global $aGlobal = IniReadSection($INI, "ListView1")
    Global $Listview1, $Form, $lb_Global
    Local $lastNum = IniRead($INI, "Numbers", "last", 0000)

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

    Global $aGlobal_1 = IniReadSection($INI_1, "ListView2")
    Global $Listview2, $Form, $lb_Global_1
    Local $lastNum_1 = IniRead($INI_1, "Numbers", "last", 0000)

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

    #cs#########################################################
    Beispiele ListView1
    #ce#########################################################

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

    If Not FileExists($INI) Then
    IniWrite($INI, "ListView1", 10000, "Mustermann|Löwenzahn|030/80050060")
    IniWrite($INI, "edit", 10000, "")
    IniWrite($INI, "ListView1", 10001, "Mustermann1|Holzbau|0177508090xxx")
    IniWrite($INI, "edit", 10001, "")
    IniWrite($INI, "ListView1", 10002, "Mustermann2|OBI|030/90010506082")
    IniWrite($INI, "edit", 10002, "")
    IniWrite($INI, "Numbers", "last", 10002)
    EndIf

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

    #cs#########################################################
    Beispiele ListView2
    #ce#########################################################
    If Not FileExists($INI_1) Then
    IniWrite($INI_1, "ListView2", 10000, "Mustermann|Hotel Adlon|+4930/80050060")
    IniWrite($INI_1, "edit", 10000, "")
    IniWrite($INI_1, "ListView2", 10001, "Mustermann1|Frinzkalten|+49177508090xxx")
    IniWrite($INI_1, "edit", 10001, "")
    IniWrite($INI_1, "ListView2", 10002, "Mustermann2|Hotel am Wörtersee|+49358/90010506082")
    IniWrite($INI_1, "edit", 10002, "")
    IniWrite($INI_1, "Numbers", "last", 10002)
    EndIf

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

    #Region ### START Koda GUI section ### Form=
    $Form = GUICreate("Test", 625, 372, 341, 376)
    $Tab1 = GUICtrlCreateTab(-1, 13, 625, 193)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("ListView1")
    $Listview1 = GUICtrlCreateListView("Kundennummer |Kundenname|Firma|Telefon", 8, 48, 602, 142)
    $TabSheet2 = GUICtrlCreateTabItem("ListView2")
    $Listview2 = GUICtrlCreateListView("Kundennummer |Kundenname|Firma|Telefon", 8, 48, 602, 142)
    $TabSheet3 = GUICtrlCreateTabItem("TabSheet3")
    GUICtrlSetState(-1, $GUI_SHOW)
    $ListView3 = GUICtrlCreateListView("", 8, 48, 602, 142)
    GUICtrlCreateTabItem("")
    $Group1 = GUICtrlCreateGroup("Info", 0, 216, 624, 137)
    $Input1 = GUICtrlCreateInput("", 8, 264, 121, 21)
    $Input2 = GUICtrlCreateInput("", 168, 264, 121, 21)
    $Input3 = GUICtrlCreateInput("", 320, 264, 121, 21)
    $Input4 = GUICtrlCreateInput("", 480, 264, 121, 21)
    $Label1 = GUICtrlCreateLabel("Nummer", 8, 240, 43, 17)
    $Label2 = GUICtrlCreateLabel("Kundenname", 168, 240, 67, 17)
    $Label3 = GUICtrlCreateLabel("Firma", 320, 240, 29, 17)
    $Button1 = GUICtrlCreateButton("Speichern ", 8, 312, 75, 25, 0)
    $Button2 = GUICtrlCreateButton("Drucken", 96, 312, 75, 25, 0)
    $Button3 = GUICtrlCreateButton("Löschen", 184, 312, 75, 25, 0)
    $Label4 = GUICtrlCreateLabel("Telefon", 480, 240, 40, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    _FillListView()
    GUISetState(@SW_SHOW, $Form)
    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

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

    Func _FillListView()
    _GUICtrlListView_DeleteAllItems($Listview1)
    If $lastNum = 0 Then Return
    For $i = 1 To UBound($aGlobal) - 1
    GUICtrlCreateListViewItem($aGlobal[$i][0] & '|' & $aGlobal[$i][1], $Listview1)
    Next
    _GUICtrlListView_DeleteAllItems($Listview2)
    If $lastNum_1 = 0 Then Return
    For $i = 1 To UBound($aGlobal_1) - 1
    GUICtrlCreateListViewItem($aGlobal_1[$i][0] & '|' & $aGlobal_1[$i][1], $Listview2)
    Next
    EndFunc ;==>_FillListView

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

    Func _LeftDblClick($Info)
    GUICtrlSetData($Input1, _GUICtrlListView_GetItemText($Info[0], $Info[3], 0))
    GUICtrlSetData($Input2, _GUICtrlListView_GetItemText($Info[0], $Info[3], 1))
    GUICtrlSetData($Input3, _GUICtrlListView_GetItemText($Info[0], $Info[3], 2))
    GUICtrlSetData($Input4, _GUICtrlListView_GetItemText($Info[0], $Info[3], 3))
    GUISetState(@SW_SHOW, $Form)
    EndFunc ;==>_LeftDblClick

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

    Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iIDFrom, $iCode, $tNMHDR
    Local $hWndListView1 = GUICtrlGetHandle($Listview1)
    Local $hWndListView2 = GUICtrlGetHandle($Listview2)
    $tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
    $hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
    $iIDFrom = DllStructGetData($tNMHDR, "IDFrom")
    $iCode = DllStructGetData($tNMHDR, "Code")
    Switch $hWndFrom
    Case $hWndListView1, $hWndListView2
    Switch $iCode
    Case $NM_DBLCLK ; Sent by a list-view control when the user double-clicks an item with the left mouse button
    Local $tInfo = DllStructCreate($tagNMITEMACTIVATE, $ilParam)
    Local $aInfo[12] = [$hWndFrom, _
    $iIDFrom, _
    $iCode, _
    DllStructGetData($tInfo, "Index"), _
    DllStructGetData($tInfo, "SubItem"), _
    DllStructGetData($tInfo, "NewState"), _
    DllStructGetData($tInfo, "OldState"), _
    DllStructGetData($tInfo, "Changed"), _
    DllStructGetData($tInfo, "ActionX"), _
    DllStructGetData($tInfo, "ActionY"), _
    DllStructGetData($tInfo, "lParam"), _
    DllStructGetData($tInfo, "KeyFlags")]
    _LeftDblClick($aInfo)
    Case $NM_RCLICK ; Sent by a list-view control when the user clicks an item with the right mouse button
    Return $GUI_RUNDEFMSG ; allow the default processing
    EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_NOTIFY

    [/autoit]
  • InputBox und IsString/ IsNumber

    • Oscar
    • 17. Mai 2009 um 16:12

    Eine Kombination aus Zahlen und Buchstaben würde "0" ergeben. Ok, insofern hast Du recht. :)

    Besser noch wäre es, wenn er gleich ein Input-Control statt der Inputbox benutzen würde, da gäbe es viel bessere Möglichkeiten (während der Eingabe).
    Oder ein Slider-Control statt der Zahleneingabe... ;)

  • InputBox und IsString/ IsNumber

    • Oscar
    • 17. Mai 2009 um 15:38

    Eine Zeile kürzer und ohne RegExp:

    [autoit]


    Do
    $InputBox = Number(InputBox("Transparence", "Set Transparence for iDo (255 = Solid, 0 = Invisible)",""," M3"))
    Until $InputBox >= 0 And $InputBox <= 255

    [/autoit]
  • datein auflisten

    • Oscar
    • 16. Mai 2009 um 16:16

    Danke, habe ich gleich mal in meine Sammlung aufgenommen. :thumbup:

  • datein auflisten

    • Oscar
    • 16. Mai 2009 um 15:27

    Wow!
    Kann das mit der Geschwindigkeit bestätigen! Ist auch bei mir ~5 mal schneller als die Object-Variante.
    Bernd, kannst Du die Funktion nochmal unter Scripte posten? Dann kann man besser darauf verweisen, wenn Nachfragen kommen und man findet es schneller per Forumsuche.

    Vielleicht könntest Du noch zusätzlich die Auswahlmöglichkeit (Dateien und Ordner, nur Dateien, nur Ordner) wie bei BugFixs Funktion einbauen.

  • Login script und speicher.ini

    • Oscar
    • 16. Mai 2009 um 04:20

    So geht's:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

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

    #Region ### START Koda GUI section ### Form=
    $Form2 = GUICreate("Login", 413, 128, 303, 172)
    $Input1 = GUICtrlCreateInput(IniRead(@ScriptDir & "\Config.ini", "Logindaten", "User", ""), 16, 48, 297, 21)
    $Input2 = GUICtrlCreateInput(IniRead(@ScriptDir & "\Config.ini", "Logindaten", "Password", ""), 16, 96, 297, 21)
    $Password = GUICtrlCreateLabel("Password", 16, 72, 66, 17)
    $Nickname = GUICtrlCreateLabel("Nickname", 16, 24, 52, 17)
    $Save = GUICtrlCreateButton("Save", 328, 16, 73, 25, 0)
    $Login = GUICtrlCreateButton("Login", 328, 56, 73, 65, 0)
    $Group1 = GUICtrlCreateGroup("Loginbox", 8, 8, 401, 113)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Save
    IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "User", GUICtrlRead($Input1))
    IniWrite(@ScriptDir & "\Config.ini", "Logindaten", "Password", GUICtrlRead($Input2))
    EndSwitch
    WEnd

    [/autoit]
  • datein auflisten

    • Oscar
    • 15. Mai 2009 um 23:53

    Dafür ist die Funktion von BugFix ideal: Rekursive Datei/Ordner Auflistung per Objekt

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™