在Vista中,我試圖在本地機器上爲用戶帳戶(當前用戶除外)獲取「本地應用程序數據」路徑,但面臨一些問題。任何人都可以幫助我下面的代碼有什麼問題。任何人都可以使用以下JScript幫助我嗎?
var HKU = 0x80000003;
var username = "xyz";
//Loading registry hive of user xyz
var WshShell = new ActiveXObject("WScript.Shell");
var LoadHiveCmd = "REG LOAD " + "HKU" + "\\" + username + " \"" + "c:\\users\\xyz\\NTUSER.DAT" + "\"";
var oExec = WshShell.Exec(strLoadHiveCmd);
var oReg = GetObject("WinMgmts:/root/default:StdRegProv");
var profileRegPath = username + "\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders";
var method, inparams, outparams;
method = oReg.Methods_.Item("GetExpandedStringValue");
inparams = method.InParameters.SpawnInstance_();
inparams.hDefKey = HKU;
inparams.sSubKeyName = profileRegPath ;
inparams.sValueName = "Local AppData";
outparams = oReg.ExecMethod_(method.Name, inparams);
var appDataPath= outparams.sValue;
在這裏,在註冊表中的appDataPath值是%USERPROFILE%\AppData\Local
但我得到一個價值C:\Windows\system32\config\systemprofile\AppData\Local
我不從那裏值c:\windows\system32\config\systemprofile
快到理解,以及如何更換%USERPROFILE%
值。
社區用戶已經足夠爲您設置代碼格式。請查看[如何在StackOverflow上格式化代碼](http://meta.stackexchange.com/questions/22186/how-do-i-format-my-code-blocks)以確保您提供代碼以幫助者易於閱讀的格式。 – Dutchie432 2011-05-04 19:29:35