_FileReadtoArray & _ArraySearch

  • soooo ich wollte mal ein kleines tool schreiben mit dem man sehen kann wer denn so im netzwerk online ist, hab ich auch gemacht xD allerdings mit ping was das programm ziemlich verlangsamt wegen dem timeout: wens trotzdem interressiert:

    Spoiler anzeigen
    [autoit]

    #include
    #include
    #include
    #Include
    AutoItSetOption("TrayIconHide", 1)
    Opt("GUIOnEventMode", 1)
    GUICreate( "Ping results", 320, 300, 100, 100)
    $ping = GUICtrlCreateButton( "Ping!", 10, 250, 100, 25)
    $OK = GUICtrlCreateButton( "Exit", 150, 250, 100, 25)
    GUISetState(@SW_SHOW)
    GUISetOnEvent($GUI_EVENT_CLOSE, "GUI_Exit")
    GUICtrlSetOnEvent($OK, "GUI_Exit")
    GUICtrlSetOnEvent($ping, "ping_all")

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

    RegWrite( "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Messenger", "Start", "REG_DWORD", "3")
    FileWriteLine("C:\dienst.bat", "net start > C:\services.txt")
    FileWriteLine("C:\dienst.bat", "Exit")
    run("C:\dienst.bat", "", @SW_HIDE)
    sleep(1000)
    Dim $aRecords
    If Not _FileReadToArray("C:\services.txt",$aRecords) Then
    MsgBox(4096,"Error", " Error reading log to Array error:" & @error)
    Exit
    EndIf
    For $x = 1 to $aRecords[0]
    $search = "Nachrichtendienst"
    $search2 = "Messenger"

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

    $Pos = _ArraySearch ($aRecords, $search, 0, 0, 0, True)
    $Pos2 = _ArraySearch ($aRecords, $search2, 0, 0, 0, True)
    Select
    Case $Pos = -1
    FileWriteLine( "C:\dienst_start.bat", "net start Nachrichtendienst")
    FileWriteLine( "C:\dienst_start.bat", "pause")
    run ( "C:\dienst_start.bat", "", @SW_HIDE)
    sleep(2000)
    FileDelete( "C:\dienst_start.bat")

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

    Select
    Case $Pos2 = -1
    FileWriteLine( "C:\dienst_start.bat", "net start Messenger")
    FileWriteLine( "C:\dienst_start.bat", "pause")
    run ( "C:\dienst_start.bat", "", @SW_HIDE)
    sleep(2000)
    FileDelete( "C:\dienst_start.bat")
    Case Else
    ExitLoop
    EndSelect

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

    Case Else
    ExitLoop
    EndSelect
    Next
    FileDelete( "C:\dienst.bat")
    FileDelete( "C:\services.txt")

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

    Func message_buttons()
    $button_left = 155
    $button_top = 5
    $button_width = 105
    $button_height = 15

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

    $ping_1_message = GUICtrlCreateButton( "Send Message to all", $button_left, 5, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_1_message,"ping1_message")
    $ping_2_message = GUICtrlCreateButton( "Send Message", $button_left, 5+20, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_2_message,"ping2_message")
    $ping_3_message = GUICtrlCreateButton( "Send Message", $button_left, 5+40, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_3_message,"ping3_message")
    $ping_4_message = GUICtrlCreateButton( "Send Message", $button_left, 5+60, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_4_message,"ping4_message")
    $ping_5_message = GUICtrlCreateButton( "Send Message", $button_left, 5+80, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_5_message,"ping5_message")
    $ping_6_message = GUICtrlCreateButton( "Send Message", $button_left, 5+100, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_6_message,"ping6_message")
    $ping_7_message = GUICtrlCreateButton( "Send Message", $button_left, 5+120, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_7_message,"ping7_message")
    $ping_8_message = GUICtrlCreateButton( "Send Message", $button_left, 5+140, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_8_message,"ping8_message")
    $ping_9_message = GUICtrlCreateButton( "Send Message", $button_left, 5+160, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_9_message,"ping9_message")
    $ping_10_message = GUICtrlCreateButton( "Send Message", $button_left, 5+180, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_10_message,"ping10_message")
    $ping_11_message =GUICtrlCreateButton( "Send Message", $button_left, 5+200, $button_width, $button_height)
    GUICtrlSetOnEvent( $ping_11_message,"ping11_message")
    EndFunc
    message_buttons()

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

    Func open_buttons()
    $button_open_left = 270
    $button_open_top = 5
    $button_open_width = 40
    $button_open_height = 15

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

    $ping_2_open = GUICtrlCreateButton( "Open", $button_open_left, 5+20, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_2_open,"ping2_open")
    $ping_3_open = GUICtrlCreateButton( "Open", $button_open_left, 5+40, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_3_open,"ping3_open")
    $ping_4_open = GUICtrlCreateButton( "Open", $button_open_left, 5+60, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_4_open,"ping4_open")
    $ping_5_open = GUICtrlCreateButton( "Open", $button_open_left, 5+80, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_5_open,"ping5_open")
    $ping_6_open = GUICtrlCreateButton( "Open", $button_open_left, 5+100, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_6_open,"ping6_open")
    $ping_7_open = GUICtrlCreateButton( "Open", $button_open_left, 5+120, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_7_open,"ping7_open")
    $ping_8_open = GUICtrlCreateButton( "Open", $button_open_left, 5+140, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_8_open,"ping8_open")
    $ping_9_open = GUICtrlCreateButton( "Open", $button_open_left, 5+160, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_9_open,"ping9_open")
    $ping_10_open = GUICtrlCreateButton( "Open", $button_open_left, 5+180, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_10_open,"ping10_open")
    $ping_11_open =GUICtrlCreateButton( "Open", $button_open_left, 5+200, $button_open_width, $button_open_height)
    GUICtrlSetOnEvent($ping_11_open,"ping11_open")
    EndFunc
    open_buttons()

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

    ;IPs
    $ping_1_IP = "192.168.0.1"
    $ping_2_IP = "192.168.0.2"
    $ping_3_IP = "192.168.0.3"
    $ping_4_IP = "192.168.0.4"
    $ping_5_IP = "192.168.0.5"
    $ping_6_IP = "192.168.0.6"
    $ping_7_IP = "192.168.0.7"
    $ping_8_IP = "192.168.0.8"
    $ping_9_IP = "192.168.0.9"
    $ping_10_IP = "192.168.0.10"
    $ping_11_IP ="192.168.0.11"

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

    ;Names
    $ping_1_name = "Router"
    $ping_2_name = "PC Wolfgang"
    $ping_3_name = "PC Hobbyraum"
    $ping_4_name = "PC Desiree"
    $ping_5_name = ""
    $ping_6_name = ""
    $ping_7_name = "PC Margrit"
    $ping_8_name = ""
    $ping_9_name = "PC Benno/Irina"
    $ping_10_name = ""
    $ping_11_name =""

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

    Func GUI_Exit()
    FileDelete("C:\net_send.bat")
    Exit
    EndFunc

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

    Func ping_all()
    GUICtrlSetData( $ping, "Bitte warten")
    $tabel1_left = 10
    $tabel1_top = 10
    $tabel1_widh = 140
    $tabel1_height = 15
    ;Labels
    $ping_1_on = GUICtrlCreateLabel( "", $tabel1_left, 5, $tabel1_widh, $tabel1_height)
    $ping_2_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height, $tabel1_widh, $tabel1_height)
    $ping_3_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 20, $tabel1_widh, $tabel1_height)
    $ping_4_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 40, $tabel1_widh, $tabel1_height)
    $ping_5_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 60, $tabel1_widh, $tabel1_height)
    $ping_6_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 80, $tabel1_widh, $tabel1_height)
    $ping_7_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 100, $tabel1_widh, $tabel1_height)
    $ping_8_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 120, $tabel1_widh, $tabel1_height)
    $ping_9_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 140, $tabel1_widh, $tabel1_height)
    $ping_10_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 160, $tabel1_widh, $tabel1_height)
    $ping_11_on =GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 180, $tabel1_widh, $tabel1_height)

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

    $ping_1 = ping($ping_1_IP,2000)
    $ping_1_on = GUICtrlCreateLabel( "", $tabel1_left, 5, $tabel1_widh, $tabel1_height)
    If $ping_1 Then
    GUICtrlSetData( $ping_1_on, $ping_1_name&" online")
    GUICtrlSetBkColor($ping_1_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_1_on, $ping_1_name&" offline")
    GUICtrlSetBkColor($ping_1_on,0xFA4646)
    EndIf

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

    $ping_2 = ping($ping_2_IP,2000)
    $ping_2_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height, $tabel1_widh, $tabel1_height)
    If $ping_2 Then
    GUICtrlSetData( $ping_2_on, $ping_2_name&" online")
    GUICtrlSetBkColor($ping_2_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_2_on, $ping_2_name&" offline")
    GUICtrlSetBkColor($ping_2_on,0xFA4646)
    EndIf

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

    $ping_3 = ping($ping_3_IP,2000)
    $ping_3_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 20, $tabel1_widh, $tabel1_height)
    If $ping_3 Then
    GUICtrlSetData( $ping_3_on, $ping_3_name&" online")
    GUICtrlSetBkColor($ping_3_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_3_on, $ping_3_name&" offline")
    GUICtrlSetBkColor($ping_3_on,0xFA4646)
    EndIf

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

    $ping_4 = ping($ping_4_IP,2000)
    $ping_4_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 40, $tabel1_widh, $tabel1_height)
    If $ping_4 Then
    GUICtrlSetData( $ping_4_on, $ping_4_name&" online")
    GUICtrlSetBkColor($ping_4_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_4_on, $ping_4_name&" offline")
    GUICtrlSetBkColor($ping_4_on,0xFA4646)
    EndIf

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

    $ping_5 = ping($ping_5_IP,2000)
    $ping_5_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 60, $tabel1_widh, $tabel1_height)
    If $ping_5 Then
    GUICtrlSetData( $ping_5_on, $ping_5_name&" online")
    GUICtrlSetBkColor($ping_5_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_5_on, $ping_5_name&" offline")
    GUICtrlSetBkColor($ping_5_on,0xFA4646)
    EndIf

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

    $ping_6 = ping($ping_6_IP,2000)
    $ping_6_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 80, $tabel1_widh, $tabel1_height)
    If $ping_6 Then
    GUICtrlSetData( $ping_6_on, $ping_6_name&" online")
    GUICtrlSetBkColor($ping_6_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_6_on, $ping_6_name&" offline")
    GUICtrlSetBkColor($ping_6_on,0xFA4646)
    EndIf

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

    $ping_7 = ping($ping_7_IP,2000)
    $ping_7_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 100, $tabel1_widh, $tabel1_height)
    If $ping_7 Then
    GUICtrlSetData( $ping_7_on, $ping_7_name&" online")
    GUICtrlSetBkColor($ping_7_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_7_on, $ping_7_name&" offline")
    GUICtrlSetBkColor($ping_7_on,0xFA4646)
    EndIf

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

    $ping_8 = ping($ping_8_IP,2000)
    $ping_8_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 120, $tabel1_widh, $tabel1_height)
    If $ping_8 Then
    GUICtrlSetData( $ping_8_on, $ping_8_name&" online")
    GUICtrlSetBkColor($ping_8_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_8_on, $ping_8_name&" offline")
    GUICtrlSetBkColor($ping_8_on,0xFA4646)
    EndIf

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

    $ping_9 = ping($ping_9_IP,2000)
    $ping_9_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 140, $tabel1_widh, $tabel1_height)
    If $ping_9 Then
    GUICtrlSetData( $ping_9_on, $ping_9_name&" online")
    GUICtrlSetBkColor($ping_9_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_9_on, $ping_9_name&" offline")
    GUICtrlSetBkColor($ping_9_on,0xFA4646)
    EndIf

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

    $ping_10 = ping($ping_10_IP,2000)
    $ping_10_on = GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 160, $tabel1_widh, $tabel1_height)
    If $ping_10 Then
    GUICtrlSetData( $ping_10_on, $ping_10_name&" online")
    GUICtrlSetBkColor($ping_10_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_10_on, $ping_10_name&" offline")
    GUICtrlSetBkColor($ping_10_on,0xFA4646)
    EndIf

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

    $ping_11 = ping($ping_11_IP,2000)
    $ping_11_on =GUICtrlCreateLabel( "", $tabel1_left, $tabel1_top + $tabel1_height + 180, $tabel1_widh, $tabel1_height)
    If $ping_11 Then
    GUICtrlSetData( $ping_11_on, $ping_11_name&" online")
    GUICtrlSetBkColor($ping_11_on,0x00ff00)
    Else
    GUICtrlSetData( $ping_11_on, $ping_11_name&" offline")
    GUICtrlSetBkColor($ping_11_on,0xFA4646)
    EndIf
    GUICtrlSetData( $ping, "Ping!")
    EndFunc

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

    Func ping1_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send * "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping2_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_2_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping3_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_3_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping4_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_4_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping5_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_5_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping6_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_6_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping7_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_7_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping8_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_8_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping9_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_9_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)

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

    EndFunc

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

    Func ping10_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_10_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping11_message()
    $message = InputBox( "Your Message", "Type here your message:")
    FileDelete( "C:\net_send.bat")
    FileWriteLine( "C:\net_send.bat", "net send "&$ping_11_IP&" "&$message)
    FileWriteLine( "C:\net_send.bat", "Exit")
    run( "C:\net_send.bat","" , @SW_HIDE)
    EndFunc

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

    Func ping2_open()
    run( "explorer.exe \\"&$ping_2_IP&"\")
    EndFunc

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

    Func ping3_open()
    run( "explorer.exe \\"&$ping_3_IP&"\")
    EndFunc

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

    Func ping4_open()
    run( "explorer.exe \\"&$ping_4_IP&"\")
    EndFunc

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

    Func ping5_open()
    run( "explorer.exe \\"&$ping_5_IP&"\")
    EndFunc

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

    Func ping6_open()
    run( "explorer.exe \\"&$ping_6_IP&"\")
    EndFunc

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

    Func ping7_open()
    run( "explorer.exe \\"&$ping_7_IP&"\")
    EndFunc

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

    Func ping8_open()
    run( "explorer.exe \\"&$ping_8_IP&"\")
    EndFunc

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

    Func ping9_open()
    run( "explorer.exe \\"&$ping_9_IP&"\")
    EndFunc

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

    Func ping10_open()
    run( "explorer.exe \\"&$ping_10_IP&"\")
    EndFunc

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

    Func ping11_open()
    run( "explorer.exe \\"&$ping_11_IP&"\")
    EndFunc

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

    While 1
    WEnd

    [/autoit]

    Also hab ich mir gedacht, wiso nicht die DOS funktion net view benutzen und die Ausgabe in eine datei umleiten, diese Datei wird dann mit _ReadtoArray in ein Array eingelesen und es wird nach \\ zeichen gesucht (_ArraySearch) da dieses ja die PCs sind, das ganze geht zwar auch aber er zeigt mir immer nur den obersten Rechner an und da hab ich schon mein problem ist es eine variable mit der ich die Suchergebnisse definieren kann oder sowas? Ich habe das ganze, wenn auch umständlich seeeeeeeeehr umständlich :D so gelöst:

    Spoiler anzeigen
    [autoit]

    #include
    #include
    #include
    #Include
    ;AutoItSetOption("TrayIconHide", 1)
    Opt("GUIOnEventMode", 1)
    Dim $aResult
    FileWriteLine("C:\net_view.bat", "net view > C:\net_view.txt")
    FileWriteLine("C:\net_view.bat", "Exit")
    run( "C:\net_view.bat")
    sleep(1000)
    _FileReadToArray("C:\net_view.txt", $aResult)
    $posi1 = _ArraySearch( $aResult, "\\", 0, 0, 1, True)

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

    If $posi1 <> -1 Then
    $result1 = FileReadLine( "C:\net_view.txt", $posi1)
    $posi2 = _ArraySearch( $aResult, "\\", $posi1+1, 0, 0, True)
    MsgBox(0, "Error1", $result1)
    Else
    MsgBox(0, "Error", "No more \\ are found")
    EndIf

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

    If $posi2 <> -1 Then
    $result2 = FileReadLine( "C:\net_view.txt", $posi2)
    $posi3 = _ArraySearch( $aResult, "\\", $posi2+1, 0, 0, True)
    MsgBox(0, "Error2", $result2)
    Else
    MsgBox(0, "Error", "No more \\ are found")
    EndIf

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

    If $posi3 <> -1 Then
    $result3 = FileReadLine( "C:\net_view.txt", $posi3)
    $posi4 = _ArraySearch( $aResult, "\\", $posi3+1, 0, 0, True)
    MsgBox(0, "Error3", $result3)
    Else
    MsgBox(0, "Error", "No more \\ are found")
    EndIf

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

    If $posi4 <> -1 Then
    $result4 = FileReadLine( "C:\net_view.txt", $posi4)
    MsgBox(0, "Error4", $result4)
    Else
    MsgBox(0, "Error", "No more \\ are found")
    EndIf

    [/autoit]

    (MsgBox nur zum darstellen :D )
    Er sucht quasi "\\" und wenn er es gefunden hat sucht er da weiter wo er aufgehört hat $posi1+1

    Wahrscheinlich hab ich nur irgendwas in der Hilfe übersehen (hab sowas noch nie vorher gemacht) oder ich benutze die vollkommen falschen funktionen aber googeln und forum hat mir nich viel gebracht denn die frage wie etwas in ner datei gesucht wird, wird ja oft gestellt aber die wollen halt immer nur EIN suchergebnis haben

    Wär nett wenn ihr mir irgendwie helfen könnt ;)

    MFG Fire

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

    Einmal editiert, zuletzt von FireFlyer (12. Januar 2008 um 03:16)

    • Offizieller Beitrag

    Hi,

    sowas?

    [autoit]

    #include<Array.au3>
    $Servernames = Net_View()

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

    _ArrayDisplay($Servernames, "Servernames")

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

    Func Net_View()
    Local $s_Buf = '', $a_Buf, $i_Pid = Run(@ComSpec & ' /c net view', '', @SW_HIDE, 2 + 4)
    While Not @error
    $s_Buf &= StdoutRead($i_Pid)
    WEnd
    $a_Buf = StringRegExp($s_Buf, "\\\\([0-9a-zA-Z-]*)", 3)
    ProcessClose($i_Pid)
    Return $a_Buf
    EndFunc ;==>Net_View

    [/autoit]

    oder

    Spoiler anzeigen
    [autoit]

    #include<GuiListView.au3>
    #include<GUIConstants.au3>
    GUICreate("NetView in ListView", 520, 550, 100, 100, -1)
    GUISetBkColor(0x00E0FFFF) ; will change background color

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

    $listview = GUICtrlCreateListView("Rechnername|Kommentar", 10, 10, 400, 450, Default, $LVS_EX_GRIDLINES)
    _GUICtrlListView_SetColumnWidth($listview, 1, $LVSCW_AUTOSIZE_USEHEADER)

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

    Global $s_Comments[1]
    Global $s_Servernames = Net_View()

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

    For $i = 0 To UBound($s_Servernames) - 1
    GUICtrlCreateListViewItem($s_Servernames[$i] & '|' & $s_Comments[$i], $listview)
    Next
    GUISetState()

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

    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit (0)
    EndSwitch
    WEnd

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

    Func Net_View()
    Local $s_Buf = ''
    Local $a_Buf = ''
    Local $i_Pid = Run(@ComSpec & ' /c net view', '', @SW_HIDE, 2 + 4)
    While Not @error
    $s_Buf &= StdoutRead($i_Pid)
    WEnd
    Local $netView_Lines = StringSplit($s_Buf, @LF)
    ReDim $s_Comments[UBound($netView_Lines) ]
    For $i = 4 To UBound($netView_Lines) - 1
    $s_Comments[$i - 4] = StringMid($netView_Lines[$i], 24, 30)
    Next
    $a_Buf = StringRegExp($s_Buf, "\\\\([0-9a-zA-Z-]*)", 3)
    ProcessClose($i_Pid)
    Return $a_Buf
    EndFunc ;==>Net_View

    [/autoit]

    So long,

    Mega

  • öhhhhh joar sieht gut aus THX aber wie funktioniert denn das ganze?
    und vor allem kann ich hier auch die einzelnen "ergebnisse" weiterverarbeiten?

    MFG

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D

  • hmm naja aber was da steht versteh ich eben nicht ^^ ich bin leider nich so einer wie du der das wie ein profi kann :D sieht man ja auch an meinen scripten :P wie ich das weiterverwenden will?..... naja halt eben wie in meinem 1. script in einem GUI (jaaa ich weiss das 2. Script von dir ^^ ) und mit net send und den freigaben usw ;)

    MFG Fire

    MFG FireFlyer

    *Paradox ist, wenn man sich im Handumdrehen den Fuss bricht* :D