Je suppose que tu fais ton truc sous IE (à cause du document.execCommand), donc tu peux utiliser des contrôles ActiveX.
Plus particulièrement "Scripting.FileSystemObject" qui te permet d'accéder au système de fichier local.
Par contre, à part le "input file", je ne connais pas d'autres trucs qui te permette de parcourir l'arborescence. Ce que je te conseille, c'est de te faire vite fait un petit explorateur de fichier en javascript qui utilise le controle ActiveX.
De cette façon, c'est toi qui gère tout, et tu peux donc aisément récupérer le chemin d'enregistrement.
Perso je ferai comme ça je pense.
Petit lien sur cet objet ActiveX :
l'AltruisteSi tu veux une compatibilité firefox, il existe un objet XUL équivalent à ce contrôle activex.