Как определить местоположение временных интернет-файлов Internet Explorer через Javascript? - PullRequest
2 голосов
/ 14 июля 2011

Я пытаюсь перенести расширение Firefox на IE. Одной из функций, которые мне нужны, является возможность записи во временные файлы браузера. В Firefox это было легко сделать с помощью следующего кода:

//Create file to store data transferred to desktop app
var file = Components.classes["@mozilla.org/file/directory_service;1"].
               getService(Components.interfaces.nsIProperties).
               get("TmpD", Components.interfaces.nsIFile);
    file.append("MyExtTempFile.txt");
    file.createUnique(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0666);
    // do whatever you need to the created file

Этот метод предпочтительнее, чем жесткое кодирование пути, поскольку он может меняться в разных версиях Windows / IE.

Я понял, как создать и записать файл в IE с помощью:

var fso  = new ActiveXObject("Scripting.FileSystemObject");
var fh = fso.CreateTextFile("C:\\Users\\Administrator\\Desktop\\MyExtTempFile.txt", true);
fh.WriteLine("Some text goes here...");
fh.Close();

Теперь мне просто интересно, как автоматически определить местоположение временного файла для IE?

Ответы [ 2 ]

4 голосов
/ 14 июля 2011
fso.GetSpecialFolder(2)

Найдено здесь: FileSystemObject.GetSpecialFolder ()

2 голосов
/ 01 июля 2012

FileSystemObject.GetSpecialFolder(2) даст вам путь к временной папке ОС. Это не даст вам местоположение временных файлов Интернета.

...