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

Beiträge von ytwinky

  • richtiges klammern setzen???

    • ytwinky
    • 20. Mai 2006 um 15:57

    Wieso heißt deiner auch Piii1k?
    Moment, das schau ich mir mal an..

    [Edit]
    ..wieso, wenn dein Rechner nicht "Piii1k" heißt, arbeitet das Skript doch richtig :rofl:
    Im Ernst:
    Der Funktionsaufruf von myGetSID lautet:

    Code
    myGetSID("Gast", "Piii1k", True))

    Wobei
    "Gast" durch den gesuchten Usernamen ersetzt werden muß
    "Piii1k" durch den gewünschten RechnerNamen
    True gibt an, daß nur ein User gesucht werden soll
    (False würde alle Accounts ausgeben..)
    Das Skript soll nur den Funktionsaufruf demonstrieren.
    Die Func myGetSID(..) ist eher für den Einbau in eigene (GUI-)Skripte gedacht.

    Gruß
    ytwinky

  • richtiges klammern setzen???

    • ytwinky
    • 20. Mai 2006 um 10:36

    Hi,
    oh Mann, User-ID's gehen mit Scriptomatic viel einfacher siehe:
    GetSID, jetzt aber wirklich.. :D
    btw:
    Registry-Schlüssel packe ich meistens in Const-Anweisungen, dann bleiben die
    Funktions-Aufrufe schön übersichtlich..
    Und werden die Const's klug gewählt, läßt sich da auch immer noch was anhaängen..
    Gruß
    ytwinky

  • WindowManagement

    • ytwinky
    • 19. Mai 2006 um 10:59

    Hi,
    wer die Fenster auf dem Desktop manipulieren möchte, findet hier ein
    'reichhaltiges' Betätigungsfeld. Die einzelnen Funktionen sind hier aber in einem
    Skript zusammengefaßt, wer mag, kann die gewünschten Funktionen herausnehmen und
    separate Skripts erstellen, diese mit Verknüpfungen versehen und auch mit HotKeys.
    Wichtig ist dabei nur, daß die $ShellApp=ObjCreate(..)-Zeile in jedem Skript vor-
    handen ist --- sonst gehts nämlich nicht..
    Es geht hier nicht darum, daß/ob AutoIt andere/bessere Funktionen hat.
    Das Geheimnis heißt "shell.application"
    (Mehr dazu beim nächsten Mal..)
    [Edit]
    Nee, steht schon hier
    Viel Spaß beim Fensterln :D
    ytwinky

    btw: ein Syntax-Highlighter wäre eigentlich keine schlechte Idee :rofl:

    Spoiler anzeigen
    C
    ;<AutoItScript>
    #NoTrayIcon
    #include <GUIConstants.au3>
    ;+----------------------------------------------------------------------------+
    ;|    Header: Bestimmen der Übergabeparameter                                 |
    ;|    ( Alles Strings(!!!), bis auf ArgC )                                    |
    ;|    FontAnzeigeCheck: |Il1 sind Alt-0124, Großes i, Kleines L, Eins         |
    Const $Author="WindowManagement.au3 ©2006 by ytwinky, MD";                    |
    ;|    EMail: PIII1kSystem-AutoIt3Forum@yahoo.de                               |
    ;|    (Tastenkombination: keine)                                              |
    ;|    AutoIt3-Version: 3.1.1.124(beta)                                        |
    ;|    Editor: SciTE 1.68, feste Schriftart                                    |
    ;|    Zweck : Schablone für den Anfang, nach Bedarf anpassen                  |
    ;|    Tab auf 2 setzen wg. Lesbarkeit                                         |
    ;+----------------------------------------------------------------------------+
    Dim $ShellApp
    $ShellApp=ObjCreate("shell.application") ;Get/Make a ShellApplicationObject
    ; == GUI generated with Koda ==
    $WinMan = GUICreate("WindowManager", 422, 235, 120, 125)
    GUISetFont(10, 400, 0, "MS Sans Serif")
    GUICtrlCreateLabel("WindowManagement", 0, 0, 425, 41, $SS_CENTER)
    GUICtrlSetFont(-1, 24, 800, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0x000080)
    $TileHor= GUICtrlCreateButton("Untereinander", 136, 80, 155, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $TileVert = GUICtrlCreateButton("Nebeneinander", 136, 104, 155, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $MinAll = GUICtrlCreateButton("Alle minimieren", 136, 128, 155, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $MaxAll = GUICtrlCreateButton("Alle maximieren", 136, 152, 155, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Cascade = GUICtrlCreateButton("Überlappend", 136, 176, 155, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Quit = GUICtrlCreateButton("Quit", 136, 200, 155, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    While 1
    	Switch GuiGetMsg()
    		Case $GUI_EVENT_CLOSE, $Quit
    			ExitLoop
    		Case $TileHor
    			$ShellApp.TileHorizontally
    		Case $TileVert
    			$ShellApp.TileVertically
    		Case $MinAll
    			$ShellApp.MinimizeAll
    		Case $MaxAll
    			$ShellApp.UndoMinimizeAll
    		Case $Cascade
    			$ShellApp.CascadeWindows
    		Case Else
    			;-))
    	EndSwitch
    Wend
    Exit
    ;</AutoItScript>
    Alles anzeigen
  • Commander

    • ytwinky
    • 19. Mai 2006 um 10:47

    hi spider,
    (ich sag extra nicht gtaspider, da du ja gar nicht im Intenet bist und nicht erkannt werden sollst :rofl: )
    Dank für die Info..
    ..wenn du Fenster 'bearbeiten' willst, schau in die Skripte ;)
    Gruß
    ytwinky

  • Commander

    • ytwinky
    • 18. Mai 2006 um 22:29

    Hallo Moderator,
    deine Anrede freut mich, dabei kann ich garnix dafür :D
    Auf einmal war ich Doppel-As(oder kommt das immer mit dem 100. Post)..
    MaxArray ist einfach nur der VariablenName für die ArrayObergrenze und bei
    nullbasierten Indizes muß das eben -1 sein.
    Gruß
    ytwinky

  • Commander

    • ytwinky
    • 18. Mai 2006 um 20:33

    Ich habe mir grade mal den Quellcode von _ArraySort() angesehen.
    Diesen Algorithmus verwende ich auch in meinem QSort.Bas.
    Deshalb weiß ich, daß, wenn die Sortierdauer gegen unendlich geht(und das ist alles über 5 min),
    irgendetwas mit den Eingangsparametern nicht stimmt.
    Also entweder Anfangsindex verkehrt oder der EndIndex..
    Versuchs mal mit ..0, MaxArray-1), (ist jetzt nur a. eine Vermutung b. ein Beispiel)
    Gruß
    ytwinky

  • Commander

    • ytwinky
    • 17. Mai 2006 um 21:33

    Hi gtaspider,
    diese ausführliche Bedienungsanleitung wird die Neulinge bei SciTE sicherlich freuen..
    Mir persönlich hätte der Hinweis gereicht, daß die Funktion veraltet ist :rofl:
    Gruß
    ytwinky

  • RGB Finder

    • ytwinky
    • 17. Mai 2006 um 21:29

    Weiß nicht, PIII1k..
    Ich wollte erst ne Änderungsabfrage einbauen, also daß er nur dann schreibt, wenn sich der Wert geändert hat.
    Das wäre dann CPU-unabhängig, ich hätte mich aber tiefer in das Skript reinknieen müssen..
    Gruß
    ytwinky

  • Commander

    • ytwinky
    • 17. Mai 2006 um 21:24

    Hi,
    kannst du mit diesem ..structdelete.. was anfangen?
    Auch mit der neuesten Beta erkennt er das bei mir nicht..
    Gruß
    ytwinky

  • RGB Finder

    • ytwinky
    • 17. Mai 2006 um 21:19

    Hi,
    mich hat aber das ständige Flackern der Schrift gestört..
    ..also habe ich es entfernt :D
    Gruß
    ytwinky

    Spoiler anzeigen
    C
    ; ----------------------------------------------------------------------------
    ;
    ; AutoIt Version: v3.1.1.124 (beta)
    ; Author:         rabbit, Dr.galvany and ytwinky
    ;
    ; Script Function:
    ;	RGB Farbwerte ermitteln
    ;
    ; ----------------------------------------------------------------------------
    
    
    
    
    #include <GuiConstants.au3>
    
    
    Dim $col[3]
    $col[0] = "FF"
    $col[1] = "00"
    $col[2] = "00"
    
    
    
    
    GUICreate("RGB & HEX Finder", 290, 190, -1, -1)
    
    
    $Label = GUICtrlCreateLabel("", 20, 20, 140, 30)
    GUICtrlSetBkColor(-1, 0xFF0000)
    $code = GUICtrlCreateLabel("0xFF0000", 180, 25, 140, 30)
    $rt = GUICtrlCreateLabel("R", 10, 60, 10, 20)
    $r = GUICtrlCreateSlider(20, 60, 140, 20)
    GUICtrlSetLimit(-1, 255, 0)
    GUICtrlSetData(-1, 255)
    $ge = GUICtrlCreateLabel("G", 10, 90, 10, 20)
    $g = GUICtrlCreateSlider(20, 90, 140, 20)
    GUICtrlSetLimit(-1, 255, 0)
    GUICtrlSetData(-1, 0)
    $bl = GUICtrlCreateLabel("B", 10, 120, 10, 20)
    $b = GUICtrlCreateSlider(20, 120, 140, 20)
    GUICtrlSetLimit(-1, 255, 0)
    GUICtrlSetData(-1, 0)
    $copy = GUICtrlCreateButton("Copy", 165, 150, 80, 30)
    GUICtrlSetFont(-1, 10, 800, 0)
    GUICtrlCreateLabel("by rabbit and Dr.Galvany", 5, 165, 150)
    GUICtrlSetFont(-1, 8)
    GUICtrlSetTip(-1, "and ytwinky")
    
    
    GUICtrlCreateLabel("R = ", 179, 60, 50)
    $l1 = GUICtrlCreateLabel(255, 200, 60, 50)
    GUICtrlCreateLabel("G = ", 179, 90, 50)
    $l2 = GUICtrlCreateLabel(0, 200, 90, 50)
    GUICtrlCreateLabel("B = ", 179, 120, 50)
    $l3 = GUICtrlCreateLabel(0, 200, 120, 50)
    
    
    GUISetState()
    While 1
    	Sleep(25)
    
    
    	Switch GUIGetMsg()
    		Case $GUI_EVENT_CLOSE
    			ExitLoop
    
    
    		Case $r
    			$col[0] = Hex(GUICtrlRead($r), 2)
    			Call("setcol")
    	GUICtrlSetData($l1, GUICtrlRead($r))
    
    
    		Case $g
    			$col[1] = Hex(GUICtrlRead($g), 2)
    			Call("setcol")
    	GUICtrlSetData($l2, GUICtrlRead($g))
    
    
    		Case $b
    			$col[2] = Hex(GUICtrlRead($b), 2)
    			Call("setcol")
    	GUICtrlSetData($l3, GUICtrlRead($b))
    
    
    		Case $copy
    			ClipPut($col[0] & $col[1] & $col[2])
    		Case Else
    			;-))
    	EndSwitch
    WEnd
    Exit
    
    
    Func setcol()
    	GUICtrlSetBkColor($Label, "0x" & $col[0] & $col[1] & $col[2])
    	GUICtrlSetData($code, "0x" & $col[0] & $col[1] & $col[2])
    EndFunc   ;==>setcol
    Alles anzeigen
  • Commander

    • ytwinky
    • 17. Mai 2006 um 18:17

    Hi gta_spider,
    du kannst dir vielleicht komische Sachen raussuchen!!
    Ich habe mir mal das AutoIt2Explorer-Skript gezogen und ein wenig "bearbeitet"
    Jetzt läuft das Skript, nach dem ich einige doppelte Consts's entfernt habe
    und ..StructDelete.. auskommentiert habe.
    Aber halt als WindowsExplorer-Ersatz(jedenfalls von der Ansicht her)
    Irgendwo habe ich hier doch eine DateiListe gepostet, muttu ma kuckn ;)
    Ich benutze freeCommander, SpeedCommander usw. und benötige also
    funktionierende DateiManager(mit dem WindowsExplorer kann ich nicht arbeiten..) von daher stellt sich für mich nicht die Frage, selbst einen zu schreiben.
    Wenngleich, ganz uninteressant ist das nicht..
    [Edit]
    Ich habe sie im Forum nicht gefunden, aber auf meiner Platte(nur die Func..):

    Spoiler anzeigen
    Code
    Func ListDir($Verzeichnis, $FileSpec="*.*")
    	Local $i, $n, $Dir=$Verzeichnis, $Erw=$FileSpec, $Fehler
    	$Rand&="  "
    	If StringRight($Dir, 1)<>"\" Then $Dir&="\"
    	If StringLeft($Erw, 1)="\" Then $Erw=StringMid($Erw, 2)
    	$i=FileFindFirstFile($Dir &$Erw)
    	Do
    		$n=$Dir &FileFindNextFile($i)
    		$Fehler=@Error
    	  If Not $Fehler Then
    			$Anzahl+=1
    			$s&=$Rand &$n &" " &FileGetAttrib($n) &@CrLf
    			If StringInstr(FileGetAttrib($n), "D") Then ListDir($n)
    		EndIF
    	Until $Fehler
    	FileClose($i)
    	$Rand=StringMid($Rand, 1, StringLen($Rand-2))
    	Return $s
    EndFunc
    Alles anzeigen


    Gruß
    ytwinky

  • Host und LmHosts bearbeiten..

    • ytwinky
    • 15. Mai 2006 um 18:23

    Hi,
    eigentlich ist die Datei Hosts(mit der Zuordnung der IP-Adressen zu Hostnamen) bei mir
    auf ReadOnly gesetzt, LmHosts desgleichen. Diese Dateien sind(nicht ohne Grund) zu finden
    unter @SystemDir &"\drivers\etc". Da sind noch ein paar andere Dateien, naja, die habe ich
    mit eingebaut.
    Neulich war die aber nicht mehr ReadOnly(obwohl unverändert)!
    Das Problem war nun:
    1. Wer hat das ReadOnly-Bit von Hosts gelöscht?
    2. Mach' ich das mit dem Explorer?
    3. Mach' ich mir dafür ein Skript?
    4. oder was???
    Da ich 1. nicht mehr nachvollziehen konnte, 2. ich den eigentlich gar nicht benutze,
    mußte ich zu 3. übergehen und habe AutoIt benutzt :D
    (Mal ehrlich, da wär jetzt keiner drauf gekommen, oder?)
    Mit diesem kleinen Tool kann ich das ReadOnly-Bit der Dateien ändern, die Dateien
    ansehen, kleine Änderungen abspeichern(ihr werden schon sehen..)
    Hauptsächlich ging es jedoch um das Erproben von GUI-Techniken und da kam mir dieses
    Problem gerade recht..
    Es ist nicht allzu komfortabel, es sind keine Bildchen drin und keine SystemSounds.
    Eigentlich ist das Skript nur zum 'Mal-eben-nachsehen', aber ich hab wieder was
    gelernt(z.B. ComboBox..)
    Schauts euch einfach mal an..
    Gruß
    ytwinky

    Spoiler anzeigen
    C
    ;<AutoItScript>
    #NoTrayIcon  ;Ohne Icon im Tray, hängende Prozesse im ProcessViewer beenden
    ;+----------------------------------------------------------------------------+
    ;|    Header: Bestimmen der Übergabeparameter                                 |
    ;|    ( Alles Strings(!!!), bis auf ArgC )                                    |
    ;|    FontAnzeigeCheck: |Il1 sind Alt-0124, Großes i, Kleines L, Eins         |
    Const $Autor="Hosts.au3 ©2006 by ytwinky, MD";                                |
    ;|    EMail: PIII1kSystem-AutoIt3Forum@yahoo.de                               |
    ;|    AutoIt3-Version: 3.1.1.123(beta)                                        |
    ;|    Editor: SciTE 1.68, feste Schriftart                                    |
    ;|    Zweck : Schablone für den Anfang, nach Bedarf anpassen                  |
    ;|    Tab auf 2 setzen wg. Lesbarkeit                                         |
    ;+----------------------------------------------------------------------------+
    #include <GUIConstants.au3>
    #include <File.au3>
    ; == GUI generated with Koda ==
    Const $Hosts="Hosts", $LmHosts="LmHosts"
    Const $etc=@SystemDir &"\drivers\etc\" ; den Pfad zu den Dateien Hosts und LmHosts ggfs. anpassen..
    Const $Options=$Hosts &"|" &$LmHosts &"|networks|protocol|services", $stdCombo="Bitte wählen.."
    Dim $Visible[2]=[$GUI_HIDE, $GUI_SHOW], $ChkSts[2]=[$GUI_UNCHECKED, $GUI_CHECKED]
    Dim $DateiName, $s, $Editor
    $HostsForm = GUICreate($Hosts &" und "&$LmHosts &" kontrollieren", 626, 451, 192, 125)
    GUISetFont(10, 400, 0, "MS Sans Serif")
    GUICtrlCreateLabel($Hosts &" und "&$LmHosts, 0, 0, 621, 33, $SS_CENTER)
    GUICtrlSetFont(-1, 24, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0x000080)
    GUICtrlSetTip(-1, "©2006 by ytwinky, MD")
    $Auswahl = GUICtrlCreateCombo("Bitte wählen", 2, 40, 97, 24)
    GUICtrlSetData(-1, $Options)
    GUICtrlSetTip(-1, $stdCombo)
    $ChkRO = GUICtrlCreateCheckbox("ist ReadOnly", 104, 40, 97, 25)
    GUICtrlSetTip(-1, "gilt nicht für Bearbeitung")
    GUICtrlSetState(-1, $Visible[Selected()])
    $Info = GUICtrlCreateButton("Info", 359, 40, 120, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    $Speichern = GUICtrlCreateButton("Datei speichern", 216, 40, 120, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    GUICtrlSetState(-1, $Visible[Selected()])
    $Edit = GUICtrlCreateEdit("Hier kommt die gewählte Datei hin", 2, 67, 624, 385, -1, $WS_EX_CLIENTEDGE or $ES_OEMCONVERT)
    GUICtrlSetState(-1, $Visible[Selected()])
    $Quit = GUICtrlCreateButton("Quit", 504, 40, 120, 25)
    GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
    GUICtrlSetTip(-1, "na, was wohl..")
    ControlFocus("", "", $Auswahl)
    GUISetState(@SW_SHOW)
    ;$DateiName=RegRead("HKCR\.txt", "")
    ;$DateiName=RegRead("HKCR\" &$DateiName &"\shell\open\command", "")
    ;$Editor=StringMid($DateiName, 1, StringInstr($DateiName, Chr(34), 0, 2))
    ;~  MsgBox(4096, "Editor", )
    ;~    Exit
    While 1
    	Switch GUIGetMsg()
    		Case $GUI_EVENT_CLOSE, $Quit
    			ExitLoop
    		Case $Auswahl
    			$DateiName=$etc &GUICtrlRead($Auswahl)
    			GUICtrlSetState($ChkRO, $Visible[Selected()])
    			GUICtrlSetState($ChkRO, $ChkSts[StringInstr(FileGetAttrib($DateiName), "R")>0])
    			GUICtrlSetState($Edit, $Visible[Selected()])
    			GUICtrlSetState($Speichern, $Visible[Selected()])
    			DateiLaden($DateiName)
    		Case $ChkRO
    			FileSetAttrib($DateiName, StringMid("-+", (GUICtrlRead($ChkRO)=1)*1+1, 1) &"R")
    		Case $Info
    			$DateiName=$etc &GUICtrlRead($Auswahl)
    			If Not Selected() Then $DateiName="Erst Auswahl treffen.."
    			InputBox("Info", "Diese Datei ist zu finden unter:", $DateiName)
    		Case $Speichern
    			If StringInstr(FileGetAttrib($DateiName), "R")>0 Then
    				MsgBox(4096, "Ooops, Schreibschutz..", $Dateiname &@Lf &"ist ReadOnly.."&@Lf &"ReadOnlyDateien werden NICHT gespeichert!")
    			Else
    				DateiSpeichern($DateiName)
    			EndIf
    		Case Else
    			;-))
    	EndSwitch
    Wend
    Exit
    
    
    Func DateiLaden($DateiName)
    	Local $s="",	$fptr=FileOpen($DateiName, 0)
    	Do
    		$s &= FileReadLine($fptr) &@CrLf
    	Until @error = -1
    	FileClose($fptr)
    	GUICtrlSetData($Edit, $s)
    EndFunc
    
    
    Func DateiSpeichern($DateiName)
    	Local $fptr, $s=GUICtrlRead($Edit)
    	MsgBox(4096, "Speichern", $Dateiname &@Lf &"wird gespeichert.."&@Lf &$s)
    	$fptr=FileOpen($DateiName, 1)
    		FileWrite($fptr, $s)
    	FileClose($fptr)
    EndFunc
    
    
    Func Selected()
    	Local $What=GUICtrlRead($Auswahl)
    	Return StringInstr(StringLower($Options), StringLower($What))>0
    EndFunc
    
    
    ;</AutoItScript>
    Alles anzeigen
  • zwischenablage

    • ytwinky
    • 12. Mai 2006 um 19:56

    Dann ist das Ganze doch kein Problem mehr:

    Code
    $arrIrgendWas=StringSplit(ClipGet(), "|")

    sollte eigentlich klappen..
    Gruß
    ytwinky
    [Edit]
    Ooops, rabbit war schneller..

  • Spielchen

    • ytwinky
    • 12. Mai 2006 um 19:50
    Zitat

    Original von rabbitviel Spass damit

    Den hatte ich :D
    Nur gut, daß ich wußte, daß es einen HotKey gibt..
    Gruß
    ytwinky

  • Files lokalisieren und in Log schreiben

    • ytwinky
    • 12. Mai 2006 um 19:46

    Hi,
    ich habe die Forenseite gespeichert, das Skript rauskopiert und gestartet..
    ..und erhalte keine Ausgabe. Das ist eigentlich auch kein Wunder.
    Was ich damit aber sagen will, ist, daß ich auch keine Fehlemeldung erhalte!
    Nu komms du
    ytwinky

  • NetBEUI.au3 - Selbstmodifizierendes GUI

    • ytwinky
    • 12. Mai 2006 um 10:21

    Hi,
    da ist es mal wieder passiert: Der GeräteManager meldet Fehler
    (mit der Netzwerkkonfiguration stimmt etwas nicht, Einzelheiten erspar ich mir und euch :D )
    Jedenfalls mußte ich prüfen, ob die Dateien @WindowsDir &"\inf\NetNBF.Inf" bzw.
    @SystemDir &"\drivers\NBF.Sys" vorhanden sind. Bei einer einmaligen Sache verwende ich dazu
    kein Skript, dafür habe ich meine DateiManager..
    Das war jedoch ein wiederholter Fall und so überlegte ich mir mit Koda eine GUI-Lösung.
    Das Skript sollte erkennen:
    -ob die Dateien vorhanden sind(Meldung in einer Read/Only Checkbox)
    -ob im aktuellen Verzeichnis die nötigen Dateien vorhanden sind(Meldung in einer Read/Only Checkbox)
    -fehlen die Dateien, soll ein 'Durchsuchen'-Button eingeblendet werden
    -Der 'Kopieren'-Button soll ausgeblendet werden, wenn die Dateien vorhanden sind
    -Eine Statusmeldung in passender Farbe soll ausgegeben werden
    Ich liebe es, in den Array-Klammern die Indizes zu berechnen und habe davon reichlich Gebrauch
    gemacht.
    Da es bei mir um SystemDateien geht, hier im Forum aber eher um das 'Wie funktioniert das Skript?',
    habe ich die Const-Zeile mit den SystemVerzeichnissen auskommentiert und durch 'ungefährliche"
    Verzeichnisangaben ersetzt(wer mag, kann das natürlich ändern..).
    Wer dies Skript als solches nicht braucht, kann auf alle Fälle Erkenntnisse für die eigene
    GUI-Entwicklung daraus gewinnen(hoffe ich zumindest..)
    Gruß
    ytwinky

    Hier steht das Skript:

    Spoiler anzeigen
    C
    ;<AutoItScript>
    #NoTrayIcon
    ;+----------------------------------------------------------------------------+
    ;|    Header: Bestimmen der Übergabeparameter                                 |
    ;|    ( Alles Strings(!!!), bis auf ArgC )                                    |
    ;|    FontAnzeigeCheck: |Il1 sind Alt-0124, Großes i, Kleines L, Eins         |
    Const $Author="NetBEUI.au3 ©2006 by ytwinky, MD";                             |
    ;|   	EMail: piii1ksystem-autoit3forum@yahoo.de                             |
    ;|    (Tastenkombination: keine)                                              |
    ;|    AutoIt3-Version: 3.1.1.116(beta)                                        |
    ;|    Zweck : Schablone für den Anfang, nach Bedarf anpassen                  |
    ;|    Tab auf 2 setzen wg. Lesbarkeit                                         |
    ;+----------------------------------------------------------------------------+
    #include <GUIConstants.au3>
    ; == GUI generated with Koda ==
    Const $NBFSys="NBF.SYS", $NetNBFInf="NETNBF.INF"
    ;~ Const $SysVerz=@Systemdir &"\drivers\", $InfVerz=@WindowsDir &"\inf\"
    Dim $ChkSts[2]=[$GUI_UNCHECKED, $GUI_CHECKED], $DarfKopieren[2]=[$GUI_HIDE, $GUI_SHOW], $Beide
    Dim $Msg[2]=["Ooops, ist nicht okay", "Scheint okay zu sein"], $Farbe[2]=[0xD00000, 0x008000]
    Dim $SrchSysDta, $SrchInfDta
    $SysVerz=@ScriptDir &"\"
    $InfVerz=@ScriptDir &"\"
    $Form1 = GUICreate("Chk-NetBEUIFiles", 450, 183, 192, 125)
    GUICtrlCreateLabel("Chk-NetBEUIFiles.au3", 96, 0, 245, 25)
    GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0x000080)
    GUICtrlSetTip(-1, "©2006 by ytwinky, MD")
    $SysDir = GUICtrlCreateLabel($SysVerz &$NBFSys, 8, 80, 244, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $InfDir = GUICtrlCreateLabel($InfVerz &$NetNBFInf, 8, 112, 224, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $SrchSys = GUICtrlCreateButton("Durchsuchen", 288, 77, 89, 25)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $SrchInf = GUICtrlCreateButton("Durchsuchen", 288, 110, 89, 25)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    $Ergebnis=GUICtrlCreateLabel("", 155, 150, 200, 29)
    GUICtrlSetFont(-1, 16, 400, 0, "MS Sans Serif")
    GUICtrlSetColor(-1, 0xD00000)
    $Kopie = GUICtrlCreateButton("Kopieren", 8, 152, 113, 25)
    $SysChk = GUICtrlCreateCheckbox("", 255, 80, 17, 17, $WS_Disabled)
    $InfChk = GUICtrlCreateCheckbox("", 255, 112, 17, 17, $WS_Disabled)
    GUICtrlCreateLabel("vorhanden", 234, 64, 55, 17)
    GUICtrlCreateLabel("gefunden", 392, 64, 49, 17)
    $FndChkSys = GUICtrlCreateCheckbox("", 408, 80, 17, 17, $WS_Disabled)
    $FndChkInf = GUICtrlCreateCheckbox("", 408, 112, 17, 17, $WS_Disabled)
    $Ende = GUICtrlCreateButton("Ende", 368, 152, 75, 25)
    GUICtrlCreateLabel($NetNBFInf &" und " &$NBFSys &" auf ", 8, 40, 215, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUICtrlCreateLabel(@ComputerName, 216, 37, 140, 16, $SS_CENTER)
    GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif")
    GUICtrlCreateLabel("prüfen:", 368, 38, 44, 20)
    GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
    GUISetState(@SW_SHOW)
    GUICtrlSetState($SysChk, $ChkSts[FileExists(GUICtrlRead($SysDir))])
    GUICtrlSetState($InfChk, $ChkSts[FileExists(GUICtrlRead($InfDir))])
    GUICtrlSetState($FndChkSys, $ChkSts[FileExists(@ScriptDir &"\" &$NBFSys)])
    GUICtrlSetState($FndChkInf, $ChkSts[FileExists(@ScriptDir &"\" &$NetNBFInf)])
    $Beide=(FileExists(GUICtrlRead($SysDir))) And (FileExists(GUICtrlRead($InfDir)))
    GUICtrlSetState($Kopie, $DarfKopieren[Not $Beide])
    GUICtrlSetState($SrchInf, $DarfKopieren[Not FileExists(GUICtrlRead($InfDir))])
    GUICtrlSetState($SrchSys, $DarfKopieren[Not FileExists(GUICtrlRead($SysDir))])
    GUICtrlSetData($Ergebnis, $Msg[$Beide])
    GUICtrlSetColor($Ergebnis, $Farbe[$Beide])
    While 1
    	Switch GuiGetMsg()
    		Case $GUI_EVENT_CLOSE, $Ende
    			ExitLoop
    		Case $SrchSys
    			$SrchSysDta=FileOpenDialog($NBFSys &" suchen..", "Desktop", "SystemDateien(*.Sys)", 1)
    			If StringUpper(StringRight($SrchSysDta, StringLen($NBFSys)))=StringUpper($NBFSys) Then
    				GUICtrlSetState($FndChkSys, $ChkSts[FileExists(@ScriptDir &"\" &$NBFSys)])
    				GUICtrlSetState($FndChkSys, $ChkSts[FileExists($SrchSysDta)])
    				GUICtrlSetState($SrchSys, $DarfKopieren[Not FileExists($SrchSysDta)])
    			EndIf
    		Case $SrchInf
    			$SrchInfDta=FileOpenDialog($NetNBFInf &" suchen..", "Desktop", "InstallationsDateien(*.Inf)", 1)
    			If StringUpper(StringRight($SrchInfDta, StringLen($NetNBFInf)))=StringUpper($NetNBFInf) Then
    				GUICtrlSetState($FndChkInf, $ChkSts[FileExists($SrchInfDta)])
    				GUICtrlSetState($SrchInf, $DarfKopieren[Not FileExists($SrchInfDta)])
    			EndIf
    		Case $Kopie
    			If FileExists($SrchSysDta) And Not FileExists(GUICtrlRead($SysDir)) Then FileCopy($SrchSysDta, GUICtrlRead($SysDir))
    			If FileExists($SrchInfDta) And Not FileExists(GUICtrlRead($InfDir)) Then FileCopy($SrchInfDta, GUICtrlRead($InfDir))
    			If (FileExists(GUICtrlRead($SysDir))) And (FileExists(GUICtrlRead($InfDir))) Then
    				$Beide=(FileExists(GUICtrlRead($SysDir))=1) And (FileExists(GUICtrlRead($InfDir))=1)
    				GUICtrlSetData($Ergebnis, $Msg[$Beide])
    				GUICtrlSetColor($Ergebnis, $Farbe[$Beide])
    				GUICtrlSetState($InfChk, $ChkSts[FileExists(GUICtrlRead($InfDir))])
    				GUICtrlSetState($SysChk, $ChkSts[FileExists(GUICtrlRead($SysDir))])
    			EndIf
    			GUICtrlSetState($Kopie, $DarfKopieren[Not $Beide])
    		Case Else
    			;
    	EndSwitch
    Wend
    Exit
    ;</AutoItScript>
    Alles anzeigen
  • starten im netzwerk

    • ytwinky
    • 11. Mai 2006 um 21:37

    In meinem (kleinen) Lan läuft auf allen Clients ein VNC-Server.
    Von meinem Hauptrechner aus kann ich jederzeit auf einem Rechner eine Datei starten, die dann dort läuft, wo sie gestartet wird.
    Ich nutze mein LAN alleine und habe keine Bedenken dabei..
    Wenn an meinen Clients auch noch Benutzer säßen, würde ich sie per 'Net Send' oder so
    davon unterrichten, daß da was gestartet wird, ich finde, daß gehört sich so..
    Auf einem anderen Rechner Dateien dort starten, wo sie sind und sie erst einmal dorthin zu bekommen,
    'hört' sich in meinen Augen komisch an :D
    Gruß
    ytwinky

  • System32 Verzeichniss unter XP

    • ytwinky
    • 10. Mai 2006 um 18:54

    Kennst du dich mit Systemrichtlinien aus?
    [Edit]
    So, jetzt habe ich mal ein wenig gebuddelt:
    GPEdit.Msc
    Computerkonfiguration
    Windows-Einstellungen
    Sicherheitseinstellungen
    Lokale Richtlinien
    Zuweisen von Benutzerrechten
    ->Richtlinie Einsetzen als Teil des Betriebssystems -> richtigen Benutzer/Benutzergruppe eintragen


    Es gibt verschiedenen Verzeichnisse, in denen Windows Sicherungskopien von Systemdateien speichert..
    Wird also in ..\System32\.. eine Datei geändert, holt sich Windows eine unveränderte Version aus dem Sicherungsordner
    Einer müßte ..\system32\dllcache\ heißen und selbstverständlich auch die ServicePack-Ordner
    Auf diesem Weg habe ich bei mir NotePad als SystemEditor ersetzt
    (ConTEXT macht das automatisch, aber ich bin nicht mehr sicher, ob auch richtig :D )
    Ich hoffe, das hilft dir ein wenig..
    Gruß
    ytwinky

  • Probleme mit FreePDF bei INstallscript

    • ytwinky
    • 10. Mai 2006 um 13:06

    Das es bei dir ja sowieso nicht läuft, starte einfach einen anderen Versuch!
    ..und installiere gleich FreePDF XP3.05(ist afaik die neueste Version)
    Gruß
    ytwinky

  • Checker

    • ytwinky
    • 9. Mai 2006 um 20:27

    Hi Schwester,
    hier mal eine Version zum rauskopieren, die beim Klick auf 'x' (oben rechts)
    endet

    Code
    #include <GUIConstants.au3>
    
    
    GUICreate("My GUI Button") ; will create a dialog box that when displayed is centered
    
    
    Opt("GUICoordMode",2)
    GUICtrlCreateButton ("OK", 10, 30, 50)
    GUICtrlCreateButton ( "Cancel", 0, -1)
    
    
    GUISetState ()
    Do
    	$msg=GUIGetMsg()
    Until $msg=$GUI_EVENT_CLOSE
    Alles anzeigen

    [Edit]
    Warum das 'Do' nicht gehighlightet wird, weiß ich nicht.
    Es gehört afaik zum Befehlssatz von AutoIt3 :rofl:
    Gruß
    ytwinky

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™