簡體   English   中英

如何通過運行命令打開一個完全命名為環境變量名稱的文件夾?

[英]How to open a folder exactly named as an environment variable name, through Run Command?

由於我正在研究 C# .NET 應用程序,其中一部分模仿 Windows運行命令,我正在用它做一些實驗。 我在....Appdata\Local\Temp 文件夾中有一個完全命名為%userdomain%的文件夾,我想通過 Windows 運行命令訪問,但它給了我錯誤,因為 Windows 找不到....Local\Temp\ComputerName。 有什么辦法可以通過運行訪問這個文件夾嗎?

但是在 C# .NET 中,使用System.Diagnostics.Process ,我能夠打開相關文件夾,但由於 '%' 是文件夾和文件名的有效字符,因此很難確定用戶給出的路徑是否包含變量名稱或文件夾名稱。 因此從 Environment.GetEnvironmentVariable(""); 中檢索值是不明智的。 所有的時間。 區分的最佳方法是什么?

有什么建議嗎?

我解決它的想法 - 它們必須被證明有效 - 我目前在 Linux 機器上:

  1. 我不知道如何在 Windows 區域逃脫 %,那將是最好的解決方案,還有其他人嗎?
  2. 在 C# 中臨時備份環境變量 %userdomain% 的值,如果可以的話,將此進程的環境變量設置為“%userdomain%”。 並且在調用 Run 命令后,將 userdomain 環境變量重置為其備份值(如果其他線程在您的程序中同時使用 %userdomain% 則只有缺點)。
  3. 在 C% 中定義和設置 2 個環境變量,例如 fakeLeftHalf = "%user" 和 fakeRightHalf = "domain%" 並使用 "yourpath\%fakeLeftHalf%%fakeRightHalf%" 調用運行命令

一個想法奏效了嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM