Benutzer mit den meisten Antworten
Gibt es ein "Kürzel" für den Benutzernamen?

Frage
-
Hallo,
wenn ich jetzt z.B. folgenden Pfad habe: C:\Users\saturinxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Kann ich "saturinxx" also meinen Benutzernamen durch irgendeine "Abkürzung" ersetzen, sodass es auch auf dem Benutzer z.B. Peter funktioniert?
MfG
Nick
Antworten
-
Hallo Nick,
einfach den Benutzernamen ersetzen kannst du nicht, über Umgebungsvariablen wäre es vielleicht möglich aber auch nicht der für .NET typische Weg.
An den Startmenü-Ordner kommst du dagegen wie folgt heran:
Environment.GetFolderPath(Environment.SpecialFolder.StartMenu)
Die SpecialFolder-Enumeration bietet auch noch einige andere spezielle Ordner, die dir vielleicht etwas nützen.
Zum Verbinden mit den restlichen Pfadteilen solltest du dann Path.Combine benutzen.
BTW, Programme legen sich meistens via Registry in den Autostart ab. Das geht IMO am einfachsten.
Viele Grüße, Tom Lambert - MVP, MCC und MSP
Wozu Antworten markieren und Posts bewerten? Klicke hier
Nützliche Links: .NET Quellcode | C#/VB.NET Konverter | GitHub Forum Samples | Account bestätigen (Verify Your Account)
Ich: Webseite | Facebook | Twitter | Code Snippets | GitHub- Als Antwort vorgeschlagen Dimitar DenkovMicrosoft contingent staff, Administrator Dienstag, 17. Januar 2017 07:29
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Freitag, 27. Januar 2017 14:56
Alle Antworten
-
Hi,
wenn ich das richtig verstanden habe, willst Du beim Aufruf von:
C:\Users\Peter\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
auf den Ordner:
C:\Users\saturinxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
? Falls ja: Das geht AFAIK nicht.
Diese Ordner solltest Du aber eh nie ausgeschrieben ansprechen, sondern den Basispfad über:
String appDataPath = Environment.GetFolderPath( Environment.SpecialFolder.ApplicationData ); String fullPath = System.IO.Path.Combine( appDataPath, "Microsoft\Windows\..." );
ermitteln.
Falls Du allerdings vom Benutzer "Peter" aus auf den Ordner:
C:\Users\saturinxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
zugreifen willst, geht das nur, wenn "Peter" ausreichende Berechtigungen hat. Sinnvoll ist das aber nicht.
Hier wäre eher ein Ordner zu wählen, der eben nicht benutzer-, sondern anwendungsspezifisch ist, bspw.:
String appDataPath = Environment.GetFolderPath( Environment.SpecialFolder.CommonApplicationData );
Zur Bedeutung der einzelnen SpecialFolder Werte schau mal hier:
https://msdn.microsoft.com/de-de/library/system.environment.specialfolder.aspx
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community -
Hallo Nick,
einfach den Benutzernamen ersetzen kannst du nicht, über Umgebungsvariablen wäre es vielleicht möglich aber auch nicht der für .NET typische Weg.
An den Startmenü-Ordner kommst du dagegen wie folgt heran:
Environment.GetFolderPath(Environment.SpecialFolder.StartMenu)
Die SpecialFolder-Enumeration bietet auch noch einige andere spezielle Ordner, die dir vielleicht etwas nützen.
Zum Verbinden mit den restlichen Pfadteilen solltest du dann Path.Combine benutzen.
BTW, Programme legen sich meistens via Registry in den Autostart ab. Das geht IMO am einfachsten.
Viele Grüße, Tom Lambert - MVP, MCC und MSP
Wozu Antworten markieren und Posts bewerten? Klicke hier
Nützliche Links: .NET Quellcode | C#/VB.NET Konverter | GitHub Forum Samples | Account bestätigen (Verify Your Account)
Ich: Webseite | Facebook | Twitter | Code Snippets | GitHub- Als Antwort vorgeschlagen Dimitar DenkovMicrosoft contingent staff, Administrator Dienstag, 17. Januar 2017 07:29
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Freitag, 27. Januar 2017 14:56
-
Okay, danke schonmal, allerdings wollte ich halt, dass das Programm bei jedem Start ausgeführt werden und ich hab keine Lust das immer im Aufgabenplaner einzustellen.
Und was hat das eine mit dem anderen zu tun?
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community