Ist es sicher davon ausgehen, dass der Pfad C: \ WINDOWS \ system32 existiert immer?

StackOverflow https://stackoverflow.com/questions/239209

  •  04-07-2019
  •  | 
  •  

Frage

Unter OS von Win 2000 oder höher (alle Sprachen) kann ich davon ausgehen, dass dieser Weg wird immer existiert? Zum Beispiel weiß ich, dass die „Programme“ -Ordner einen anderen Namen in einigen Sprachen auf win xp hat. So ist es wahr, für die System32-Ordner?

Danke. Ohad.

War es hilfreich?

Lösung

Sie können auf jeden Fall nicht davon ausgehen, dass: Windows auf einem anderen Laufwerksbuchstabe installiert werden kann, oder in einem anderen Verzeichnis. Bei einer früheren Arbeit wurde in D PC Windows installiert. B. \ winnt,

Die kurze Antwort ist die API-Aufruf GetSystemDirectory () zu verwenden, die den Pfad zurückkehren Sie nach.

Die längere Antwort ist zu fragen: Brauchen Sie das wirklich wissen? Wenn Sie es verwenden Dateien in das Windows-Verzeichnis zu kopieren, würde ich vorschlagen, dass Sie fragen, ob Sie das wirklich tun wollen. Kopieren in das Windows-Verzeichnis wird nicht gefördert, wie Sie können andere Anwendungen vermasseln sehr leicht. Wenn Sie den Pfad verwenden DLLs zu finden, warum nicht nur auf dem O verlassen, um die passenden zu finden, ohne einen Weg zu geben? Wenn Sie sich in Bits der OS-Dateien zu graben, prüfen: ist, dass in Zukunft zur Arbeit zu gehen? Im Allgemeinen ist es besser, im Windows-Verzeichnis nicht explizit herumzuzustochern, wenn Sie Ihr Programm will auf zukünftigen Windows-Versionen arbeiten.

Andere Tipps

Nein, das kann man nicht davon ausgehen.

Windows kann auf einen anderen Pfad installiert werden. Eine Lösung ist, um es zu suchen durch GetSystemDirectory (implementiert als Teil der Windows-API) aufgerufen wird.

Windows kann auf einer andere Festplatte und oder in einem anderen Ordner installiert werden. Verwenden Sie die% windir% oder% systemroot% Umgebungsvariablen Sie auf den Windows-Ordner zu erhalten und system32 anhängen. Oder das% Pfad% Variable verwenden, es ist in der Regel der erste Eingang und die bevorzugte Methode für die Suche nach Dateien wie DLLs AFAIK. Wie pro Kommentar: verlassen Sie sich nicht zu sehr auf dem system32 dir das erste Element zu sein. Ich glaube, es ist sicher irgendwo obwohl es in% path% zu übernehmen.

Ich würde die GetWindowsDirectory Win32-API das aktuelle Windows-Verzeichnis zu erhalten, fügen Sie System32 , um es zu einem dann prüfen, ob es vorhanden ist.

Es könnte sicherer sein, um das „windir“ Umgebungsvariable zu verwenden und dann die „System32“ am Ende dieses Weges hängen. Manchmal unter einem anderen Ordner oder anderes Laufwerk könnten Fenster so „windir“ werden Ihnen sagen, wo es ist.

Soweit ich weiß, sollte der System32 Ordner immer unter dem Windows-Ordner vorhanden sind.

Nur ein FYI, aber in einer Terminalserver-Umgebung (dh Citrix), GetWindowsDirectory () einen einzigartigen Weg für einen entfernten Benutzer zurückkehren.

Link-Text

Da immer mehr Unternehmen virtualisierte Desktops zu verwenden, müssen Entwickler diese im Auge behalten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top