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

  • Manage USB-Drives per devcon.exe

    • BugFix
    • 8. Februar 2009 um 17:18

    Achja, die gute (böse) alte Floppy.
    OK, Änderung wie folgt:

    Spoiler anzeigen
    [autoit]

    Func _GetRemovable()
    Local $reg, $tmp, $val, $pref, $aDrive[1][3]
    Local $var = DriveGetDrive( "REMOVABLE" )
    If Not @error Then
    For $i = 1 To UBound($var) -1
    $val = ''
    $reg = RegRead("HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices", "\DosDevices\" & $var[$i])
    For $k = 1 To StringLen($reg) - 2 Step 2
    $tmp = _HexToString(StringMid($reg, $k, 2))
    If $tmp <> "" Then
    $val = $val & $tmp
    EndIf
    Next
    $pref = _StringBetween($val, 'Media#', '&RM#', 1)
    If @error Then ContinueLoop ; <========================= DIESE ZEILE EINFÜGEN !!!
    If $aDrive[UBound($aDrive)-1][0] <> '' Then ReDim $aDrive[UBound($aDrive)+1][3]
    $aDrive[UBound($aDrive)-1][0] = StringUpper($var[$i])
    $tmp = _GetUSBCaption($pref[0])
    $tmp = StringSplit($tmp, '|')
    $aDrive[UBound($aDrive)-1][1] = $tmp[1]
    $tmp = StringSplit($tmp[2], @LF)
    $aDrive[UBound($aDrive)-1][2] = $tmp[1]
    Next
    EndIf
    Return $aDrive
    EndFunc ;==>_GetRemovable

    [/autoit]


    Ich werde es gleich mal im ersten Post korrigieren.

  • USB-Hardware-ID auslesen

    • BugFix
    • 8. Februar 2009 um 15:57

    Danke, habe ja inzwischen den passenden Registryschlüssel gefunden. Aber anscheinend wird nicht überall der Registry-Eintrag erstellt.
    Lassen wir mal die Problemkinder diesen Code testen. :D

  • Manage USB-Drives per devcon.exe

    • BugFix
    • 8. Februar 2009 um 15:43

    Hmm, eigentlich wird beim Einstecken eines eines USB-Devices ein Registryeintrag in HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR\ erstellt (und nicht wieder entfernt), mit den Parametern des Devices.
    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Probiert mal bitte mit dem WMI-Code von hier: [ gelöst ] USB-Hardware-ID auslesen
    Sollte bei eingestecktem Stick in etwa so etwas herauskommen:

    Code
    \\ComputerName\root\cimv2:Win32_PnPEntity.DeviceID="USBSTOR\\DISK&VEN_USB&PROD_FLASH_DISK&REV_V1.1\\907310000250&0"

    Wenn nicht... :wacko:

  • Bestimmte Pfade der Festplatte nach Ordnern absuchen

    • BugFix
    • 8. Februar 2009 um 14:18
    Zitat von -ROUGE-

    Da frag ich mich aber wie Installer die Pfade des schon installieren Progs so schnell finden.


    Wenn es sauber installiert ist, reicht ein Blick in die Registry
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
    Dort in den Unterschlüsseln sind die Install-Infos hinterlegt.

  • Bestimmte Pfade der Festplatte nach Ordnern absuchen

    • BugFix
    • 8. Februar 2009 um 13:58

    Gib mal den Begriff "Rekursive Dateisuche" in die Suche ein - du wirst reich beschenkt. :rolleyes:

  • UDF selber erstellen - mit String möglich?

    • BugFix
    • 8. Februar 2009 um 12:26

    Ich versteh nicht, wozu du dauernd deine 20 Meldungstextvariablen erstellen willst. Ein Array mit 20 Elementen tuts doch. :S

  • USB-Hardware-ID auslesen

    • BugFix
    • 8. Februar 2009 um 09:32

    Hi,
    ich habe ein Skript zum USB-Drive managen erstellt (Manage USB-Drives per devcon.exe).
    Grundlegend gehe ich dabei so vor:
    - Removable Laufwerke ermitteln
    - aus Registry die Caption dieser Laufwerke ermitteln (nun hab ich Lw-Buchstabe und Name)
    - mit devcon.exe Caption und Hardware-ID der Instanz USB ermitteln
    - Lw-Buchstabe und Name mit Hardware-ID zusammenführen durch Abgleich des Namens
    Das klappt auch - bis auf den Fall, dass 2 Sticks desselben Herstellers im PC stecken. Die haben dann oft auch dieselbe Caption. 8|
    Somit wird auch die Hardware-ID nicht zuverlässig zugeordnet.
    Ich hab bis jetzt noch keine andere Möglichkeit entdeckt, die Hardware-ID direkt dem Lw-Buchstaben getreu auszulesen. Bin für jede Anregung dankbar. :rolleyes:

    OK - hat sich erledigt. Ich hatte mich mal wieder im Registry-Dschungel verirrt. :D
    Hab den Schlüssel gefunden. Nun kann ich das Skript deutlich vereinfachen.

  • Manage USB-Drives per devcon.exe

    • BugFix
    • 8. Februar 2009 um 09:09

    Hi Alina,
    grrr.. Schönheitsfehler. Da hab ich die Variablendeklaration innerhalb der Funktion an die falsche Zeile gesetzt. Einfach die ersten beiden Zeilen der Funktion tauschen, dann sollte es klappen.

    Geänderte Version hochgeladen, dieser Fehler sollte damit auch behoben sein.

  • UDF selber erstellen - mit String möglich?

    • BugFix
    • 7. Februar 2009 um 22:55

    Was willst du denn als Ergebnis haben? Ein Suchergebnis oder evtl. mehrere?

  • UDF selber erstellen - mit String möglich?

    • BugFix
    • 7. Februar 2009 um 22:21

    Hi,
    hier mal ein Bsp. wie es einfacher geht, brauchst es für den Rest nur analog zu machen:

    Vorher
    [autoit]

    While 1 ; -> Linie 403
    Send("^c")
    $sMeldungsText1 = ClipGet()
    Send("{UP}")
    Send("^c")
    $sMeldungsText2 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText3 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText4 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText5 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText6 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText7 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText8 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText9 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText10 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText11 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText12 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText13 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText14 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText15 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText16 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText17 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText18 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText19 = ClipGet()
    Send("{UP }")
    Send("^c")
    $sMeldungsText20 = ClipGet()
    If $iniAusgangsPosition = 1 Then Send("{down 19}")
    BlockInput(0)
    Dim $avMeldungsText[20]
    $avMeldungsText[0] = $sMeldungsText1
    $avMeldungsText[1] = $sMeldungsText2
    $avMeldungsText[2] = $sMeldungsText3
    $avMeldungsText[3] = $sMeldungsText4
    $avMeldungsText[4] = $sMeldungsText5
    $avMeldungsText[5] = $sMeldungsText6
    $avMeldungsText[6] = $sMeldungsText7
    $avMeldungsText[7] = $sMeldungsText8
    $avMeldungsText[8] = $sMeldungsText9
    $avMeldungsText[9] = $sMeldungsText10
    $avMeldungsText[10] = $sMeldungsText11
    $avMeldungsText[11] = $sMeldungsText12
    $avMeldungsText[12] = $sMeldungsText13
    $avMeldungsText[13] = $sMeldungsText14
    $avMeldungsText[14] = $sMeldungsText15
    $avMeldungsText[15] = $sMeldungsText16
    $avMeldungsText[16] = $sMeldungsText17
    $avMeldungsText[17] = $sMeldungsText18
    $avMeldungsText[18] = $sMeldungsText19
    $avMeldungsText[19] = $sMeldungsText20

    [/autoit]
    Nachher
    [autoit]

    While 1 ; -> Linie 403
    Global $avMeldungsText[20]
    Send("^c")
    $avMeldungsText[0] = ClipGet()
    For $i = 1 To UBound($avMeldungsText) -1
    Send("{UP}")
    Send("^c")
    $avMeldungsText[$i] = ClipGet()
    Next

    [/autoit]
  • Manage USB-Drives per devcon.exe

    • BugFix
    • 7. Februar 2009 um 21:57

    Hi,
    es wurde ja schon in einigen Threads auf das Tool devcon hingewiesen. Ich habe mal alle Beschreibungen zu den einzelnen Befehlen zusammengefaßt. Hier findet ihr die Syntaxbeschreibung.
    Nicht wundern, dass ein Scan recht lange dauert. Als Trigger verwende ich die durch die Hardwareerkennung gestartete rundll32.exe. Erst wenn diese beendet wurde, wird die Liste neu geschrieben.

    Edit: Habe die Zuordnung der Hardware-ID geändert. Nun ist gesichert, dass bei Sticks mit identischer Bezeichnung auch die ID zum Laufwerk stimmt.

    Edit: Da ich ständig am Laptop arbeite, war mir der Fehler mit der Floppy gar nicht bewußt geworden. :D
    Ich überprüfe im Registryeintrag auf $pref = _StringBetween($val, 'Media#', '&RM#', 1). Nur bei USB-Speichermedien ist dieser String in der Kennung enthalten. Jetzt habe ich dahinter eine Fehlerabfrage gesetzt mit ContinueLoop im Fehlerfall. Damit sollte eigentlich die Floppy keine Probleme mehr machen.
    Über weiteres Feedback bin ich natürlich erfreut. ;)

    Bsp. zum Managen von USB-Drives
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <GuiListView.au3>
    #include <String.au3>
    #include <Constants.au3>
    #include <Array.au3>
    Opt('GUIOnEventMode', 1)
    Global $path_Devcon = @MyDocumentsDir & '\DOWNLOADS\TOOLS\Devcon\i386\devcon.exe' ; <<===== Pfad anpassen
    Global $aRemovable, $strRun

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

    $gui = GUICreate('Manage USB-Drive', 500, 120)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_ende')
    $hListView = GUICtrlCreateListView('Laufwerk|Bezeichnung', 10, 10, 350, 100)
    _GUICtrlListView_SetColumnWidth($hListView, 0, 60)
    _GUICtrlListView_SetColumnWidth($hListView, 1, $LVSCW_AUTOSIZE_USEHEADER )
    $btRemove = GUICtrlCreateButton('Entfernen', 380, 10, 100, 20)
    GUICtrlSetOnEvent(-1, '_entfernen')
    $btScan = GUICtrlCreateButton('Scan', 380, 40, 100, 20)
    GUICtrlSetOnEvent(-1, '_scan')

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

    GUISetState()
    _LVwrite()

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

    While 1
    Sleep(100)
    WEnd

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

    Func _ende()
    Exit
    EndFunc

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

    Func _setStat($disable=True)
    Local $stat = $GUI_ENABLE
    If $disable Then $stat = $GUI_DISABLE
    GUICtrlSetState($btRemove, $stat)
    GUICtrlSetState($btScan, $stat)
    EndFunc ;==>_setStat

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

    Func _RunDevcon($strRun)
    Local $data, $foo = Run("cmd.exe", @SystemDir, @SW_HIDE, $STDIN_CHILD + $STDOUT_CHILD)
    StdinWrite($foo, $strRun & @CRLF)
    StdinWrite($foo)
    While True
    $data &= StdoutRead($foo)
    If @error Then ExitLoop
    Sleep(25)
    WEnd
    Local $split = StringSplit($data, @LF)
    $data = ''
    For $i = 5 To $split[0]
    If StringStripWS($split[$i], 8) == '' Then ExitLoop
    $data &= $split[$i]
    Next
    Return $data
    EndFunc ;==>_RunDevcon

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

    Func _LVwrite()
    $aRemovable = _GetRemovable()
    If Not $aRemovable[0][0] Then Return
    For $i = 0 To UBound($aRemovable) -1
    GUICtrlCreateListViewItem($aRemovable[$i][0] & '|' & $aRemovable[$i][1], $hListView)
    Next
    EndFunc ;==>_LVwrite

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

    Func _entfernen()
    _setStat()
    Local $index = _GUICtrlListView_GetSelectedIndices($hListView)
    If $index = '' Then
    _setStat(False)
    Return
    EndIf
    Local $indRemove = _ArraySearch($aRemovable, _GUICtrlListView_GetItemText(GUICtrlGetHandle($hListView), $index, 1),0,0,0,0,1,1)
    _GUICtrlListView_DeleteAllItems($hListView)
    WinSetTitle($gui, '', 'Laufwerk wird entfernt..')
    _Remove($aRemovable[$indRemove][2])
    WinSetTitle($gui, '', 'Laufwerk wurde entfernt')
    _LVwrite()
    Sleep(500)
    WinSetTitle($gui, '', 'Manage USB-Drive')
    _setStat(False)
    EndFunc ;==>_entfernen

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

    Func _scan()
    _setStat()
    Local $count1 = 0, $count2 = 0, $list1 = ProcessList('rundll32.exe')
    If Not @error Then $count1 = $list1[0][0]
    _GUICtrlListView_DeleteAllItems($hListView)
    WinSetTitle($gui, '', 'Es wird gescannt..')
    $strRun = '"' & $path_Devcon & '" rescan'
    _RunDevcon($strRun)
    $list2 = ProcessList('rundll32.exe')
    If Not @error Then $count2 = $list2[0][0]
    If $count2 > $count1 And $count1 = 0 Then
    Do
    Sleep(50)
    Until Not ProcessExists($list2[1][0])
    ElseIf $count2 > $count1 Then
    For $i = 1 To UBound($list2) -1
    If _ArraySearch($list1, $list2[$i][0]) = -1 Then
    Do
    Sleep(50)
    Until Not ProcessExists($list2[$i][0])
    ExitLoop
    EndIf
    Next
    EndIf
    WinSetTitle($gui, '', 'Scan beendet')
    _LVwrite()
    Sleep(500)
    WinSetTitle($gui, '', 'Manage USB-Drive')
    _setStat(False)
    EndFunc ;==>_scan

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

    Func _Remove($ID)
    $strRun = '"' & $path_Devcon & '" remove ' & $ID
    _RunDevcon($strRun)
    EndFunc ;==>_Remove

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

    Func _GetRemovable()
    Local $reg, $tmp, $val, $pref, $aDrive[1][3]
    Local $var = DriveGetDrive( "REMOVABLE" )
    If Not @error Then
    For $i = 1 To UBound($var) -1
    $val = ''
    $reg = RegRead("HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices", "\DosDevices\" & $var[$i])
    For $k = 1 To StringLen($reg) - 2 Step 2
    $tmp = _HexToString(StringMid($reg, $k, 2))
    If $tmp <> "" Then
    $val = $val & $tmp
    EndIf
    Next
    $pref = _StringBetween($val, 'Media#', '&RM#', 1)
    If @error Then ContinueLoop
    If $aDrive[UBound($aDrive)-1][0] <> '' Then ReDim $aDrive[UBound($aDrive)+1][3]
    $aDrive[UBound($aDrive)-1][0] = StringUpper($var[$i])
    $tmp = _GetUSBCaption($pref[0])
    $tmp = StringSplit($tmp, '|')
    $aDrive[UBound($aDrive)-1][1] = $tmp[1]
    $tmp = StringSplit($tmp[2], @LF)
    $aDrive[UBound($aDrive)-1][2] = $tmp[1]
    Next
    EndIf
    Return $aDrive
    EndFunc ;==>_GetRemovable

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

    Func _GetUSBCaption($strIDPrefix)
    Local $aUSB[1]=[0], $i = 0, $k, $var, $sub, $sRet
    While 1
    $i += 1
    $var = RegEnumKey('HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR', $i)
    If Not @error Then
    $k = 0
    While 1
    $k += 1
    $sub = RegEnumKey('HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR\' & $var, $k)
    If Not @error Then
    ReDim $aUSB[UBound($aUSB)+1]
    $aUSB[UBound($aUSB)-1] = $var & '\' & $sub
    Else
    ExitLoop
    EndIf
    WEnd
    Else
    ExitLoop
    EndIf
    WEnd
    For $i = 1 To UBound($aUSB) -1
    $var = RegRead('HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR\' & $aUSB[$i], 'ParentIdPrefix')
    If Not @error Then
    If $var = $strIDPrefix Then
    $sRet = RegRead('HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR\' & $aUSB[$i], 'FriendlyName')
    Return $sRet & '|' & RegRead('HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR\' & $aUSB[$i], 'HardwareID')
    EndIf
    EndIf
    Next
    EndFunc ;==>_GetUSBCaption

    [/autoit]
    einige Funktionsbsp.
    [autoit]

    #include <Constants.au3>

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

    Local $path_Devcon = @MyDocumentsDir & '\DOWNLOADS\TOOLS\Devcon\i386\devcon.exe' ; <<===== Pfad anpassen
    Local $strRun, $ID

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

    ; Name und Hardware-ID der Instance-ID USB ausgeben
    $strRun = '"' & $path_Devcon & '" hwids *USB*'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)
    ; mögliche Ausgabe:
    ; USB\VID_13FE&PID_1D00\907310000250
    ; Name: USB-Massenspeichergerät
    ; Hardware ID's:
    ; USB\Vid_13fe&Pid_1d00&Rev_0110
    ; USB\Vid_13fe&Pid_1d00
    ; Compatible ID's:
    ; USB\Class_08&SubClass_06&Prot_50
    ; USB\Class_08&SubClass_06
    ; USB\Class_08

    ; Entfernen des USB-Massenspeichers mit der ID "USB\Vid_13fe&Pid_1d00&Rev_0110"
    #cs
    $ID = '"USB\Vid_13fe&Pid_1d00&Rev_0110"' ; <<------- ID in Anführungszeichen einfassen, sonst Fehler in Console
    $strRun = '"' & $path_Devcon & '" remove ' & $ID
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)
    #ce
    ; Scannen nach neu angeschlossener Hardware, z.B. wieder Aktivieren eines zuvor entfernten USB-Sticks
    $strRun = '"' & $path_Devcon & '" rescan'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; alle PCI-Geräte auf dem Computer ausgeben
    $strRunRun = '"' & $path_Devcon & '" -m:\\' & @ComputerName & ' find pci\*'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; Anzeigen aller bekannten Setupklassen
    $strRun = '"' & $path_Devcon & '" classes'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; Anzeigen von Dateien, die jeweils mit den in der Setupklasse ports (Anschlüsse) enthaltenen
    ; Geräten verknüpft sind
    $strRun = '"' & $path_Devcon & '" driverfiles =ports'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; Anzeigen der Geräteinstanzen aller Geräte , die auf dem lokalen Computer vorhanden sind.
    $strRun = '"' & $path_Devcon & '" find *'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; Anzeigen aller "nicht vorhandenen" Geräte und vorhandenen Geräte der Klasse ports (Anschlüsse).
    ; Dies schließt auch Geräte ein, die entfernt wurden, Geräte die von einem Steckplatz zu einem anderen
    ; Steckplatz versetzt wurden, und möglicherweise auch Geräte, die aufgrund einer BIOS-Änderung anders
    ; aufgezählt wurden.
    $strRun = '"' & $path_Devcon & '" findall =ports'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; Anzeigen aller vorhandenen Geräte aller angegebenen Klassen (in diesem Fall der Klassen "USB" und "1394").
    $strRun = '"' & $path_Devcon & '" listclass usb 1394'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    ; Anzeigen der Ressourcen, die von den Geräten der Setupklasse USB verwendet werden.
    $strRun = '"' & $path_Devcon & '" resources =usb'
    ConsoleWrite(_RunDevcon($strRun) & @CRLF)

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

    Func _RunDevcon($strRun)
    Local $data, $foo = Run("cmd.exe", @SystemDir, @SW_HIDE, $STDIN_CHILD + $STDOUT_CHILD)
    StdinWrite($foo, $strRun & @CRLF)
    StdinWrite($foo)
    While True
    $data &= StdoutRead($foo)
    If @error Then ExitLoop
    Sleep(25)
    WEnd
    Local $split = StringSplit($data, @LF)
    $data = ''
    For $i = 5 To $split[0]
    If StringStripWS($split[$i], 8) == '' Then ExitLoop
    $data &= $split[$i]
    Next
    Return $data
    EndFunc

    [/autoit]

    DL bisher: 14

  • UDF mit Diskpart Funktionalität?

    • BugFix
    • 7. Februar 2009 um 14:55

    Da kann ich leider nicht helfen. Aufgrund schlechter Erfahrungen vertraue ich keinem Windowstool die Arbeit an Partitionen an. Dazu kommt mir nur Linux ans Werk. :D

  • alle Items vom Treeview auflisten

    • BugFix
    • 7. Februar 2009 um 14:49
    Zitat von Tweaky

    Oder meinst du was anderes?


    Da hatte ich mich vertan, das gilt nur für _GetNextVisible (wie schon der Name sagt ;) )

  • PrimA - der Primzahlengenerator

    • BugFix
    • 7. Februar 2009 um 11:02

    And the winner is... bernd :thumbup:

  • alle Items vom Treeview auflisten

    • BugFix
    • 7. Februar 2009 um 10:55

    Hi Tweaky,
    wenn alles ausgeklappt ist und du möchtest die Werte aller Einträge lesen, arbeite mit _GetNext

    [autoit]

    Func _auslesen($hTreeView, $hItem)
    $hItem = _GUICtrlTreeView_GetFirstItem($hTreeView)
    ConsoleWrite("Erstes " & _GUICtrlTreeView_GetText($hTreeView, $hItem) & @CRLF)
    While True
    $hItem = _GUICtrlTreeView_GetNext($hTreeView, $hItem)
    If $hItem = 0 Then ExitLoop
    ConsoleWrite("Nächstes " & _GUICtrlTreeView_GetText($hTreeView, $hItem) & @CRLF)
    WEnd
    EndFunc

    [/autoit]
  • PrimA - der Primzahlengenerator

    • BugFix
    • 7. Februar 2009 um 10:35

    Du kannst nochmals gewaltig beschleunigen, wenn du meine Funktion zum Primzahlcheck verwendest.
    Meine Funktion dient ursprünglich zur Primfaktorzerlegung - aber bei nur einem Primfaktor als Ergebnis ist dies somit automatisch auch eine Primzahl.
    Hier mal beide Funktionen im Vergleichstest:

    Spoiler anzeigen
    [autoit]

    Local $zahl, $start, $time, $sumFunc1 = 0, $sumFunc2 = 0
    For $i = 1 To 200
    ConsoleWrite($i & @TAB)
    $zahl = Random(10, 100000000, 1)
    ConsoleWrite($zahl & @CRLF)
    $start = TimerInit()
    ConsoleWrite('_primzahlcheck:' & @TAB & @TAB & _primzahlcheck($zahl) & @TAB)
    $time = TimerDiff($start)
    ConsoleWrite($time & @CRLF)
    $sumFunc1 += $time
    $start = TimerInit()
    ConsoleWrite('_GetPrimeFactors:' & @TAB & _GetPrimeFactors($zahl, True) & @TAB )
    $time = TimerDiff($start)
    ConsoleWrite($time & @CRLF)
    $sumFunc2 += $time
    Next
    ConsoleWrite(@CRLF & 'Durchscnitt Func _primzahlcheck:' & @TAB & $sumFunc1/200 & @CRLF)
    ConsoleWrite('Durchscnitt Func _GetPrimeFactors:' & @TAB & $sumFunc2/200 & @CRLF)

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

    Func _primzahlcheck($input_zahl)
    $teiler = 2
    $return = True
    While $teiler <= Sqrt($input_zahl)
    $rest = Mod($input_zahl,$teiler)
    If $rest = 0 Then
    $return = False
    EndIf
    $teiler = $teiler + 1
    WEnd
    Return $return
    EndFunc

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

    Func _GetPrimeFactors($n, $bPrime=False)
    Local $F = ObjCreate("System.Collections.ArrayList")
    While Mod($n,2) == 0
    If $bPrime Then Return False
    $F.add(2)
    $n = $n/2
    WEnd
    While Mod($n,3) == 0
    If $bPrime Then Return False
    $F.add(3)
    $n = $n/3
    WEnd
    Local $t = 5
    Local $diff = 2
    While $t*$t <= $n
    While Mod($n,$t) == 0
    If $bPrime Then Return False
    $F.add($t)
    $n = $n/$t
    WEnd
    $t = $t + $diff
    $diff = 6 - $diff
    WEnd
    If $n > 1 Then $F.add($n)
    If $bPrime Then
    If $F.Count > 1 Then
    Return False
    Else
    Return True
    EndIf
    EndIf
    Local $out = ''
    For $element In $F
    $out &= $element & ','
    Next
    Return StringTrimRight($out, 1)
    EndFunc

    [/autoit]


    Und das sind die Ergebnisse, meine Funktion ist im Durchschnitt 28-mal schneller als die von dir verwendete ;) :

    Spoiler anzeigen
    Code
    1	38316802
    _primzahlcheck:		False	65.9527956765455
    _GetPrimeFactors:	False	20.550935942976
    2	54952960
    _primzahlcheck:		False	83.4793248862635
    _GetPrimeFactors:	False	0.411504814159341
    3	94876847
    _primzahlcheck:		False	80.8616737602125
    _GetPrimeFactors:	False	0.440558786102703
    4	15599245
    _primzahlcheck:		False	29.8968164948338
    _GetPrimeFactors:	False	0.256177810308293
    5	62055821
    _primzahlcheck:		False	67.980986410284
    _GetPrimeFactors:	False	1.91029865527602
    6	32049530
    _primzahlcheck:		False	43.094303884991
    _GetPrimeFactors:	False	0.262603207949614
    7	33319150
    _primzahlcheck:		False	55.5447689580659
    _GetPrimeFactors:	False	0.38496512824954
    8	82077769
    _primzahlcheck:		False	73.2662950179422
    _GetPrimeFactors:	False	0.664330243089555
    9	82104507
    _primzahlcheck:		False	79.2740418125767
    _GetPrimeFactors:	False	0.39139052589086
    10	1422896
    _primzahlcheck:		False	9.21178529673464
    _GetPrimeFactors:	False	0.216228598886171
    11	11449300
    _primzahlcheck:		False	25.7759016858288
    _GetPrimeFactors:	False	0.221536536068132
    12	26949319
    _primzahlcheck:		False	42.5456307994452
    _GetPrimeFactors:	False	5.33363877252556
    13	2515782
    _primzahlcheck:		False	16.7538053020705
    _GetPrimeFactors:	False	0.347530202860978
    14	20803390
    _primzahlcheck:		False	35.0307092102488
    _GetPrimeFactors:	False	0.262044477719934
    15	8259366
    _primzahlcheck:		False	27.3741495078285
    _GetPrimeFactors:	False	0.38971433520182
    16	62478795
    _primzahlcheck:		False	68.4218245615015
    _GetPrimeFactors:	False	0.37462861900046
    17	62125257
    _primzahlcheck:		False	61.848363409316
    _GetPrimeFactors:	False	0.364012744636539
    18	75881925
    _primzahlcheck:		False	72.8025489273078
    _GetPrimeFactors:	False	0.362615919062339
    19	224508
    _primzahlcheck:		False	3.57112426299991
    _GetPrimeFactors:	False	0.177676213038249
    20	45545117
    _primzahlcheck:		False	65.6946623104333
    _GetPrimeFactors:	False	10.2144266938955
    21	53540560
    _primzahlcheck:		False	58.6479566537088
    _GetPrimeFactors:	False	0.38775877939794
    22	49266386
    _primzahlcheck:		False	82.2724675901546
    _GetPrimeFactors:	False	0.3874794142831
    23	48271431
    _primzahlcheck:		False	78.86672747514
    _GetPrimeFactors:	False	0.404800051403181
    24	41782662
    _primzahlcheck:		False	49.1263554446166
    _GetPrimeFactors:	False	0.260927017260574
    25	30568126
    _primzahlcheck:		False	50.6581143692844
    _GetPrimeFactors:	False	0.364571474866219
    26	89628765
    _primzahlcheck:		False	77.7590447947993
    _GetPrimeFactors:	False	0.393066716579901
    27	92494404
    _primzahlcheck:		False	81.5257246381873
    _GetPrimeFactors:	False	0.39139052589086
    28	74613066
    _primzahlcheck:		False	73.7613300014387
    _GetPrimeFactors:	False	0.362615919062339
    29	27798273
    _primzahlcheck:		False	41.1334401439289
    _GetPrimeFactors:	False	0.323504802984737
    30	61059898
    _primzahlcheck:		False	68.5503325143279
    _GetPrimeFactors:	False	0.367085760899779
    31	19305957
    _primzahlcheck:		False	33.5168296529308
    _GetPrimeFactors:	False	0.271542891624494
    32	81837931
    _primzahlcheck:		False	81.4595151059702
    _GetPrimeFactors:	False	0.435809579150423
    33	85800904
    _primzahlcheck:		False	78.1090892836939
    _GetPrimeFactors:	False	0.37434925388562
    34	56748286
    _primzahlcheck:		False	57.1603374171857
    _GetPrimeFactors:	False	0.258971461456694
    35	25998163
    _primzahlcheck:		False	48.8299490577713
    _GetPrimeFactors:	False	8.46252805873372
    36	98609986
    _primzahlcheck:		False	83.8047852450521
    _GetPrimeFactors:	False	0.38161274687146
    37	61745560
    _primzahlcheck:		False	62.3593222043584
    _GetPrimeFactors:	False	0.339149249415778
    38	61185169
    _primzahlcheck:		False	69.3736215077615
    _GetPrimeFactors:	False	0.685282626702556
    39	48236025
    _primzahlcheck:		False	55.3908387797891
    _GetPrimeFactors:	False	0.305904800749816
    40	92263198
    _primzahlcheck:		False	81.1368483983299
    _GetPrimeFactors:	False	0.355073060961659
    41	19467782
    _primzahlcheck:		False	36.9153062749595
    _GetPrimeFactors:	False	0.364850839981059
    42	83212050
    _primzahlcheck:		False	78.1845178647007
    _GetPrimeFactors:	False	0.393066716579901
    43	16043653
    _primzahlcheck:		False	32.3035469591806
    _GetPrimeFactors:	False	16.9390243732094
    44	64287267
    _primzahlcheck:		False	64.5894939161262
    _GetPrimeFactors:	False	0.367365126014619
    45	85577977
    _primzahlcheck:		False	77.6637812906389
    _GetPrimeFactors:	False	0.847035028194924
    46	3673956
    _primzahlcheck:		False	14.5990621713095
    _GetPrimeFactors:	False	0.230196854628172
    47	65464480
    _primzahlcheck:		False	75.0500412761957
    _GetPrimeFactors:	False	0.402006400254781
    48	78601399
    _primzahlcheck:		False	67.3049228323711
    _GetPrimeFactors:	False	0.415136560652262
    49	61612903
    _primzahlcheck:		False	67.0476275616035
    _GetPrimeFactors:	False	0.406755607207061
    50	58606234
    _primzahlcheck:		False	59.1603122743254
    _GetPrimeFactors:	False	0.319873056491817
    51	67125009
    _primzahlcheck:		False	75.0645682621674
    _GetPrimeFactors:	False	0.403403225828981
    52	97460905
    _primzahlcheck:		False	83.0024486352316
    _GetPrimeFactors:	False	0.397536558417341
    53	4551673
    _primzahlcheck:		False	16.0732718823202
    _GetPrimeFactors:	False	0.3777016352637
    54	40740937
    _primzahlcheck:		False	50.0759174699578
    _GetPrimeFactors:	False	0.971352504298731
    55	31034894
    _primzahlcheck:		False	48.3337966138154
    _GetPrimeFactors:	False	0.339428614530618
    56	22348738
    _primzahlcheck:		False	37.1536047179181
    _GetPrimeFactors:	False	0.356190521421019
    57	99283219
    _primzahlcheck:		False	86.6626903698654
    _GetPrimeFactors:	False	0.411504814159341
    58	28549110
    _primzahlcheck:		False	44.5998024888638
    _GetPrimeFactors:	False	0.368203221359139
    59	44692524
    _primzahlcheck:		False	56.6949151358622
    _GetPrimeFactors:	False	0.336914328497058
    60	95564675
    _primzahlcheck:		False	84.94347745314
    _GetPrimeFactors:	False	0.423796879212302
    61	47564778
    _primzahlcheck:		False	52.5429907991099
    _GetPrimeFactors:	False	0.295847656615575
    62	92613604
    _primzahlcheck:		False	83.1228549997276
    _GetPrimeFactors:	False	0.38384766779018
    63	75986223
    _primzahlcheck:		False	80.0744228665934
    _GetPrimeFactors:	False	0.408711163010941
    64	53135157
    _primzahlcheck:		False	55.5693530881718
    _GetPrimeFactors:	False	0.314006389080176
    65	26909469
    _primzahlcheck:		False	41.3396115986808
    _GetPrimeFactors:	False	0.346412742401618
    66	64884749
    _primzahlcheck:		False	67.3686180785547
    _GetPrimeFactors:	False	1.19260967525202
    67	50395849
    _primzahlcheck:		False	64.0098113028332
    _GetPrimeFactors:	False	0.435809579150423
    68	8690226
    _primzahlcheck:		False	25.709133423382
    _GetPrimeFactors:	False	0.314844484424696
    69	36530658
    _primzahlcheck:		False	47.410774274384
    _GetPrimeFactors:	False	0.315961944884056
    70	1448416
    _primzahlcheck:		False	9.53445200437486
    _GetPrimeFactors:	False	0.234387331350772
    71	80163175
    _primzahlcheck:		False	75.6696731009109
    _GetPrimeFactors:	False	0.368482586473979
    72	47475981
    _primzahlcheck:		False	58.0163121290555
    _GetPrimeFactors:	False	0.346692107516458
    73	10948703
    _primzahlcheck:		False	25.0610063569532
    _GetPrimeFactors:	False	0.405079416518021
    74	98152326
    _primzahlcheck:		False	82.8222581361598
    _GetPrimeFactors:	False	0.510400064812707
    75	35470201
    _primzahlcheck:		False	51.1788509433461
    _GetPrimeFactors:	False	0.472406409194465
    76	6099128
    _primzahlcheck:		False	21.177831260677
    _GetPrimeFactors:	False	0.333003216889297
    77	76201529
    _primzahlcheck:		True	74.1909935480627
    _GetPrimeFactors:	True	41.51561162103
    78	35769195
    _primzahlcheck:		False	51.6040446481327
    _GetPrimeFactors:	False	0.37379052365594
    79	46066021
    _primzahlcheck:		True	52.9310289436227
    _GetPrimeFactors:	True	31.4914325703406
    80	49155727
    _primzahlcheck:		False	56.190661103576
    _GetPrimeFactors:	False	1.03644457605645
    81	90398559
    _primzahlcheck:		False	83.5125693349294
    _GetPrimeFactors:	False	0.408990528125781
    82	49573234
    _primzahlcheck:		False	54.7561212388725
    _GetPrimeFactors:	False	0.322107977410537
    83	63669963
    _primzahlcheck:		False	67.591551440197
    _GetPrimeFactors:	False	0.3818921119863
    84	52417788
    _primzahlcheck:		False	58.1951058025531
    _GetPrimeFactors:	False	0.356190521421019
    85	743386
    _primzahlcheck:		False	11.1173347450584
    _GetPrimeFactors:	False	0.38999370031666
    86	15160747
    _primzahlcheck:		False	38.363814395405
    _GetPrimeFactors:	False	0.433854023346543
    87	30997549
    _primzahlcheck:		False	43.9304436737071
    _GetPrimeFactors:	False	0.370717507392699
    88	32129593
    _primzahlcheck:		False	49.6448570977596
    _GetPrimeFactors:	False	0.478831806835785
    89	43432184
    _primzahlcheck:		False	51.4294414513576
    _GetPrimeFactors:	False	0.313727023965336
    90	33459767
    _primzahlcheck:		False	50.9701652025607
    _GetPrimeFactors:	False	0.414298465307742
    91	67865047
    _primzahlcheck:		True	64.1397160812338
    _GetPrimeFactors:	True	36.8834586518678
    92	25511866
    _primzahlcheck:		False	40.7431670784974
    _GetPrimeFactors:	False	0.343898456368058
    93	20692077
    _primzahlcheck:		False	39.4131097667441
    _GetPrimeFactors:	False	0.38943497008698
    94	789347
    _primzahlcheck:		False	7.25371520682098
    _GetPrimeFactors:	False	0.265117493983174
    95	97296117
    _primzahlcheck:		False	87.5683920721768
    _GetPrimeFactors:	False	0.403961956058661
    96	80359278
    _primzahlcheck:		False	75.307895277193
    _GetPrimeFactors:	False	0.369320681818499
    97	25440988
    _primzahlcheck:		False	38.8468366789634
    _GetPrimeFactors:	False	0.264000033523814
    98	17248224
    _primzahlcheck:		False	31.4777436797135
    _GetPrimeFactors:	False	0.235225426695292
    99	41985947
    _primzahlcheck:		True	59.9349917377767
    _GetPrimeFactors:	True	24.9579206295772
    100	42903884
    _primzahlcheck:		False	62.2685285420354
    _GetPrimeFactors:	False	0.3790984608379
    101	35061041
    _primzahlcheck:		False	45.2990533713084
    _GetPrimeFactors:	False	0.819657246940603
    102	12411042
    _primzahlcheck:		False	26.3818446199168
    _GetPrimeFactors:	False	0.203936533833211
    103	94988694
    _primzahlcheck:		False	81.9674008847493
    _GetPrimeFactors:	False	0.363454014406859
    104	8125384
    _primzahlcheck:		False	22.1877361508236
    _GetPrimeFactors:	False	0.245282570829533
    105	62812441
    _primzahlcheck:		True	74.2510570477533
    _GetPrimeFactors:	True	30.3147467066345
    106	61796311
    _primzahlcheck:		False	67.6974308187214
    _GetPrimeFactors:	False	0.628571508390033
    107	62661044
    _primzahlcheck:		False	66.4372147856781
    _GetPrimeFactors:	False	0.361777823717819
    108	73818618
    _primzahlcheck:		False	66.978624378238
    _GetPrimeFactors:	False	0.334400042463497
    109	15245422
    _primzahlcheck:		False	32.18230249934
    _GetPrimeFactors:	False	0.339987344760298
    110	73047170
    _primzahlcheck:		False	70.4005676699134
    _GetPrimeFactors:	False	0.352558774928098
    111	69628908
    _primzahlcheck:		False	75.5649111828459
    _GetPrimeFactors:	False	0.395022272383781
    112	83622820
    _primzahlcheck:		False	80.8697753485429
    _GetPrimeFactors:	False	0.39055243054634
    113	59805203
    _primzahlcheck:		True	60.9817728230823
    _GetPrimeFactors:	True	29.1833179915324
    114	89154036
    _primzahlcheck:		False	79.3287973750854
    _GetPrimeFactors:	False	0.358704807454579
    115	67341187
    _primzahlcheck:		False	75.8448350279156
    _GetPrimeFactors:	False	0.481904823099025
    116	48000369
    _primzahlcheck:		False	52.3614034744639
    _GetPrimeFactors:	False	0.38496512824954
    117	165838
    _primzahlcheck:		False	3.11492103046616
    _GetPrimeFactors:	False	0.18326351533505
    118	51573242
    _primzahlcheck:		False	62.2199190120532
    _GetPrimeFactors:	False	0.355631791191339
    119	13383060
    _primzahlcheck:		False	27.8493495681714
    _GetPrimeFactors:	False	0.234387331350772
    120	91077568
    _primzahlcheck:		False	85.2496616190046
    _GetPrimeFactors:	False	0.39194925612054
    121	86069584
    _primzahlcheck:		False	72.6413552560451
    _GetPrimeFactors:	False	0.360660363258459
    122	37217762
    _primzahlcheck:		False	52.1471304313816
    _GetPrimeFactors:	False	0.338311154071258
    123	18808243
    _primzahlcheck:		False	32.9173121164841
    _GetPrimeFactors:	False	0.421561958293582
    124	25816319
    _primzahlcheck:		False	46.4176312911278
    _GetPrimeFactors:	False	0.426311165245862
    125	67562288
    _primzahlcheck:		False	62.1436523357019
    _GetPrimeFactors:	False	0.264558763753494
    126	57089480
    _primzahlcheck:		False	65.2077289152672
    _GetPrimeFactors:	False	0.355631791191339
    127	67414963
    _primzahlcheck:		False	66.6162878242905
    _GetPrimeFactors:	False	0.422120688523262
    128	38312609
    _primzahlcheck:		True	53.637822684168
    _GetPrimeFactors:	True	26.9928161260719
    129	69111809
    _primzahlcheck:		False	74.6533428131229
    _GetPrimeFactors:	False	0.457320692993104
    130	839569
    _primzahlcheck:		False	6.8880262714954
    _GetPrimeFactors:	False	0.275174638117414
    131	68923892
    _primzahlcheck:		False	71.2788915909704
    _GetPrimeFactors:	False	0.37379052365594
    132	8200151
    _primzahlcheck:		False	23.0613108649284
    _GetPrimeFactors:	False	0.464584185978944
    133	476321
    _primzahlcheck:		False	6.69051513530351
    _GetPrimeFactors:	False	1.66892719605425
    134	70237925
    _primzahlcheck:		False	76.0917937894341
    _GetPrimeFactors:	False	0.434692118691063
    135	50930142
    _primzahlcheck:		False	55.0444260373874
    _GetPrimeFactors:	False	0.295568291500735
    136	42624013
    _primzahlcheck:		True	49.1827871978143
    _GetPrimeFactors:	True	33.6623788777624
    137	53042257
    _primzahlcheck:		True	55.3006038476957
    _GetPrimeFactors:	True	31.375496047682
    138	3417697
    _primzahlcheck:		False	21.1705677676911
    _GetPrimeFactors:	False	0.725231838124678
    139	97101992
    _primzahlcheck:		False	79.1804544991053
    _GetPrimeFactors:	False	0.357587346995219
    140	26074242
    _primzahlcheck:		False	46.4385836747408
    _GetPrimeFactors:	False	0.361219093488139
    141	29607602
    _primzahlcheck:		False	40.9085512264827
    _GetPrimeFactors:	False	0.235225426695292
    142	98678823
    _primzahlcheck:		False	84.8035155306052
    _GetPrimeFactors:	False	0.38273020733082
    143	20752101
    _primzahlcheck:		False	34.557185340595
    _GetPrimeFactors:	False	0.255898445193453
    144	38099435
    _primzahlcheck:		False	55.0282228607267
    _GetPrimeFactors:	False	0.602031822480231
    145	16430905
    _primzahlcheck:		False	31.1969817392993
    _GetPrimeFactors:	False	0.477993711491265
    146	53211731
    _primzahlcheck:		False	65.7466242217935
    _GetPrimeFactors:	False	0.660698496596634
    147	8803946
    _primzahlcheck:		False	23.131710873868
    _GetPrimeFactors:	False	0.252546063815373
    148	47077549
    _primzahlcheck:		False	55.7299880292048
    _GetPrimeFactors:	False	0.968558853150331
    149	58280691
    _primzahlcheck:		False	69.6362247157111
    _GetPrimeFactors:	False	0.37965719106758
    150	49235151
    _primzahlcheck:		False	61.9832967597837
    _GetPrimeFactors:	False	0.395022272383781
    151	56024301
    _primzahlcheck:		False	56.6856960870725
    _GetPrimeFactors:	False	0.255619080078613
    152	12060215
    _primzahlcheck:		False	33.7020487240697
    _GetPrimeFactors:	False	0.435809579150423
    153	32104739
    _primzahlcheck:		True	49.9437777706384
    _GetPrimeFactors:	True	21.665044020958
    154	73971083
    _primzahlcheck:		False	73.3894950335867
    _GetPrimeFactors:	False	0.482463553328705
    155	83304416
    _primzahlcheck:		False	70.9928217133742
    _GetPrimeFactors:	False	0.332444486659617
    156	71455654
    _primzahlcheck:		False	75.6830826264232
    _GetPrimeFactors:	False	0.392787351465061
    157	96056174
    _primzahlcheck:		False	82.4574072961787
    _GetPrimeFactors:	False	0.370158777163019
    158	56152821
    _primzahlcheck:		False	58.1671692910691
    _GetPrimeFactors:	False	0.327974644822177
    159	56943402
    _primzahlcheck:		False	62.9769984732697
    _GetPrimeFactors:	False	0.347250837746138
    160	44450707
    _primzahlcheck:		False	54.238457681074
    _GetPrimeFactors:	False	0.396139732843141
    161	77482745
    _primzahlcheck:		False	75.40930481388
    _GetPrimeFactors:	False	1.15210173360022
    162	78657837
    _primzahlcheck:		False	77.3084288645624
    _GetPrimeFactors:	False	0.526882606588267
    163	20992979
    _primzahlcheck:		False	38.0671286434449
    _GetPrimeFactors:	False	0.417930211800662
    164	79332653
    _primzahlcheck:		False	76.5633621032841
    _GetPrimeFactors:	False	18.6537674480975
    165	65986251
    _primzahlcheck:		False	73.7515522224193
    _GetPrimeFactors:	False	0.402565130484461
    166	84684237
    _primzahlcheck:		False	88.9744366951666
    _GetPrimeFactors:	False	0.705117549856197
    167	70897342
    _primzahlcheck:		False	64.9934558721849
    _GetPrimeFactors:	False	0.323225437869897
    168	70376240
    _primzahlcheck:		False	71.6739138633541
    _GetPrimeFactors:	False	0.358984172569419
    169	89043434
    _primzahlcheck:		False	72.9886060937912
    _GetPrimeFactors:	False	0.316800040228577
    170	49241519
    _primzahlcheck:		False	65.1278304924229
    _GetPrimeFactors:	False	0.785015972700441
    171	47089342
    _primzahlcheck:		False	59.4022424637768
    _GetPrimeFactors:	False	0.370717507392699
    172	48611779
    _primzahlcheck:		True	53.7571115882047
    _GetPrimeFactors:	True	27.675305101626
    173	58237697
    _primzahlcheck:		False	63.8500144571447
    _GetPrimeFactors:	False	0.39250798635022
    174	62760676
    _primzahlcheck:		False	61.2449347612616
    _GetPrimeFactors:	False	0.313168293735656
    175	76165074
    _primzahlcheck:		False	72.1728599584584
    _GetPrimeFactors:	False	0.355073060961659
    176	70125003
    _primzahlcheck:		False	74.0619268650066
    _GetPrimeFactors:	False	0.364850839981059
    177	11748025
    _primzahlcheck:		False	29.6948355168045
    _GetPrimeFactors:	False	0.411225449044501
    178	72754557
    _primzahlcheck:		False	72.2334821883787
    _GetPrimeFactors:	False	0.355911156306179
    179	88929828
    _primzahlcheck:		False	74.5279078765597
    _GetPrimeFactors:	False	0.366806395784939
    180	20730797
    _primzahlcheck:		False	44.3841326202073
    _GetPrimeFactors:	False	0.503136571826866
    181	4929434
    _primzahlcheck:		False	17.9933483166157
    _GetPrimeFactors:	False	0.268749240476094
    182	96216992
    _primzahlcheck:		False	89.9281891972304
    _GetPrimeFactors:	False	0.398374653761861
    183	60062921
    _primzahlcheck:		False	60.2881092429345
    _GetPrimeFactors:	False	0.406755607207061
    184	72708624
    _primzahlcheck:		False	71.1671455450344
    _GetPrimeFactors:	False	0.365130205095899
    185	68696155
    _primzahlcheck:		False	69.8619517285018
    _GetPrimeFactors:	False	0.425193704786502
    186	49265333
    _primzahlcheck:		False	61.3502554095562
    _GetPrimeFactors:	False	0.443631802365943
    187	49790996
    _primzahlcheck:		False	60.5305981626156
    _GetPrimeFactors:	False	0.365688935325579
    188	54727465
    _primzahlcheck:		False	57.3698612533157
    _GetPrimeFactors:	False	0.344177821482898
    189	72177117
    _primzahlcheck:		False	70.8590058233658
    _GetPrimeFactors:	False	0.359822267913939
    190	30275120
    _primzahlcheck:		False	43.3454531232321
    _GetPrimeFactors:	False	0.308698451898216
    191	28280524
    _primzahlcheck:		False	46.7553837149694
    _GetPrimeFactors:	False	0.327136549477657
    192	65527652
    _primzahlcheck:		False	64.7456590153218
    _GetPrimeFactors:	False	0.360380998143619
    193	97676986
    _primzahlcheck:		False	82.226372346206
    _GetPrimeFactors:	False	0.372114332966899
    194	64817915
    _primzahlcheck:		False	71.3168852465886
    _GetPrimeFactors:	False	0.421841323408422
    195	34675402
    _primzahlcheck:		False	46.4081328772232
    _GetPrimeFactors:	False	0.339987344760298
    196	33803948
    _primzahlcheck:		False	50.1600063695246
    _GetPrimeFactors:	False	0.348088933090658
    197	79828926
    _primzahlcheck:		False	72.7734949553644
    _GetPrimeFactors:	False	0.393066716579901
    198	11938970
    _primzahlcheck:		False	169.191894500558
    _GetPrimeFactors:	False	0.406196876977381
    199	12549308
    _primzahlcheck:		False	31.9507088191376
    _GetPrimeFactors:	False	0.324901628558937
    200	6183450
    _primzahlcheck:		False	18.9510119302872
    _GetPrimeFactors:	False	0.211479391933891
    
    
    Durchscnitt Func _primzahlcheck:	57.2571821278961
    Durchscnitt Func _GetPrimeFactors:	2.45747993110856
    Alles anzeigen
  • alle Items vom Treeview auflisten

    • BugFix
    • 6. Februar 2009 um 22:53

    Verwende doch Oscars TreeView-Lösung.

  • Linux für meinen PC

    • BugFix
    • 6. Februar 2009 um 22:29

    Gerade für 'schwachbrüstige' PC ist auch Puppy seht gut geeignet. Kannst du ja auch mal mit der Live-CD testen.
    http://www.puppylinux.com/

    [HUMOR]
    Linux-Song
    [/HUMOR]

  • Oger SQL

    • BugFix
    • 6. Februar 2009 um 22:11
    Zitat von Oger-Lord

    aber um normales SQL zu benutzten muss man es ja erstmal installieren und ich denke das ist für viele kleinere Programme ziemlich nervig, wenn die Andwender dan erstmal SQL installieren müssen.


    Na da liegst du aber falsch. ;)
    Schau dir mal SQLite an, ist in AutoIt integriert. Da brauchst du nix installieren, kannst du einfach in deine Anwendung einbinden.

  • Maße eines Bildes

    • BugFix
    • 5. Februar 2009 um 18:51

    Schaust du dir nicht mal die Hilfebeispiele an?!! :thumbdown:
    Du mußt erst ein Handle von deinem Bitmap erstellen. Genau so, wie es im Hilfebsp. gezeigt wird.

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™