zusätzliches Internet-Protokoll installieren

  • Hallo,
    ich bin absoluter Newbie und habe versucht, ein zusätzliches Internet-Protokoll mittels Autoit-Skript zu installieren.
    Leider habe ich bisher keinen Weg gefunden, dies umzusetzen.
    Kann mir jemand weiterhelfen?

  • Hallo,

    ich meine IPX. Das Skript möchte ich in meine Windows-CD integrieren und dann beim Windows-Setup gleich mit instalieren.
    Zum Bearbeiten/Erstellen meiner individuellen Windows-CD benutze ich den "Windows Unattended CD Creator" von Vitali Graf.

  • Hi,
    erst mal Danke für die schnelle Antwort.
    Ich will mal schauen, ob meine Möglichkeiten ausreichen, um das umzusetzen.
    Werde nachberichten.

  • Hi,

    die im enteo-Forum aufgeführten Befehle sind für die Installation unter NT vorgesehen. Trifft das für Windows XP Pro überhaupt zu?

    Ich habe mal herumprobiert, aber ausser jeder Menge Fehlermeldungen in meinen Skript-Versuchen nichts Produktives erreicht.....


    Mir ist nicht klar, wie ich die beiden Befehle aus dem in ein Skript einbinden muß. Für Hilfe wäre ich dankbar.


    Leider fehlen mir (noch) zu viele Grundkenntnisse (Funktionsweise von Variabeln, Schleifen, If..Then usw.).

    Über einfache Skripte zum unbeaufsichtigten Installieren von Programmen bin ich bisher noch nicht hinaus gekommen. Vielleicht kann mir ja auch für diesen Bereich jemand gute Tutorials empfehlen.

    Danke Tom

  • Hi,


    komme leider überhaupt nicht weiter.
    Kann mir irgend jemand auf die Sprünge helfen?
    Habe leider keine Idee, wie ein Skript zur Installation des Protokolls IPX aussehen sollte.

    Bin für jede Hilfe dankbar.


    peethebee : Das Forum macht einen guten Eindruck. Ich denke, es wird im Laufe er Zeit zu einem absoluten Muß.


    Tom

    • Offizieller Beitrag

    Was machst du denn, wenn du es von Hand installierst? Diese Schritte kann man sicher auch einfach mit AutoIt nachvollziehen. Es ist evtl. nicht die sauberste Lösung, aber funktionieren sollte es - zumal bei der Einrichtung wohl kein DAU vor dem Rechner sitzen wird bzw. mit BlockINput kurzzeitig "ausgesperrt" werden kann.

    peethebee

    p.s. Vielen Dank für das Lob!

  • Hi,

    habe natürlich längst probiert, die Schritte nachzuvollziehen (u.a. unter Verwendung eines Macro-Writers).

    Es würde mir auch völlig ausreichen, dies mit einem simplen Skript abzuarbeiten.

    Bis zum Öffnen des Fensters "Netzwerkverbindungen", das sich nach Mausklick mit rechter Maustaste und dann Eigenschaften-Auswahl öffnet, bin ich mittels Befehl gekommen.

    Aber in diesem Fenster werden dann keine Skript-Befehle mehr ausgeführt.
    Und genau an dieser Stelle komme ich nicht mehr weiter.

    Zum einen weiß ich nicht, warum in diesem Fenster keine Befehle ausgeführt werden.

    Zum anderen finde ich keinen Weg, weiter zu kommen und das folgende Fenster zu öffnen.

    Auch Autoit Windows Info hat mir nicht weiter geholfen.

    Ich habe schon fast die Vermutung, dass dieser Bereich gegen eine Ausführung per Skript irgendwie abgesichert ist.

    Im folgenden Fenster werden dann die Skript-Befehle wieder umgesetzt.

    Das einfachste wäre, wenn es einen Befehl gäbe, das Fenster "Eigenschaften von Lan" direkt zu öffnen. Dann könnten dort einfache Skriptbefehle gesetzt werden.

    Aber diesen Befehl, bzw. einen Weg im Fenster "Netzwerkverbindungen" Skript-Befehle zu setzen, die dann auch ausgeführt werden, habe ich bisher nicht finden können.


    Gruß Tom

    • Offizieller Beitrag

    Hi,

    kommst du soweit?

    Spoiler anzeigen
    [autoit]


    Opt("WinTitleMatchMode", 3)
    Run("RunDll32.exe shell32.dll,Control_RunDLL ncpa.cpl")
    WinWaitActive("Netzwerkverbindungen", "",5)
    ControlSend("Netzwerkverbindungen", "", 1, "LAN")
    ControlSend("Netzwerkverbindungen", "", 1, "!d")
    ControlSend("Netzwerkverbindungen", "", 1, "i")
    WinWaitActive("Eigenschaften von LAN-Verbindung", "",25)
    ControlClick("Eigenschaften von LAN-Verbindung", "", 15008, "left", 1)
    WinWaitActive("Netzwerkkomponente auswählen", "",5)
    ControlSend("Netzwerkkomponente auswählen", "", 15006, "P"&"{Enter}")

    [/autoit]

    So long,

    Mega

    • Offizieller Beitrag

    Am einfachsten scheint es zu sein, den Novell Client zu installieren und bei der De-Installation die Deinstallation des IPX Protokols zu verhindern.

    Den Client jedenfalls findest du hier: http://download.novell.com/Download?buildid=CDNiy_KxbpI~


    Oder die manuelle Installation der notwendigen Inf-Datei aus dem Windows\Inf Verzeichnis netnwlnk.inf zusammen mit der netnwcli.inf für den Client

  • Hi,


    Genau so was wie das Skript von th.meger habe ich gesucht. Dafür erst mal besten Dank.

    Hatte aber noch einige Probleme mit dem Skript und musste an einigen Stellen anpassen.

    Als erstes musste ich auf meinem Laptop mit XP-Home bei Netzwerkverbindungen zweimal „i“ und dann „Enter“ eingeben, um auf die Schaltfläche „Eigenschaften von LAN“ zu kommen.

    Die Option „Opt("WinTitleMatchMode", 3)“ habe ich weggelassen. Dadurch reicht bei Fenstertitel „Eigenschaften von“, also ein unvollständiger Fenstertitel. Ich finde, das erleichtert das Anpassen des Skripts für andere PCs.

    Nach der Installation des Protokolls habe ich eine 15 Sek. lange Pause eingefügt. Das war erforderlich, da das Laptop, mit dem ich getestet habe, relativ lange für die Installation des Protokolls gebraucht hat und es sonst zu Problemen mit dem folgenden Fenster kam.

    In Fenster "Eigenschaften von" habe ich noch die Option „Symbol bei Verbindung im Infobereich anzeigen“ aktiviert, mit vorheriger Überprüfung, ob bereits aktiviert ist.

    Wie bereits beschrieben, möchte ich das Skript in meine Windows-Setup-CD integrieren, die ich mit dem "Windows Unattended CD Creator" von Vitali Graf (https://autoit.de/www.VitaliGraf.de).

    Allerdings bin ich mir nicht sicher, ob sich das Skript genauso wie normale Software installieren lässt oder zur Installation einen aktiven Desktop benötigt.

    Sollte ein aktiver Desktop erforderlich sein, muss das kompilierte Skript bei der Windows-Installation in den Autostart kopiert werden.
    Dort wird es dann beim ersten „richtigen“ Start von Windows nach den Setup ausgeführt.
    Dazu sollte dann am Anfang des Skripts eine ausreichend lange Pause eingefügt werden.
    Ferner sollte am Ende des Skripts folgender Befehl eingefügt werden:

    [autoit]

    „Run(@ComSpec & " /c del /f " & '"' & @AutoItExe & '"', @WorkingDir, @SW_HIDE)“

    [/autoit]

    Dadurch löscht sich die *.exe (kompiliertes Skript) nach ihrer Ausführung automatisch und wird nicht bei jedem Neustart wieder ausgeführt (ist natürlich nicht auf meinem Mist gewachsen…Grins.. Hat Vitali mir freundlicherweise geschrieben.).

    Auf diese Weise habe ich übrigens einige kompilierte Skripte installieren können, die bei normalen Aufruf während des Setups „gezickt“ haben.


    Hier das Skript

    Spoiler anzeigen
    [autoit]


    ; Start
    Run("RunDll32.exe shell32.dll,Control_RunDLL ncpa.cpl")

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

    ; Fenster Netzwerkverbindungen
    Winwait("Netzwerkverbindungen","")
    If Not WinActive("Netzwerkverbindungen","") Then WinActivate("Netzwerkverbindungen","")
    WinWaitActive("Netzwerkverbindungen","")
    ControlSend("Netzwerkverbindungen", "", 1, "WLAN")
    ControlSend("Netzwerkverbindungen", "", 1, "!d")
    ControlSend("Netzwerkverbindungen", "", 1, "i" & "i" & "{ENTER}")

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

    ; Fenster Eigenschaften von
    WinWait("Eigenschaften von ","")
    If Not WinActive("Eigenschaften von ","") Then WinActivate("Eigenschaften von ","")
    WinWaitActive("Eigenschaften von ","")
    ControlClick("Eigenschaften von ","", "Button2")

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

    ; Fenster Netzwerkkomopnente auswaehlen
    WinWait("Netzwerkkomponente auswählen","&Klicken Sie auf die")
    If Not WinActive("Netzwerkkomponente auswählen","&Klicken Sie auf die") Then WinActivate("Netzwerkkomponente auswählen","&Klicken Sie auf die")
    WinWaitActive("Netzwerkkomponente auswählen","&Klicken Sie auf die")
    Send("p" & "{ENTER}")
    Sleep(1000)

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

    ;Fenster Netzwerkprotokoll auswaehlen
    WinWait("Netzwerkprotokoll wählen","Wählen Sie das zu installierende Netzwerkprotokoll")
    If Not WinActive("Netzwerkprotokoll wählen","Wählen Sie das zu installierende Netzwerkprotokoll") Then WinActivate("Netzwerkprotokoll wählen","Wählen Sie das zu installierende Netzwerkprotokoll")
    WinWaitActive("Netzwerkprotokoll wählen","Wählen Sie das zu installierende Netzwerkprotokoll")
    Send("{TAB}")
    Sleep(500)
    Send("{TAB}")
    Sleep(500)
    Send("{TAB}")
    Sleep(500)
    Send("{DOWN}")
    Sleep(500)
    Send("{DOWN}")
    Sleep(500)
    ControlClick("Netzwerkprotokoll wählen","Wählen Sie das zu installierende Netzwerkprotokoll", "Button4") ; Button 5 ist abbrechen, ausfuehren ist Button 4
    Sleep(15000)

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

    ; Fenster Eigenschaften von -> mit Pruefung Anzeige Taskleiste
    WinWait("Eigenschaften von ","")
    If Not WinActive("Eigenschaften von ","") Then WinActivate("Eigenschaften von ","")
    WinWaitActive("Eigenschaften von ","")
    Sleep(5000)
    If ControlCommand("Eigenschaften von ","", "Button6", "IsChecked", "") = 0 Then
    ControlClick("Eigenschaften von ","", "Button6")
    ControlClick("Eigenschaften von ","", "Button8")
    else
    ControlClick("Eigenschaften von ","", "Button9")
    EndIf

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

    ; Fenster Netzwerkverbindungen -> zum beenden
    Winwait("Netzwerkverbindungen","")
    If Not WinActive("Netzwerkverbindungen","") Then WinActivate("Netzwerkverbindungen","")
    WinActivate("Netzwerkverbindungen","")
    Sleep(2000)
    WinClose("Netzwerkverbindungen","")

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

    Exit

    [/autoit]

    Noch mal Danke.

    Gruß Tom


    [ autoit] und [ spoiler] hinzugefügt. Grüße Gun-Food

    • Offizieller Beitrag

    Hi,

    zum selbst löschen gibt es extra diese Methode.

    [autoit]


    Func _SelfDelete($iDelay = 0)
    Local $sCmdFile
    FileDelete(@TempDir & "scratch.bat")
    $sCmdFile = 'ping -n ' & $iDelay & '127.0.0.1 > nul' & @CRLF _
    & ':loop' & @CRLF _
    & 'del "' & @ScriptFullPath & '"' & @CRLF _
    & 'if exist "' & @ScriptFullPath & '" goto loop' & @CRLF _
    & 'del ' & @TempDir & 'scratch.bat'
    FileWrite(@TempDir & "scratch.bat", $sCmdFile)
    Run(@TempDir & "scratch.bat", @TempDir, @SW_HIDE)
    EndFunc

    [/autoit]

    So long,

    Mega

  • Hi,

    habe jetzt das Skript in die mit dem CD-Creator erstellte Win-CD eingebaut.
    Das kompilierte Skript ließ sich problemlos wie jede andere Software installieren.

    Damit ist der Teil für das selbsttätige löschen überflüssig.


    Vielen Dank an alle, die bei der Lösung meines Problems geholfen haben


    Gruß Tom