使用Windows JScript列出APPDATA中文件夹的子目录

时间:2014-10-19 20:39:51

标签: winapi registry jscript.net

我正在尝试编辑位于AppData\Roaming文件夹内的json文件。

文件路径为AppData\Roaming\Myapp\RANDOM_CRAP\settings.json

RANDOM_CRAP只是一个随机文件夹名称,对于每台机器都是不同的。 为了打开这个文件进行写作,我首先试着找到它的文件路径,如下所示:

function getAppData() {
   var oShell = new ActiveXObject("WScript.Shell");
   var strValue = oShell.RegRead("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\\AppData");
   return strValue;
}

问题是,该注册表项下存储的值是%USERPROFILE%\AppData\Roaming,似乎无法打开:

var folder = fso.GetFolder(getAppData());

(引发Path not found错误)
我可以用另一种方式进入APPDATA路径吗?

1 个答案:

答案 0 :(得分:0)

使用ExpandEnvironmentStrings Method轻松访问AppData路径。

派对时间:

var WshShell = WScript.CreateObject("WScript.Shell");
WScript.Echo("WinDir is " + WshShell.ExpandEnvironmentStrings("%AppData%"));
祝你好运。