Verzeichnis mit gültigen,aktuellen Schreibrechte finden
Hallo zusammen,
ich habe mir gerade überlegt, wie man ein Aussagekräftigen Titel für mein Anliegen wählt. Ich denke ich habe diesen gefunden, dennoch muss ich ein wenig ausholen.
In einer größeren Abteilung wechseln die Mitarbeiter sehr oft Ihren Arbeitsplatz.
Bei der Anmeldung unter Windows wird unter dem lokalen Laufwerk D:\Users\ der Name des angemeldeten Mitarbeiters angelegt.
Nun kommt es vor, das der Name bereits vorhanden ist, dies aber nicht erkannt wird und ein neuer Ordner angelegt wird mit dem gleichen Namen plus Zusatz.
So kann es vorkommen, das dann bsp. zwei Ordner oder mehr wie folgt vorhanden sind.
max.mustermann
max.mustermann,BP-DE
max.mustermann,BP-DE.001
In diesem jeweiligen Ordner sind u.a. die lokalen Einstellungen des Users enthalten.
Durch ein Link/Icon startet der User meine Access Applikation. Dabei wird die MDE Datei auf den lokalen Pfad gespeichert. Bsp. max.mustermann/Tools/ und so weiter.
Nun besteht aber die Möglichkeit, das die Batch nicht auf den Pfad zugreifen kann, da ein neuer Ordner angelegt wurde, der in dem Sinne dann schreibberechtigt ist, also bsp. max.mustermann,BP-DE/Tools/ und so weiter.
Wie kann man nun per Batch überprüfen, welcher der aktuelle, gültige Pfad ist? Geht so etwas überhaupt?
Ein Teil meines Quellcodes:
if not exist D:\Users\%username%\Tools\MeineApp mkdir D:\Users\%username%\Tools\MeineApp
D.h. hier wähle ich den Pfad mit dem aktuell angemeldeten Username, der aber auch mal ,BP-DE oder ,BP-DE.001 sein kann, obwohl unter Windows der Username nur max.mustermann lautet.
Ich hoffe mir kann einer weiterhelfen?
Das Problem ist nämlich, da sporadisch Kollegen das Tool nicht öffnen können, da die Datei nicht in den richtigen Pfad kopiert werden kann von wo aus diese dann geöffnet wird.
Gruß Marja
ich habe mir gerade überlegt, wie man ein Aussagekräftigen Titel für mein Anliegen wählt. Ich denke ich habe diesen gefunden, dennoch muss ich ein wenig ausholen.
In einer größeren Abteilung wechseln die Mitarbeiter sehr oft Ihren Arbeitsplatz.
Bei der Anmeldung unter Windows wird unter dem lokalen Laufwerk D:\Users\ der Name des angemeldeten Mitarbeiters angelegt.
Nun kommt es vor, das der Name bereits vorhanden ist, dies aber nicht erkannt wird und ein neuer Ordner angelegt wird mit dem gleichen Namen plus Zusatz.
So kann es vorkommen, das dann bsp. zwei Ordner oder mehr wie folgt vorhanden sind.
max.mustermann
max.mustermann,BP-DE
max.mustermann,BP-DE.001
In diesem jeweiligen Ordner sind u.a. die lokalen Einstellungen des Users enthalten.
Durch ein Link/Icon startet der User meine Access Applikation. Dabei wird die MDE Datei auf den lokalen Pfad gespeichert. Bsp. max.mustermann/Tools/ und so weiter.
Nun besteht aber die Möglichkeit, das die Batch nicht auf den Pfad zugreifen kann, da ein neuer Ordner angelegt wurde, der in dem Sinne dann schreibberechtigt ist, also bsp. max.mustermann,BP-DE/Tools/ und so weiter.
Wie kann man nun per Batch überprüfen, welcher der aktuelle, gültige Pfad ist? Geht so etwas überhaupt?
Ein Teil meines Quellcodes:
if not exist D:\Users\%username%\Tools\MeineApp mkdir D:\Users\%username%\Tools\MeineApp
D.h. hier wähle ich den Pfad mit dem aktuell angemeldeten Username, der aber auch mal ,BP-DE oder ,BP-DE.001 sein kann, obwohl unter Windows der Username nur max.mustermann lautet.
Ich hoffe mir kann einer weiterhelfen?
Das Problem ist nämlich, da sporadisch Kollegen das Tool nicht öffnen können, da die Datei nicht in den richtigen Pfad kopiert werden kann von wo aus diese dann geöffnet wird.
Gruß Marja
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 194964
Url: https://administrator.de/contentid/194964
Ausgedruckt am: 14.11.2024 um 23:11 Uhr
14 Kommentare
Neuester Kommentar
Hi
Diese Ordner von denen du da sprichst nennt man User Profile. Wenn man das Problem hat das User gleich heissen gibt es die möglichkeit diese Profile umzuleiten zb. so das jeder der 3 Max. Mustermann benutzer den Profilordner
Max.Mustermann.BP-DE.001 verwendet.
Eigendlich handelt es sich hier aber um ein Organisatorisches Problem den es darf schlicht und einfach keine 3 Benutzer geben die gleich heissen.
In einer Domain wäre das auch gar nicht möglich 3 Benutzer anzulegen die den gleichen Namen haben. Es gibt schlicht nur einen Max Mustermann nummer 2 und 3 müssen dann lokale Benutzer sein und Nummer 3 müsste auch leicht anders heissen.
ich vermute eher das es hier 2 benutzer gibt die gleich heissen einen Lokalen und einen Domainbenutzer. Der Domainbenutzer hat die Domain als ändung stehen weil es schon einen lokalen Max Mustermann gibt.
Bei Nr 3 denke ich das eines der 2 Profile einen Fehler haben muss und deswegen Nummer 3 erstellt wurde.
Aber um genaueres zu sagen müsste man das Netzwerk kennen.
Wenn man zb. Windows XP verwendet gibt es ein Update für die Profilerstellung weil es Probleme damit gab.
PS: Wenn du das Problem schnell lösen willst gib einfach jedem User auf den Pfad in allen Profilen zugriff indem du in den NTFS rechten Domainbenutzer hinzufügst und berechtigst.
PPS: Jeder Netzwerkadministartor sollte das Problem leicht lösen können.
LG Andy
Diese Ordner von denen du da sprichst nennt man User Profile. Wenn man das Problem hat das User gleich heissen gibt es die möglichkeit diese Profile umzuleiten zb. so das jeder der 3 Max. Mustermann benutzer den Profilordner
Max.Mustermann.BP-DE.001 verwendet.
Eigendlich handelt es sich hier aber um ein Organisatorisches Problem den es darf schlicht und einfach keine 3 Benutzer geben die gleich heissen.
In einer Domain wäre das auch gar nicht möglich 3 Benutzer anzulegen die den gleichen Namen haben. Es gibt schlicht nur einen Max Mustermann nummer 2 und 3 müssen dann lokale Benutzer sein und Nummer 3 müsste auch leicht anders heissen.
ich vermute eher das es hier 2 benutzer gibt die gleich heissen einen Lokalen und einen Domainbenutzer. Der Domainbenutzer hat die Domain als ändung stehen weil es schon einen lokalen Max Mustermann gibt.
Bei Nr 3 denke ich das eines der 2 Profile einen Fehler haben muss und deswegen Nummer 3 erstellt wurde.
Aber um genaueres zu sagen müsste man das Netzwerk kennen.
Wenn man zb. Windows XP verwendet gibt es ein Update für die Profilerstellung weil es Probleme damit gab.
PS: Wenn du das Problem schnell lösen willst gib einfach jedem User auf den Pfad in allen Profilen zugriff indem du in den NTFS rechten Domainbenutzer hinzufügst und berechtigst.
PPS: Jeder Netzwerkadministartor sollte das Problem leicht lösen können.
LG Andy
Ha !! Ich glaub sie ist Programiererin und kein admin was meinst du ?
PS: Für heute hab ich eh genug geschrieben daher darfst du weiterhelfen wenn Fragen auftauchen ich bin erstmal 3 tage weg
LG Andy
Hallo,
Das kann schon mal passieren
Werden Profile nach dem Abmelden lokal gelöscht?
Wenn ja, wurden die auch tatsächlich gelöscht?
Warum wird für einen benutzer dessen Profilpfad schon existiert, ein neuer angelegt? NTFS Rechte am lokalen System geändert?
Werden Profile umbenannt?
Werde die Rechner aus Domäne raus / in Domäne Rein usw. häufig gemacht?
Werden die Benutzer im AD oft geändert?
Gibt es Authentifizierungsprobleme im netz?
Was steht im Ereignissprotokll bezuüglich Profile (Roaming) drin?
Gruß,
Peter
[Nachtrag]
Vorhin waren die anderen Antworten noch nicht da
[/Nachtrag]
Das kann schon mal passieren
Bei der Anmeldung unter Windows wird unter dem lokalen Laufwerk D:\Users\ der Name des angemeldeten Mitarbeiters angelegt.
Wodurch?Nun kommt es vor, das der Name bereits vorhanden ist, dies aber nicht erkannt wird und ein neuer Ordner angelegt wird mit dem gleichen Namen plus Zusatz.
max.mustermann
max.mustermann,BP-DE
max.mustermann,BP-DE.001
Das sieht doch sehr verdächtig nach Fehler mit Roaming Profiles und oder Fehler bei der Domänenanbindung / Rechner / Benutzer aus.max.mustermann
max.mustermann,BP-DE
max.mustermann,BP-DE.001
In diesem jeweiligen Ordner sind u.a. die lokalen Einstellungen des Users enthalten.
Also doch die Profilordner der angemeldeten Anwender auf einem Windows OS. Ihr habt den Pfad für Benutzerdateien (Profil) komplett geändert? Nebenwirkungen eingeplant und oder bekannt?Nun besteht aber die Möglichkeit, das die Batch nicht auf den Pfad zugreifen kann, da ein neuer Ordner angelegt wurde,
Alles ein folgefehler da für den Benutzer ein neuer Profilpfad angelegt wurde. Behebe diesen Fehler und hier tauchen dann keine Fehler mehr auf.Werden Profile nach dem Abmelden lokal gelöscht?
Wenn ja, wurden die auch tatsächlich gelöscht?
Warum wird für einen benutzer dessen Profilpfad schon existiert, ein neuer angelegt? NTFS Rechte am lokalen System geändert?
Werden Profile umbenannt?
Werde die Rechner aus Domäne raus / in Domäne Rein usw. häufig gemacht?
Werden die Benutzer im AD oft geändert?
Gibt es Authentifizierungsprobleme im netz?
Was steht im Ereignissprotokll bezuüglich Profile (Roaming) drin?
Gruß,
Peter
[Nachtrag]
Vorhin waren die anderen Antworten noch nicht da
[/Nachtrag]
Hi,
und ich denke du hast was falsch verstanden Ausserwoeger
er meint denke ich, dass der Benutzer ein und derselbe ist, hatten das Problem mit lokalen Benutzerprofilen auch
einer unserer Benutzer hat sich an einem PC angemeldet (es wurde ein Profil erstellt)
nach Ab- und Anmelden wurde ein zweites erstellt mit dem Domänenzusatz (hier: BP-DE)
und schließlich wurde noch eines erstellt mit Namen Max.Mustermann.Domänenzusatz 001
wir haben das Problem so gelöst, dass wird den benutzer im AD gelöscht haben, seine Benutzerprofile gelsöcht haben und danach hats funktioniert.
Keine Ahnung woran das liegt.
Grüße
Exze
[EDIT]
Spammt doch btte nicht dazwischen :-O
;)
[/EDIT]
und ich denke du hast was falsch verstanden Ausserwoeger
er meint denke ich, dass der Benutzer ein und derselbe ist, hatten das Problem mit lokalen Benutzerprofilen auch
einer unserer Benutzer hat sich an einem PC angemeldet (es wurde ein Profil erstellt)
nach Ab- und Anmelden wurde ein zweites erstellt mit dem Domänenzusatz (hier: BP-DE)
und schließlich wurde noch eines erstellt mit Namen Max.Mustermann.Domänenzusatz 001
wir haben das Problem so gelöst, dass wird den benutzer im AD gelöscht haben, seine Benutzerprofile gelsöcht haben und danach hats funktioniert.
Keine Ahnung woran das liegt.
Grüße
Exze
[EDIT]
Spammt doch btte nicht dazwischen :-O
;)
[/EDIT]
Ah Ups ! Kann sein.
Wenn euch sowas bei Windows XP Passiert:
http://www.microsoft.com/en-us/download/details.aspx?id=6676
hilft so gut wie immer.
Man kann auch mittels GPO eine Datei automatisch in einen Pfad einfügen das sollte auch helfen das das Programm immer aufgeht wenn die Datei statisch ist und nicht geändert wird.
LG Andy
Wenn euch sowas bei Windows XP Passiert:
http://www.microsoft.com/en-us/download/details.aspx?id=6676
hilft so gut wie immer.
Man kann auch mittels GPO eine Datei automatisch in einen Pfad einfügen das sollte auch helfen das das Programm immer aufgeht wenn die Datei statisch ist und nicht geändert wird.
LG Andy
Hi,
wie gesagt bei uns hat es geholfen, die betreffenden Leute aus dem AD zu löschen, dann Benutzerkonten zu bereinigen und benutzer neu anzulegen (exakt gleicher Benutzername)
Kannst du ja mal bei euh vorschlagen
Grüße
Exze
wie gesagt bei uns hat es geholfen, die betreffenden Leute aus dem AD zu löschen, dann Benutzerkonten zu bereinigen und benutzer neu anzulegen (exakt gleicher Benutzername)
Kannst du ja mal bei euh vorschlagen
Grüße
Exze
Weisst du wie die Struktur bei dem Unternehmen aufgebaut ist ? Haben die XP Rechner ? Haben die eine 2003 Domain oder 2008 Domaincontroller ????
Wenns nur um dein Programm geht und du 1 Datei in jedem Profil haben musst dann würde ich dir empfehlen diese Datei einfach über GPO automatisch in jedem Profil ablegen zu lassen.
PS: Wenn du das generelle Problem beheben willst müsstest du mehr Infos zum Netzwerk haben.
LG Andy
Wenns nur um dein Programm geht und du 1 Datei in jedem Profil haben musst dann würde ich dir empfehlen diese Datei einfach über GPO automatisch in jedem Profil ablegen zu lassen.
PS: Wenn du das generelle Problem beheben willst müsstest du mehr Infos zum Netzwerk haben.
LG Andy
GPO bedeutet Gruppenrichtlinie und ist eine Funktion des Domaincontrollers.
Mit dieser kann der Admin viel einstellen zb. kann er auch Dateien automatisch beim anmelden jedes Benutzers in Ordner schieben.
Vorraussetzung ist ein 2008 Domaincontroller.
Der Admin muss dann nur in der GPO %userprofile%\pad deiner datei\ in die GPO als ort Eingeben und kann somit deine benötigte Datei immer aktuell in den im Moment verwendeten Profil ablegen.
PS: Ausserdem kann der Admin das Update das ich weiter oben gepostet habe bei allen XP clients installieren dann wird das Problem sowieso kaum noch auftauchen.
PPS: Gibt es auch Windows 7 clients ? Haben die das Problem auch ?
LG Andy
Mit dieser kann der Admin viel einstellen zb. kann er auch Dateien automatisch beim anmelden jedes Benutzers in Ordner schieben.
Vorraussetzung ist ein 2008 Domaincontroller.
Der Admin muss dann nur in der GPO %userprofile%\pad deiner datei\ in die GPO als ort Eingeben und kann somit deine benötigte Datei immer aktuell in den im Moment verwendeten Profil ablegen.
PS: Ausserdem kann der Admin das Update das ich weiter oben gepostet habe bei allen XP clients installieren dann wird das Problem sowieso kaum noch auftauchen.
PPS: Gibt es auch Windows 7 clients ? Haben die das Problem auch ?
LG Andy
Richtig!
Marja, wenn Du ein Access-Tool geschrieben hast, gehe ich davon aus, daß Du in VBA programmierst. In dem Fall gilt:
Benutzerprofilpfad = Environ("USERPROFILE")+"\"
Anwendungsdatenpfad = Environ("APPDATA")+"\"
Also jede beliebige Umgebungsvariable, die Du in der "DOS-Box" mit SET aufgelistet bekommst, kannst Du unter VBA mit der Funktion Environ() auslesen und in eine Variable schreiben.