2014-05-09 6 views
0

썬더 버드 플러그인을 통해 파일 시스템에서 일부 작업을 수행하고 싶습니다. 예를 들어 특정 위치에 폴더를 만들고이 폴더에 썬더 버드의 일부 데이터가 들어있는 텍스트 파일 을 만듭니다.Thunderbird Extension을 통한 파일 시스템 작업

아시다시피 모질라 확장은 자바 스크립트 코드로 구성됩니다. 그래서 이것을 찾으면서 Thunderbird에서 작동하지 않는 ActiveXObject에 대한 코드를 발견했습니다.

어떤 아이디어가 있습니까?

답변

1

처음에는 extensions in general (Firefox 문서는 Thunderbird에서 제대로 작동하지 않는 부가 기능 SDK를 제외하고는 Thunderbird에도 적용되며 XUL 오버레이 경로로 이동하십시오).

그런 다음 특정 XPCOM 물건과 OS.File에서 파일 I/O를 수행 할 수있는 여러 가지 방법이 있습니다 :

+0

답장을 보내 주셔서 감사합니다. 폴더 생성, 삭제 등의 정보가 필요합니다. :) –

0

내 확장에서 코드입니다. 프로필 디렉토리에 텍스트 파일을 만든 다음이 파일에 텍스트를 추가합니다.

var path = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).get("ProfD", Components.interfaces.nsIFile).path + "\\";  
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); 

file.initWithPath(path); 
file.append("settings.txt") 
file.create(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0664) 


var outputStream = Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream); 
outputStream.init(file, 0x04 | 0x10, 0664, 0); 
var output = "some text here" 
var result = outputStream.write(output, output.length); 
outputStream.close();