var unArchivo = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
unArchivo.initWithPath("C:\prueba.txt");
unArchivo.create(nsIFile::NORMAL_FILE_TYPE, null);
var unDirectorio = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
unDirectorio.initWithPath("C:\directorioprueba");
No sé qué pasa pero no funciona, he probado a meter el código dentro de una consola javascript que lleva incrustada la extensión XPCOMWiever, y el mensaje que me sale es el siguiente:
NS_ERROR_FILE_NOT_FOUND on line 5: Component returned failure code: 0x80520012(NS_ERROR_FILE_NOT_FOUND)[nsILocalFile.copyTo]
Evidentemente, tanto prueba.txt como directorioprueba existen, si no, no os preguntaría por qué me ocurre ésto, XDD. Es como si no los reconociese, no sé, es muy raro....

Para terminar, me gustaría saber si hay algún sitio que proporcione una API de los componentes y las interfaces de XPCOM más o menos completa, y si podría encontrar algún manual en castellano y para tontos sobre cómo crear componentes XPCOM. Muchas gracias a todos por adelantado.