Netzlaufwerk Programm

  • Hallo Gemeinde :)

    Ich bin noch ziemlich frisch in der Scripting Scene und hänge gerade an einem Programm das dass verbinden von Netzlaufwerken erleichtern soll.

    Der Benutzer soll in das Feld den Pfad für die Freigaben Eingeben und mit der Bestätigung eines Buttons (bei mir ist das "OK") soll dann das Netzlaufwerk mit dem Eingegebenen Pfad erstellt werden. Mein Problem ist nun das ich nicht weis, welchen Befehl/Parameter etc. ich eingeben muss, damit es erstellt wird.

    Hier wäre mal der CODE:

    Danke im Vorraus für die Hilfe

    Einmal editiert, zuletzt von neo (6. Mai 2006 um 03:09)

    • Offizieller Beitrag

    Hallo und :wilkommen: im Forum!

    Hier habe ich ein Skript für dich geschrieben was perfekt und compfortabel laufen sollt:

  • Hi,

    ich habe auch mal so ein Skript geschrieben, hier der code:

    Unter dem Tab "Netzwerk" kannst Du Pfad + Login angeben und anschließend das Mapping durchführen. Unter dem Tab" shares kannst Du die Freigabe wieder aufheben.

  • Danke erstmal für eure Antworten! Ihr habt mir schon weitergeholfen. @jonk - dein Script kann ich leider nicht ausführen...

    Jetzt werd ich noch einen Automatischen Registry Eintrag reinhauen, so dass er mir das Netzlaufwerk beim starten automatisch verbindet.

    Ausserdem werd ich noch Feld für den Domainnamen, Benutzername und Passwort erstellen... da werd ich sicher noch hilfe benötigen :lol:

  • was kam denn für eine Fehlermeldung? Ich habe es bei mir nämlich noch getestet. Versuche es mal mit der Beta-Version von Autoit, das hatte ich vergessen zu schreiben ....

  • Habs mit der Beta gestartet!

    Das ist der Fehler:


  • hmm,

    also die GuiListView.au3 ist bei mir im Ordner "Beta\includes" und Die Funktionen die da als undefiniert angezeigt werden sind auch in der UDF-Hilfe enthalten.

    Bist Du Dir sicher das Du die Beta zum ausführen genommen hast ?( . Welche Betaversion ists denn?

    EDIT:
    ich habe gerade mal in der History nachgeguckt, die Funktionen gibt es erst ab der v3.1.1.111 (beta).

    Einmal editiert, zuletzt von jonk (6. Mai 2006 um 19:48)

  • Doch bei meinem Script steck ich wieder mal :rolleyes:


    Also: Der Benutzer soll bestimmen können wo der Freigabepfad ist, den Netzlaufwerknamen, den Domainnamen und dazugehörig den Bentuzernamen und das Passwort. Wenn dann auf erstellen gedrückt wird, soll das Netzlaufwerk erstellt werden. Ist nun keine Domäne, Benutzer, PW eingetragen muss er das Netzlaufwerk halt ohne die Sachen anlegen..

    Hier der code:

  • also ich bekomme hier den Fehler

    Y:\x\z\test\netmap.au3(40,23) : ERROR: LwVerbinden() previously called with 5 arg(s). Max = 1.
    Func LwVerbinden($map)

    Das liegt daran das Du die Funktion mit 5 Parametern aufrufst, obwohl laut Definition nur einer erlaubt ist:

    Code
    LwVerbinden(GUICtrlRead($pfad), GUICtrlRead($lwname), GUICtrlRead($domain), GUICtrlRead($benutzer),  GUICtrlRead($pwd))

    ... oder wo liegt Dein Problem? ?(

  • so, ich habe Dein Skipt etwas angepasst, denn die Funktion DriveMapAdd hat keinen Parameter "Domain" daher kannst Du ihn auch nicht einsetzen.

    Einmal editiert, zuletzt von jonk (6. Mai 2006 um 20:27)

  • GUICtrlRead($domain)&""&GUICtrlRead($benutzer),

    geht das auch so??? (also mit dem Blank zwischendrin)

    bisher hab ich mich immer genau an die Hilfe gehalten und
    Domain\benutzername übergeben.

    mal so als Anregung:

    Mappe mit meiner Anwendung div. Laufwerke (automatisch von einem Autoit-Programm aus) damit mir da keiner Passworte ständig eingeben muß, hab ich mir ein
    pwinput.exe gebaut, daß das Paßwort in einer username.pw verschlüsselt ablegt (den Schlüssel bau ich mir aus der IP-Nummer der Kiste (Punkte entfernt) und teile noch durch ne andere Nummer, die ich aus einer Ini-Auslesen kann.

    So hab ich besser unter Kontrolle, was da irgendwelche User treiben, kann das mit einem AT-Kommande (also SYSTEM-User) laufen lassen und muß auch nicht jeden User in der Domäne einrichten.

    Das kopieren der username.pw von einer auf die andere Kiste bringt für den "etwas fortgeschrittenen Möchtegernhacker" natürlich nichts, da beim entschlüsseln auf der Kiste ja wieder die IP-Nummer des Rechners verwendet wird.

    Frage von mir:
    mein Tool funktioniert schon soweit im Beta-Betrieb bei uns, das ganze soll jetzt zu einem Kommuniktionsserver ausgebaut werden, der ständig (alle 10 Sekunden Funktion A und um z.B. 09:30, 10:30 .. Uhr Funktion B ausführen soll.

    Hat da einer schon praktische Erfahrungen mit sowas gesammelt?????

    Will mir noch ein "dienstüberwachungskommando" bauen, das ich mit AT alle 30 Minuten laufen lasse, daß dann prüft:
    läuft mein Kommunikationsserver als EXE im Hauptspeicher und gibt es eine Protokolldatei die neuer als 30 Minuten ist.

    Wäre für jeden Tip dankbar.

    Gruss

    German

  • Hi,

    Code
    GUICtrlRead($domain)&""&GUICtrlRead($benutzer),


    Du kannst auch einfach nur

    Code
    GUICtrlRead($domain) & GUICtrlRead($benutzer)

    verweden. Wenn das Login dann immernoch das Format domain/user hat. Ohne "/" habe ich es
    noch nicht getestet.


    Zitat

    mein Tool funktioniert schon soweit im Beta-Betrieb bei uns, das ganze soll jetzt zu einem Kommuniktionsserver ausgebaut werden, der ständig (alle 10 Sekunden Funktion A und um z.B. 09:30, 10:30 .. Uhr Funktion B ausführen soll.

    also sowas wie einen Task-Scheduler in AutoIt? Sowas habe ich noch nicht gemacht, aber ich glaube im englischen Forum gab es mal sowas. Ich lasse bei uns nur autoit-skripte per Taskplaner bzw. von ncron ausführen.

    Zitat

    Will mir noch ein "dienstüberwachungskommando" bauen, das ich mit AT alle 30 Minuten laufen lasse, daß dann prüft:
    läuft mein Kommunikationsserver als EXE im Hauptspeicher und gibt es eine Protokolldatei die neuer als 30 Minuten ist.

    Ist beides kein Problem. Mit den Funktionen
    ProcessExists ( "process" ),
    FileExists ( "path" ) und
    FileGetTime ( "filename" [, option [, format]] )
    sollte das machbar sein.

    Ich setze sollche Skripte für User gar nicht ein, da alle notwendigen Laufwerke bei der Anmeldung schon gemappt werden. Ich setzte mein Skript hauptsächlich ein, um bei Anwendern mal eben lokal oder im Netz etwas mit Adminrechten machen zu können.

    2 Mal editiert, zuletzt von jonk (6. Mai 2006 um 22:04)