JavaScript не может напрямую записывать файлы на локальный компьютер по очевидным причинам безопасности. Тем не менее, вы можете сделать только то, что вам нужно, используя объект ActiveX, но, опять же, он будет работать только с IE. Затем вам понадобятся эквиваленты, такие как NPAPI, чтобы сделать его совместимым, например, с Chrome.
Полагаю, вам следует придерживаться того способа, которым вы на самом деле это делаете, если он работает так, как вы этого хотите.
РЕДАКТИРОВАТЬ: я имел в виду NPAPI, а не "API". Он позволяет создавать подключаемые модули, которые работают (вроде), так же, как ActiveX, и позволяет делать то же самое.