通過登錄檔獲取應用程式的路徑

2021-07-15 03:06:49 字數 1631 閱讀 3240

孫廣東  2016.7.17

應用程式的路徑雖然可以硬編碼,例如,路徑 ="e:\\program files\\unity\\editor\\unity.exe",但是這不是最佳的方式,因為使用者不可能將unity安裝到預設目錄。  

(任意的程式都可以啦

~)這裡說的是在unity編輯器外,  不是在unity編輯器中!

若要提取unity 安裝資料夾,其在 windows 平台上可以使用登錄檔,如下所示︰

正常的應用應該是在    hkey_local_machine\software 下, 但是找了一下,沒有找到,    然後在   hkey_classes_root  下 找到

但是unity跟其他的應用不一樣,  可以安裝多個版本,  上圖的路徑只是最近安裝的unity的版本。

python的    **實現:

from winreg import *

def getunityrootpath():

areg = connectregistry(none, hkey_classes_root)

akey = openkey(areg, r"unity package file\defaulticon")

# akey = openkey(areg, r"unity scene file")

# 獲取 '(default)' key 的值

value = queryvalueex(akey, "")

print(value[0])

# 獲取'\\editor\\unity.exe' 的起始位置

c# 的**實現:

從登錄檔獲取路徑

函式名稱 mcreggetvalue 建立 人 建立日期 功能描述 從登錄檔獲取路徑 返回型別 cstring 引數意義 subkey keyname 登錄檔名稱 修改記錄 cstring fun mcreggetvalue cstring subkey,cstring keyname dwvalu...

獲取應用程式的路徑

include stdafx.h include include pragma comment lib,shlwapi.lib using namespace std return pstrpath int tmain int argc,tchar argv 需要注意的是,如果沒有 pragma c...

C 系統應用之通過登錄檔獲取USB使用記錄 一

該文章是 個人電腦歷史記錄清除軟體 專案的系統應用系列文章.前面已經講述了如何清除ie瀏覽器的歷史記錄 獲取windows最近訪問檔案記錄 清除 站等功能.現在我需要完成的是刪除usb裝置上的u盤 手機 行動硬碟等記錄,真心覺得這方面資料特別少.這篇文章首先主要講述了通過登錄檔獲取usb使用記錄,希...