Jump to content

Logon-Script für Tool, dass nur einmal laufen soll


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo und guten Abend.

 

Habe da mal ne "Aufgabe" an die Scripter und Programmer... ;)

 

Ich möchte in einer W2K3-AD-Umgebung mit 2000 und XP Clients ein Tool (ausführbare Datei, EXE) bei der Anmeldung der User laufen lassen. Allerdings soll dieses Tool genau einmal laufen. Also der User meldet sich an, das Tool läuft und gut ist. Meldet der User sich am nächsten Tag an, soll das Tool nicht mehr laufen. Wenn ich nun das Startscript für einen Tag laufen lasse, fallen natürlich viele User (Kranke und Urlauber) nicht in die "Scriptphase", so dass diese dann nicht in den Genuss der automatischen Anpassung durch das Tool kommen.

 

Hintergrund ist eine Exchange-Migration. Die User sollen nach der Migration ein automatisch erzeugtes Standard-Mail-Profil bekommen. Ich habe auf der Suche nach geeigneten Tools das RichProfile entdeckt. Dies ist für meine Belange vollkommen ausreichend und funktioniert auch tadellos, sogar von Outlook 2000 bis zu Outlook 2007 werden mit RichProfile die Standard-Outlook-Profile erzeugt. Nun möchte ich natürlich nicht, das jeden Tag die User ein neues Standard-Outlook-Profil bekommen. Daher der Gedanke, dass Tool pro User und Anmeldung nur 1x laufen zu lassen. Allerdings habe ich keine Ahnung, ob und wie man das bewerkstelligen kann.

Evtl. hat hie ja jemand eine Idee, wie das Vorhaben zu realisieren ist...

 

Besten Dank im Vorraus

 

 

Nachtrag:

Je länger ich drüber nachdenke, könnte es doch wie folgt laufen:

In dem Startscript (*.bat) wird nach Aufruf des Tools die Variable %username% in eine Textdatei auf einem Net-Share geschrieben. Weiterhin wird vor dem Schritt "Tool ausführen" geprüft, ob in dieser Textdatei der %username% vorhanden ist. Ist er vorhanden -> "go to end" ;) Ist er nicht vorhanden, führe Tool aus. Das müsste doch funktionieren oder?

 

THX

Link zu diesem Kommentar

Moin,

 

naja, die Aufgabe ist ja nicht wirklich schwer: Beim ersten Aufruf des Logonskripts schreibst du eine Flagdatei ein eine gut erreichbare Stelle. Wenn diese Flagdatei schon verhanden ist, führt das Logonskript die EXE-Datei nicht aus.

 

Beispiel:

if exist %userprofile%\executed.txt goto weiter
\\server\pfad\exe.exe
echo Ausgeführt>%userprofile%\executed.txt
:weiter
echo Hier gehts weiter

 

Gruß, Nils

Link zu diesem Kommentar

Das deckt sich irgendwie mit meinen Gedanken... ;)

 

THX dafür. Werde es gleich mal ausprobieren...

 

So noch mal drüber nach gedacht! (man man man, das ist aber auch schwer an so einem Tach zu so einer Stunde...)

Alles in eine Datei zu schreiben, wäre wohl so einfach nicht möglich oder? Mal angenommen die User melden sich alle zur gleichen Zeit an, dann gäbe es wohl "txt-Salat"...

Zur Erklärung: An welcher Stelle in dem "Code" wird die Datei mit dem %username% angelegt? Hätte vermutet, dort steht dann so etwas wie "write" oder "putin"...ähm "put in" ;) oder "input" oder so was.

 

Sooo, ein paar Gedanken und Rotweingläsle später, denke ich mal, der Username wird per ">%username%\user.txt" in die TXT eingetragen. Und das funktioniert auch bei gleichzeitiger Anmeldung von 20 oder 50 Usern?

Link zu diesem Kommentar

Hallo Sunny

 

So in etwa hatte ich mir das vorgestellt. Es ist auch irgendwie übersichtlicher, wenn alle Text-Files an einem Ort liegen. Bin gerade dabei, das Ganze mal durch zu testen...

 

Feedback folgt dann etwas später, aber eigentlich heute noch... ;)

So, da bin ich wieder.

 

Läuft ja echt gut. Also besten Dank noch mal. Mein Script ist nun nach "Sunny61"-Art "gebaut". Das Beste, wenn ein User Probleme hat, einfach die TXT löschen, neu anmelden lassen und das Script läuft noch mal.

 

THX@all

Link zu diesem Kommentar
So in etwa hatte ich mir das vorgestellt. Es ist auch irgendwie übersichtlicher, wenn alle Text-Files an einem Ort liegen.

 

das ist u.U. nützlich, beachte aber: Wenn derselbe Nutzer sich bei diesem Verfahren an verschiedenen Rechnern anmeldet, wird das Programm trotzdem nur einmal am ersten Rechner ausgeführt. Für das Outlook-Profil dürfte das also evtl. nicht so günstig sein.

 

Gruß, Nils

Link zu diesem Kommentar

@Nils

 

Danke für den Hinweis. Habe ich auch schon drüber nach gedacht. Allerdings kommt dies eher selten vor. Bin gerade dabei, in die Textdatei, die den Namen des User enthält, den Rechnernamen mit eintragen zu lassen. Dann weiß man, für welchen User und auf welchem Rechner das Toll schon gelaufen ist. Und meldet der User sich tatsächlich an einem anderen Rechner an, bekommt er sein Standard-Outlookprofil zugewiesen.

 

 

 

 

Sooo. Möglicherweise funktioniert das Scipt mit folgendem Code:

 

if exist \\server\share\%computername%\%username%.txt goto end
if exist \\server\share\%username%.txt goto EXE
:EXE
\\server\share\richprofile.exe
echo %computername%>\\server\share\%username%.txt

:end
echo Erledigt

 

Dabei wird zusätzlich der Rechnername in die Textdatei geschrieben und geprüft, ob dieser evtl. vorhanden ist. Nicht ganz sicher bin ich mir allerdings an folgender Stelle:

 

if exist \\server\share\%computername%\%username%.txt goto end

 

Wird hier tasächlich der Rechnername in der %username%.txt geprüft???

 

Kann es leider erst heute Abend prüfen, da ich dann erst wieder an meiner Testumgebung sitze...

Link zu diesem Kommentar

Sooo. Möglicherweise funktioniert das Scipt mit folgendem Code:

 

if exist \\server\share\%computername%\%username%.txt goto end
if exist \\server\share\%username%.txt goto EXE
:EXE
\\server\share\richprofile.exe
echo %computername%>\\server\share\%username%.txt

:end
echo Erledigt

 

 

IMHO funktioniert das so nicht, da nach dem Computernamen ein Backslash kommt, und das bedeutet ein Ordner mit %COMPUTERNAME% wird gesucht. Kann es aber auch grade nicht prüfen.

 

Dabei wird zusätzlich der Rechnername in die Textdatei geschrieben und geprüft, ob dieser evtl. vorhanden ist. Nicht ganz sicher bin ich mir allerdings an folgender Stelle:

 

if exist \\server\share\%computername%\%username%.txt goto end

 

Wird hier tasächlich der Rechnername in der %username%.txt geprüft???

 

Kann es leider erst heute Abend prüfen, da ich dann erst wieder an meiner Testumgebung sitze...

 

Lass den Backslash raus, dann sollte es funktionieren.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...