Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Kommentar vom Moderator Biber am 11.11.2010 um 15:54:42 Uhr
[Bereits gelösten] Beitrag verschoben von "Windows Server" nach "Bätches From Hell".
GELÖST

Login Script für Geburtstage

Frage Entwicklung Batch & Shell

Mitglied: Ferengie

Ferengie (Level 1) - Jetzt verbinden

04.11.2010, aktualisiert 11.11.2010, 6297 Aufrufe, 10 Kommentare

Hallo Gemeinde,

ich benötige Hilfe bei der Erstellung eines Login Scripts. Diese Script soll auslesen, welches Datum ist und wenn es ein bestimmtes Datum ist (z.B.: 30. November), soll der IE eine bestimmte html Datei öffnen.

Zur Erklärung:
Wir haben vor kurzem den Wechsel von Novell NetWare auf Microsoft Server vollzogen. Bei Novell hatte ich so ein Login Script erstellt. In diesem Script war jeder Geburtstag hinterlegt.
Wenn also Herr XY Geburtstag hatte, wurde nach der Anmeldung bei allen Usern (und auch bei Herrn XY) automatisch eine vorbereitete HTML-Geburtstags-Seite im Internet-Explorer geöffnet.

Nun weiß ich aber die Befehle nicht, die man bei einem Login Script unter Windows benutzt.

Könnt ihr mir helfen, da hier jetzt alle diese Erinnerung vermissen.

Hier mal das Script unter Novell:

IF DAY="06" AND MONTH="10" THEN
WRITE "Heute ist Geburtstag von Herr XY!"
@ C:\Programme\Internet Explorer\iexplore.exe R:\Bilderarchiv\Internet\Birthday\Herr_XY.html
END

Unser jetziges Login Script ist ein VBS Script.
Mitglied: cewiethemaster
04.11.2010 um 12:29 Uhr
Hallo das ganze liese sich als Batch_Datei einbinden.

der Code wäre

01.
@ echo of 
02.
if DATE == 01.02.1990 goto :day1 
03.
if DATE == 02.02.1990 goto :day2 
04.
if DATE == 03.02.1990 goto :day3 
05.
if DATE == 04.02.1990 goto :day4 
06.
goto :exit 
07.
 
08.
:day1 
09.
echo heute hat Herr XY geburtstag 
10.
start C:\Programme\Internet Explorer\iexplore.exe R:\Bilderarchiv\Internet\Birthday\Herr_XY.html 
11.
goto :exit 
12.
 
13.
:day2 
14.
echo heute hat Herr XYZ geburtstag 
15.
start C:\Programme\Internet Explorer\iexplore.exe R:\Bilderarchiv\Internet\Birthday\Herr_XYZ.html 
16.
goto :exit 
17.
 
18.
:exit 
19.
exit 
20.
 
Bei
if DATE == 04.02.1990 goto :day4
musst du darunter immer ergänzen (:day5, :Day6 usw)

bei
:day2
echo heute hat Herr XYZ geburtstag
start C:\Programme\Internet Explorer\iexplore.exe R:\Bilderarchiv\Internet\Birthday\Herr_XYZ.html
goto :exit

musst du jeweils das :dayXX und das Start anpassen
(richtige Nummer zum Datum und HTML-File)

Das Script speicherst du als LOGON.BAT ab, und legst du auf dem Server ab.
Dann noch ne Verknüpfung in den Autostart-Ordner bei den Clients und e-voila
Bitte warten ..
Mitglied: 60730
04.11.2010 um 12:31 Uhr
Moin,

wenn du von Novell kommst - schau dir mal Kixtart an.
Das ist in meinen Augen zum Thema Loginscript schneller, schöner als VBS.

btw: dein Script kann so nicht funktionieren - da fehlen zwei Gänse incl. deren Füßchen

01.
if ("@mdayno.@month"="4.November") 
02.
 ? "wir begrüßen Otto yxz zu seinem persönlichen Wiegenfest" 
03.
SHELL "%programfiles%\Internet Explorer\iexplore.exe" "R:\Bilderarchiv\Internet\Birthday\Herr_XY.html" 
04.
endif
Natürlich muß das dann so spät laufen, dass R bereits gemappt ist

In cmd sähe das so aus:

01.
if "%date:~-10,2%.%date:~-7,2%"=="04.11" ( 
02.
         echo "Heute ist Geburtstag von Herrn XY!" 
03.
         call "%programfiles%\Internet Explorer\iexplore.exe" "R:\Bilderarchiv\Internet\Birthday\Herr_XY.html" 
04.
)
Gruß

edit
@ cewie auch du hast seine fehlenden Gänse übernommen
@ beide: Anrede bei den herrlichern Herren immer Herrn
;-] mädelz - schaut mal in das kleine Loch zwischen Indernet und Ex...
Bitte warten ..
Mitglied: gemini
04.11.2010 um 12:32 Uhr
Hallo Ferengie,
da wir sowas nicht einsetzen, habe ich nur mal schnell was zusammengezimmert (und natürlich nicht getestet).

Da ihr anscheinend die Daten im Script pflegt sollte es so funktionieren:
Was es tut: Wenn Tag und Monat von heute sind, öffnet sich ein Popup, das sich nach 10 Sekunden selbstständig wieder schließt, gleichzeitig wird die entspr. HTML-Datei im IE geöffnet.
01.
If DatePart("d", Date) = "6" And DatePart("m", Date) = "10" Then 
02.
	Set WshShell = WScript.CreateObject("WScript.Shell") 
03.
	WshShell.Popup(Herzlichen Glückwunsch zum Geburtstag Herr XY", 10, "Geburtstag von Herrn XY", 1) 
04.
	WshShell.Run(C:\Programme\Internet Explorer\iexplore.exe R:\Bilderarchiv\Internet\Birthday\Herr_XY.html) 
05.
End If
Ein Vorschlag:
Die Geburtstage im ActiveDirectory pflegen (mangels Birthday-Feld könnte man dafür das extensionAttribute1 verwenden) hätte den Vorteil, dass alle Benutzer nur an einem Ort gepflegt werden müssen und mit lediglich einem Scriptblock abgedeckt sind.
In dem Birthday-Verzeichnis müssten dann trotzdem HTML-Dateien mit den Anmeldenamen des Benutzers liegen. Sebstverständlich könnten die HTML-Dateien auch zur Laufzeit erzeugt werden.
Was es tut: Wenn das extensionAttribute1 NICHT leer ist und der zwichen heute und dem extensionAttribute1 0 Tage Unterschied sind wird der Pfad zur HTML-Datei mit dem Anmeldenamen des Benutzers zusammengestellt und maximiert im IE geöffnet.
01.
Set objSysInfo = CreateObject("ADSystemInfo") 
02.
Set objUser = GetObject("LDAP://" & objSysInfo.UserName) 
03.
Set WshShell = WScript.CreateObject("WScript.Shell") 
04.
 
05.
If Not objUser.extensionAttribute1 = "" Then 
06.
	If DateDiff("d", Date, objUser.extensionAttribute1) = 0 Then 
07.
		strPath = "R:\Bilderarchiv\Internet\Birthday\" & objUser.sAMAccountName & ".html" 
08.
		WshShell.Run(C:\Programme\Internet Explorer\iexplore.exe strPath, 3, FALSE) 
09.
	End If 
10.
End If
Ist wie schon gesagt ungetestet, ohne Fehlerbehandlung und daher als Skizze zu verstehen.

Gruß,
gemini
Bitte warten ..
Mitglied: MrTrebron
04.11.2010 um 12:36 Uhr
Hi Ferengie

01.
If Month(Date) = 11 AND Day(Date) = 4 Then 
02.
MsgBox("Heute hat Herr xyz Geburtstag!") 
03.
Set WshShell = WScript.CreateObject("WScript.Shell") 
04.
WshShell.Run "iexplore.exe C:\Temp\happy_birthday_rocker_xxl.jpg" 
05.
End If
Gruß
Norbert
Bitte warten ..
Mitglied: Ferengie
04.11.2010 um 12:46 Uhr
Vielen, Vielen Dank.

Mit so vielen Lösungsvorschlägen habe ich nicht gerechnet.

Ich habe mir überlegt, ob ich vielleicht eine "Birtday.ini" anlege und in diese jeden Geburtstag eintrage.
Zum pflegen der Daten übersichtlicher.

Aber nochmals vielen, vielen Dank.

Super Board!
Bitte warten ..
Mitglied: 60730
04.11.2010 um 13:15 Uhr
Salü,

Ich habe mir überlegt, ob ich vielleicht eine "Birtday.ini" anlege und in diese jeden Geburtstag eintrage.

gute Idee...

01.
for /f "tokens=1-3 delims=," %%a in ('findstr "%date:~-10,2%.%date:~-7,2%" "laufwerk\pfad\birthday.ini"') do ( 
02.
	echo Heute hat %%b Wiegenfest 
03.
	call "%programfiles%\Internet Explorer\iexplore.exe" "%%c" 
04.
)
und die burzeltag.ini sähe so aus:
01.
04.11,Franz.Branntwein,R:\Bilderarchiv\Internet\Birthday\Herr_Branntwein.html
Gruß
und denk dran - die meisten haben deinen Aufruf des IE nur übernommen, ohne "" funktioniert der aber nicht.

Gruß
Bitte warten ..
Mitglied: Ferengie
11.11.2010 um 12:00 Uhr
Hallo - wieder ich.

Habe jetzt folgende Lösung direkt im Login Script umgesetzt:
If Month(Date) = 10 AND Day(Date) = 6 Then
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "iexplore.exe R:\Ordner\Herr_X.Y.html"
End If


If Month(Date) = 10 AND Day(Date) = 6 Then
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "iexplore.exe R:\Ordner\Frau_X.Y.html"
End If

u.s.w.
Das funktioniert wunderbar und ich möchte mich nochmal bedanken.
Heute war auch der erste Probelauf, der ohne Probleme verlief.

Nun kam auch gleich die nächste Frage von einigen Usern:
"Was ist eigentlich, wenn jemand am Samstag oder Sonntag Geburtstag hat? Kann man das nicht so einstellen, dass am nächsten Montag die Website erscheint?"

Das überfordert mich jetzt ein wenig, da ich mit VBS eigentlich noch nicht viel Erfahrung habe.
Habt ihr vielleicht eine Lösung? Die Leute sind nie mit etwas zufrieden.

Vielen Dank!
Bitte warten ..
Mitglied: 60730
11.11.2010 um 12:45 Uhr
Moin,

naja das wird aber in meinen Augen kompliziert..

Sinngemäß müßte das so laufen:
  • Wenn Heute Montag ist, wer könnte heute vor einem oder zwei Tagen Geburtstag gehabt haben.

Und da sehe ich dein Konzept, wo jeder Geburtstag ein Block im Script ist am Ende (meines Lateins)

Ich würde dann wohl eher mit einem festen Script arbeiten wollen und die "Namen","Geburtstage","Webseiten" wären in einer eigenen csv Datei.
edit, das hab ich ja schon früher gedacht & geschrieben

Das nur mal vorab. evtl. fällt einem ja noch was anderes oder mir eine mögliche Stolperfalle ein....

Aber dazu solltest du diesen Beitrag dahin verschieben, wo er hingehört - in Entwicklung Batches 4 Hell


Obwohl, der Pistazienman war ja schon da und hat den Haken drangeklebt.....

Gruß
Bitte warten ..
Mitglied: Redmen
09.02.2011 um 10:17 Uhr
Hallo Leute, ich bin neu hier und hab eine Frage betr. Login mit Geburtstag.

Wir haben hier ein Script, dass aus einer Datei der Name, und Geburtsdatum aus dem File "birthday.flag" ausliesst:

Name Vorname,2011/06/14
Name Vorname,2011/09/21
Name Vorname,2011/03/31
usw...


Nun das Script:

01.
;---------------------------------------------------------------------------------------- 
02.
; Birthday Routine 
03.
;---------------------------------------------------------------------------------------- 
04.
:bday 
05.
  At (6,8) "Check for Birthday ..." 
06.
 
07.
;Variablen 
08.
$to=' -to itreport@@firma.ch,hrm2@@firma.ch' 
09.
$f=' -f itreport@@firma.ch' 
10.
$msg='"Geburtstag Batch - Erfolgreich ausgeführt bei @FULLNAME !"' 
11.
$msg2='"Ausgeführt auf: @wksta"' 
12.
$server=' -server blabla06' 
13.
 
14.
;Name auslesen 
15.
$vorname=split(join(split(@FULLNAME,''),''),' ')[1] 
16.
$nachname=split(join(split(@FULLNAME,''),''),' ')[0] 
17.
$jahr=split(join(split(@Date,''),''),'/')[0] 
18.
$bdayflag = "%USERPROFILE%\flags\birthday.flag" 
19.
 
20.
;Such String generieren 
21.
$create_bday = $vorname," ", $nachname,",",@DATE 
22.
$bday = JOIN($create_bday,"") 
23.
 
24.
SHELL 'C:\WINDOWS\System32\CMD.EXE /C find "$bday" \\blabla\spezielletage$\bday\bday.txt > nul' 
25.
If not @ERROR  
26.
Goto bday_start 
27.
Else 
28.
Goto bday_fehler 
29.
 
30.
:bday_start 
31.
	If exist ("$bdayflag")= 0 
32.
	Goto Powerpoint	 
33.
	Else  
34.
		open(2,"$bdayflag",0) 
35.
		$gespeichertesJahr = ReadLine(2) 
36.
		Close(2) 
37.
	EndIf 
38.
 
39.
		If $gespeichertesJahr <> $jahr 
40.
			Del $bdayflag 
41.
:PowerPoint 
42.
			SHELL '"%programfiles%\Microsoft Office\Office14\POWERPNT.EXE" /S "O:\Wichtige Infos_Dokumentation_Präsentation\Betrieb\Frei- und Geburtstage\Aktuell\bday\bday.ppt"' 
43.
			If exist ("$bdayflag")= 0 
44.
			open(2,"$bdayflag",5) 
45.
			$x = WriteLine(2,$jahr) 
46.
			Close(2) 
47.
			shell "%logonserver%\NETLOGON\bday\blat\blat - $to $f -subject $msg -body $msg2 $server -q" 
48.
At (6,65) "[Done]" 
49.
 
50.
Endif 
51.
Return 
52.
 
53.
:bday_fehler 
54.
At (6,52) "[no birthday today]" 
55.
Return 
56.
 
Also, wie ihr sieht, löst es eine Powerpoint Funktion aus beim Login vom betr. Geburtstagskind. Das funktioniert auch. Jetzt sollte das Script innert 7 Tage das Script weiterhin auslösen (@Date +7Days oder ähnlich) wenn z.b. der User sich erst 2 Tage nach seinem Geburtsag anmeldet.
Habt ihr mir da eine Lösung?

Danke im Vorraus!
Bitte warten ..
Mitglied: 60730
09.02.2011 um 10:47 Uhr
moin und willkommen,

mach dir selber eine Freude und stelle dir Frage in einem neuen eigenen Fred - am liebsten unter Kixtart und wenn du magst, dann editierst du deine Frage hier sinngemäß in - eine andere Baustelle [link linkbezeichnung].

Das Hier finden nur diejenigen, die hier schon mal waren oder durch eine Suchmaschine hierhin geleitet wurden.
Außerdem ist der Pistaziengrüne Haken schon drangebabscht.

Gruß & vielen dank für die code tags
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung!

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Windows Server
Windows 10 und Windows SSB 2008 - Login Script greift nicht (21)

Frage von heisenberg4 zum Thema Windows Server ...

VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

Windows 10
Nonstop Login im Sperrbildschirm (4)

Frage von TiCar zum Thema Windows 10 ...

Batch & Shell
Script zum Auflösen einer Ordnerstruktur und zurück gesucht (12)

Frage von websolutions zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (15)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...