在unix/linux中,如果某個程序符號鏈接到另一個名稱並在該名稱下調用,則符號鏈接的名稱本身在ARGV [0]下可用。但是,在Windows中,如果我有快捷方式並通過快捷方式調用它,則ARGV [0]是原始程序名稱,而不是快捷方式名稱。在運行時獲取Windows程序快捷方式的名稱?
在Windows下有什麼辦法可以在運行時獲得程序的快捷方式名稱嗎?
例如,假設在linux下我有一個可執行文件,稱爲 「origprog」,而我做到以下幾點:
LN -s origprog newprog
如果我跑 「./origprog」,ARGV [ 0]是「./origprog」,如果我運行「./ newprog」,ARGV [0]是「./ newprog」。
然而,在Windows下,假設我有一個名爲「origprog.exe」節目,我做一個快捷方式,它被稱爲「newprog.exe.lnk」。
如果我調用「c:\ path \ to \ origprog.exe」,ARGV [0]是「c:\ path \ to \ origprog.exe」,如果我調用「c:\ path \ to \ newprog.exe.lnk「,ARGV [0]也是」c:\ path \ to \ origprog.exe「。在運行時,Windows中是否有任何方法來發現該程序實際上是通過「c:\ path \ to \ newprog.exe.lnk」調用的?
預先感謝您。
好的,非常感謝。 – HippoMan