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

Beiträge von Surfy

  • Prozessüberwachen und abschiessen wenn vorhanden

    • Surfy
    • 6. Mai 2010 um 17:58

    Hallo zusammen

    Ich würde gerne gerne auf einen Prozess warten, sobald dieser existiert diesen abschiessen, und hätte am liebsten im Traytooltip noch einen Counter, wie oft das Programm tätig wurde.

    Ersteinmal mein Script:

    [autoit]

    ToolTip("Killtool is active", 550, 0)
    TraySetState()
    TraySetToolTip('Klick here for pause or exit "killtool"')
    ProcessWait("wishtokill.exe")
    RunAs ( 'MyUser', 'domain', 'pw', 0, @ComSpec & ' /c taskkill.exe /F /IM wishtokill.exe', @WindowsDir ,@SW_HIDE )
    Sleep(5000)
    ProcessWait("wishtokill.exe")
    RunAs ( 'MyUser', 'domain', 'pw', 0, @ComSpec & ' /c taskkill.exe /F /IM wishtokill.exe', @WindowsDir ,@SW_HIDE )
    Sleep(5000)
    ProcessWait("wishtokill.exe")
    RunAs ( 'MyUser', 'domain', 'pw', 0, @ComSpec & ' /c taskkill.exe /F /IM wishtokill.exe', @WindowsDir ,@SW_HIDE )
    Sleep(5000)

    [/autoit]

    Wie kann ich a.) das eleganter Lösen, als mit vielen wiederholenden Zeilen? :huh: Ein Schläufchen?

    Und wie könnte ich den Counter im Tooltip realisieren? ;( Im Schläufchen i=i+1 oder so?

    Danke für eure Tips

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 17:10

    Ich hab jetzt etwas, was mir Leerzeilen aus dem ende einer Textdatei entfernt:

    [autoit]

    #Include <File.au3>
    $open = FileOpen("c:\WINDOWS\system32\drivers\etc\services", 0 )
    $text = FileRead($open)
    $sString = StringTrimRight($text, 2)
    FileClose($open)
    FileDelete("c:\WINDOWS\system32\drivers\etc\services")
    _FileCreate("c:\WINDOWS\system32\drivers\etc\services")
    FileWrite("c:\WINDOWS\system32\drivers\etc\services",$sString)

    [/autoit]

    Aber eleganz ist zum einen nicht gegeben, zum anderen kann ich nicht wissen, wieviele Leerzeilen ich zu entfernen habe ?(

    Ich hoffe ihr wisst noch einmal rat ;)

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 16:28
    [autoit]

    #include<Array.au3>
    #include <File.au3>
    $filename = "c:\WINDOWS\system32\drivers\etc\services"
    $find = "applikation1 10044/tcp #Applikation1 "
    $replace = ""

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

    $retval = _ReplaceStringInFile($filename,$find,$replace)
    $find = "applikation2 10044/tcp #Applikation2 "
    $replace = ""
    $retval = _ReplaceStringInFile($filename,$find,$replace)

    [/autoit]

    Hui, hab das selber hinbekommen :rolleyes: Jetzt stören nur noch die zurückbleibenden Leerzeilen :thumbup:

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 16:13

    Ich glaube am Modi liegt das nicht alleine? Ohne Flag passiert nichts, mit 1 auch nicht, mit 2 wird die ganze Datei gelöscht


    Zitat


    [optional]
    Modus in dem die Datei geöffnet werden soll.
    Kann auch eine Kombination aus folgenden sein:
    0 = Lesemodus (Standard)
    1 = Schreibmodus (anhängend an das Dateiende)
    2 = Schreibmodus (löschen des vorherigen Inhaltes)
    8 = Anlegen der Verzeichnisstruktur, wenn sie nicht existiert (siehe Bemerkungen).
    16 = Erzwinge den Binärmodus (Siehe Bemerkungen)

    Alles anzeigen

    Sitze ich heute wirklich sooo auf dem Schlauch? 8| ;(

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 15:06

    Argh, hab da doch noch ein paar Probleme:


    Zitat


    knetd 2053/tcp #Kerberos de-multiplexor
    man 9535/tcp #Remote Man Server

    applikation1 10044/tcp #Applikation1
    applikation2 29444/tcp #Applikation2

    Die Services Datei hat am ende korrekterweise eine Leerzeile, die mein Script dann einfach mitbenutzt :wacko:

    Und das Entfernen will gar nicht:

    [autoit]

    $Pfad = "c:\WINDOWS\system32\drivers\etc\services"
    $file = FileOpen($Pfad, 1)
    $eingeleseneDatei = StringReplace($file, "applikation1 10044/tcp #Applikation1", "") ; leerer string für entfernen
    $eingeleseneDatei2 = StringReplace($file, "applikation2 29444/tcp #Applikation2", "") ; leerer string für entfernen
    FileClose($file)

    [/autoit]
  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 14:18

    Herzlichen Dank an alle Helfer! :)

    Habe den Thread auf closed gesetzt.

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 12:55

    8|

    Ich danke euch!

    Leider finden die Zeilen "appliakationsname" nicht, obwohl es mehrfach eingetragen wurde. Ich habe auch eine Abfrage eingebaut, ob es probleme beim öffnen gab.


    [autoit]

    $Pfad = "c:\WINDOWS\system32\drivers\etc\services"
    $file = FileOpen($Pfad, 1)
    If $file = -1 Then
    MsgBox(0, "Fehler", "Die Datei konnte nicht geöffnet werden.")
    Exit
    EndIf
    $ifexistos = FileRead ($file)
    If StringInStr( $ifexistos, "appliakationsname") Then
    MsgBox(4096, "Test", $ifexistos, 10)
    Else
    MsgBox (0,"", "nichtvorhanden -> schreib in services")
    EndIf

    [/autoit]

    Nun begreife ich grad gar nichts mehr, denn ein Fehler ist dabei nicht erkennbar

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 11:49

    Herzlichen Dank! :rolleyes: Sass ich auf der Leitung :wacko:

    $Pfad = "c:\WINDOWS\system32\drivers\etc\services"

    $file = FileOpen($Pfad, 1)
    $ifexistos = StringInStr( $file, "appliakationsname")
    MsgBox(4096, "Test", $ifexistos, 10)


    Sieht vielleicht wo da mein Fehler liegt? Würde gern erst prüfen, ob der Eintrag schon vorhanden ist, oder nicht, bevor ich da schreibe. ;)

  • Text Datei Editieren

    • Surfy
    • 23. April 2010 um 10:25

    ;(

    Herzlichen Dank für eure Tips!

    Leider klemmt Fileopen schon daran, dass die Datei keine Endung hat..

    $file = FileOpen("c:\WINDOWS\system32\drivers\etc\services", 0)
    FileWriteLine($file, "appliakationsname 10044/tcp #Applikation 1")
    FileWriteLine($file, "appliakationsname 10044/tcp #Applikation 1")
    FileClose($file)

    läuft so ins leere... Muss ich die Datei nun vorher umbenennen? Irgendwie wird alles nicht so elegant, wie ich mir erhofft hatte

  • Text Datei Editieren

    • Surfy
    • 22. April 2010 um 18:41

    Hallo zusammen

    Ich würde gerne via Auto-It die Datei c:\WINDOWS\system32\drivers\etc\services Editieren, bzw da zwei Zeilen anhängen, und / oder löschen. Es ist eine Text-Datei.

    Hinzufügen würde ich

    appliakationsname 10044/tcp #Applikation 1
    applikationsname2 29444/tcp #Applikation 2


    oder diese beiden eben löschen wollen / müssen.

    Wie kann man das am elegantesten Lösen? Mit Fileopen und Filewriteline? Spätestens beim entfernen der beiden Zeilen, bin ich aber komplett planlos.

    Ich hoffe ihr wisst Rat.

  • Softwareverteilung Hephaistos [RELEASE]

    • Surfy
    • 17. Februar 2010 um 16:18

    Hui, ein spannendes Projekt. Ich hab da eine Testumgebung am laufen, und hatte schon überlegt so etwas zu scripten, aber viel viel einfacher als das hier :)

    Werde das ganze mal ausprobieren. Nach der ersten Hürde (_GetIntersection.au3) kam die zweite (SQLlib.dll) - aber schlussendlich alles mal fertig kompiliert. Bin schliesslich ein Auto-IT Anfänger..

    Sitze im Büro, und kann hier noch keine Test in meiner Testumgebung machen.

    Aber Vorschläge habe ich schonmal: Wieso nicht alles mit einem Inifile steuern? IP Adresse, Netzwerkbuchstabe, Freigabenamen, einfach alles? Dann den "Client Setup" und "Server-Setup" so machen, dass sich via Installfile die Exe einmalig ins Programfiles\Hephaistos kopiert, und sich in der Registry im "run" einträgt, und sich einmalig startet. Nach einem Restart ist dann ja alles am laufen. Shortcuts anlegen für das Admingui etc ;)

    So etwas für kleine Firmen ist echt genial.

  • Netzwerkverbindung löschen

    • Surfy
    • 17. Februar 2010 um 08:07

    Micha_he: doch, mit devcon geht das dauerhaft.

    @doc: Wenn ich mal einen weg gefunden habe, der vom Syntax her das "Disable" auch durchführt, traue ich mir dann durchaus zu, dieses auch auf Delete umzufriemeln ;( Denn auch das Disable ging bisher mit Netsh nicht :(

    Komandozeilenbefehl für Vmware gibts aber nur unter Unix & CO

  • Netzwerkverbindung löschen

    • Surfy
    • 16. Februar 2010 um 19:08

    Habe gerade noch das entdeckt:

    netsh interface set interface name="VMware Network Adapter VMnet1" admin=disabled
    netsh interface set interface name="VMware Network Adapter VMnet8" admin=disabled

    http://anotherlab.rajapet.net/2005/12/disabl…k-adapters.html

    Ich muss meine Kiste erstmal neu Aufsetzen, der Befehl: "devcon delete net="

    hat mal eben alle Netzwerkconnections gekillt ^^ Mit Devcon gehts sicher, aber ich hoffe noch immer auf eine Lösung mit netsh :thumbup:

    Mit Devcon lautet die korrekte Zeile:

    Zitat

    devcon remove *vmnet*

  • Netzwerkverbindung löschen

    • Surfy
    • 16. Februar 2010 um 18:52

    @doc: leider nicht :-/

  • Netzwerkverbindung löschen

    • Surfy
    • 16. Februar 2010 um 18:03

    Hi Doc, sorry, hatte dein Post übersehen.. Es ist eine aktive Netzwerkverbindung unter WinXP Sp3, die gelöscht werden soll


    Gruss, Surfy

  • Netzwerkverbindung löschen

    • Surfy
    • 16. Februar 2010 um 18:01

    Danke für den Script! Muss man noch etwas beachten, ausser den richtigen Namen der Netzwerkverbindung einzutragen?

    Übrigens ist die Firewall auf die Verbindung aktiviert, vielleicht macht das auch noch einen unterschied?

    Der Script läuft, bewirkt aber nichts bis anhin ;(

  • Netzwerkverbindung löschen

    • Surfy
    • 16. Februar 2010 um 17:52

    Irgendwas scheint am Syntax geändert zu haben, hab nun schon sicher 10 Seiten gefunden, die das Beispielhaft beschreiben, aber alles führt zu einem Syntaxfehler X(

    Am weitesten war ich mal hier:


    Zitat

    netsh int set interface name="VMware Network Adapter VMnet1" admin=disabled >c:\install\log.txt

    Ergebniss:


    Zitat


    One or more essential parameters not specified
    The syntax supplied for this command is not valid. Check help for the correct syntax.

    Usage set interface [name = ] IfName
    [ [admin = ] ENABLED|DISABLED
    [connect = ] CONNECTED|DISCONNECTED
    [newname = ] NewName ]

    Sets interface parameters.

    IfName - the name of the interface
    admin - whether the interface should be enabled (non-LAN only).
    connect - whether to connect the interface (non-LAN only).
    newname - new name for the interface (LAN only).

    Notes:
    - At least one option other than the name must be specified.
    - If connect = CONNECTED is specified, then the interface
    is automatically enabled even if the admin = DISABLED
    option is specified.

    Alles anzeigen
  • Netzwerkverbindung löschen

    • Surfy
    • 16. Februar 2010 um 17:40

    Hallo zusammen

    Ich muss eine Netzwerkverbindung via Script löschen..

    Laut freund Google müsste das auch ohne Auto-It gehen

    Zitat

    This is how to Disable and enable an interface using Netsh

    netsh int set interface name="Local Area Connection 3" admin=disabled
    netsh int set interface name="Local Area Connection 3" admin=enabled


    Aber ich renne immer in einen Syntax Fehler.. Microsoft bietet noch ein Tool namens Devcon, was ich aber ungern verwenden würde...

    Kennt ihr einen eleganten weg? Bevorzugt wäre eine Auto-It Lösung, aber so langsam bin ich schon froh, wenn ich das überhaupt hinbekomme, ohne devcon.exe


    Danke euch,

    Surfy

  • Remote Firewall Port freischalten

    • Surfy
    • 2. Februar 2010 um 08:40

    Hi

    Das sind Registrykeys, sollte sich einfach realisieren lassen..

    Schau Dich mal hier um.. Allerdings authorisierst Du da Applikationen die durch die FW kommen sollen, die Ports findest Du in dem Hive aber auch, zumindest unter XP.

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List]


    Edit: schau mal hier: [ offen ] Firewall Konfigurieren

    Und schmeiss mal die Forensuche an, bevor Du fragst ;)

  • Splashscreen mit Countdown (schlaufe) - wie andere Abfragen einbauen?

    • Surfy
    • 29. Januar 2010 um 18:52

    /Edit

    @ngen: Danke für deinen Tip!

    Wenn der Prozess von anfang an laufen würde, könnte ich es damit realsieren. Das problem ist aber, das NGenWrapper.exe erst nach ca 5 min startet, und ca 2 min lang geht.

    Daher müsste irgendwie noch eine schleife in die schleife - aber ich kriegs nicht zusammen ;(

    @ blubbsstar: danke dir, dass muss ich nun erstmal verstehen, verdauen ;)

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™