簡體   English   中英

Windows 腳本宿主 Javascript 獲取 .js 文件的路徑

[英]Windows Script Host Javascript Get Path of .js file

我一直在使用 QTTabBar 並且正在使用 .js 腳本。 這些腳本使用 Windows Script Host 運行,但我發現自己必須在 .js 文件中指定硬編碼目錄,而不是相對路徑。 這並不理想。

在 .js 文件中,是否可以獲得 .js 文件的包含文件夾(無論它最初是從哪個目錄運行的)? 我只需要避免以某種方式指定絕對路徑。 例如,我的 .js 文件的一部分可能如下所示:

var qs = new ActiveXObject( "QTTabBarLib.Scripting" );

var fso = new ActiveXObject("Scripting.FileSystemObject");
var txtFile = fso.OpenTextFile("C:\\Installation\\Scripts\\QTTabBar\\dirs.txt", 1, false, 0);
var fText = txtFile.ReadAll();

我不能只將“dirs.txt”放在 OpenTextFile 函數中,因為當 .js 腳本在 QTTabBar 中運行時,工作目錄(我認為)從 system32 開始,而不是在 .js 文件位置。 所以我需要以某種方式獲取 .js 文件本身的路徑並將其與相對名稱結合以創建絕對路徑。 但我不確定這是否可能或如何做到。

您可以使用以下命令獲取當前 JScript 文件的路徑

js_file_path = WScript.ScriptFullName;

文本文件的絕對路徑是

path = WScript.ScriptFullName.split("\\").slice(0, -1).join("\\") + "\\dirs.txt";

如果腳本在 Windows 腳本宿主中運行,則不需要包含或導入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM