題 什麼\ ?? \意味著\ ?? \ C:\ Windows \ System32 \ conhost.exe?


在試圖找到答案時我注意到了這一點 這個問題

它似乎與之完全相關 conhost.exe 僅出現在命令行參數中 conhost.exe

對於所有人來說,參數似乎也是相同的(在我的計算機上) conhost.exe 進程:

\ ?? \ C:\ WINDOWS \ system32 \ conhost.exe 0x4

我的問題是什麼 \??\ 表示?那是某種物理設備地址嗎? 我之前見過的唯一的地方是 在這張圖片中,來自 本文


6
2017-09-12 01:03


起源


有關StackOverflow的相關問題: 路徑前綴\ ?? \和\\?\ _。另外,Microsoft doc為“\\。\”和“\\?\”前綴: 命名文件,路徑和命名空間。 - Solomon Rutzky


答案:


由於我也很好奇,我收集了一些信息;它是“\ DosDevices”的原始名稱,通常由需要訪問內核模式對象名稱的模塊使用。例如設備驅動程序,子系統模塊,..請注意,“\ DosDevices”似乎是“\ ??”的符號鏈接,所以“\ ??”是真名。人們相信他們試圖用這個神秘的名字來縮短搜索時間。

這就是你在驅動程序屬性上看到的原因。並且,conhost.exe通常由csrss.exe調用,後者也是需要使用內核模式名稱的模塊之一。請閱讀以下參考資料以進一步了解。

參考文獻:


6
2017-09-12 01:57



出於好奇,我們可以在實際命令中使用它嗎?我試過了 dir "\??\C:\" 這工作,但給了我一個意想不到的 Directory of C:\??\C: File Not Found - Vinayak
Vinayak //我不認為在命令提示符下支持它。 dir“\ ?? C:\”嘗試在當前驅動器的根目錄下找到名為“?? \ C:”的文件夾,這樣錯誤對我來說就有意義了。實際上,一些用戶模式應用程序(通常與系統設備相關)能夠顯示該格式,但使用符號鏈接“DosDevices”而不是“??”。 - Scott Rhee