locked
Feature request: user-defined drafts directory RRS feed

  • Question

  • I would greatly appreciate a user-definable drafts directory for two reasons.

    Firstly, I like to keep my My Documents folder slim and tidy.

    Secondly (and more importantly), I use ext2fsd for the filesystem where I store my documents and WLW has a real problem in how it interacts with files that use any non-alphanumeric characters there for some reason:

    WindowsLiveWriter,2280,Fail,00006,02-Jul-2008 20:41:48.187,"System.IO.IOException: Insufficient system resources exist to complete the requested service. 
     
       at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 
       at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy) 
       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) 
       at WindowsLive.Writer.CoreServices.TempFileManager.CreateNewFile(String dir, String pattern, Boolean asDir) 
       at WindowsLive.Writer.CoreServices.PathHelper.GetNonConflictingPath(String path) 
       at WindowsLive.Writer.PostEditor.PostEditorFile.GetUniqueFileName(String targetFilePath) 
       at WindowsLive.Writer.PostEditor.PostEditorFile.ManagePostFilePath(Boolean isPage, String postTitle) 
       at WindowsLive.Writer.PostEditor.PostEditorFile.Save(IBlogPostEditingContext editingContext)","   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo) 
       at System.Environment.get_StackTrace() 
       at WindowsLive.Writer.CoreServices.Diagnostics.LogFileTraceListener.Fail(String message) 
       at System.Diagnostics.TraceInternal.Fail(String message) 
       at System.Diagnostics.Trace.Fail(String message) 
       at WindowsLive.Writer.PostEditor.PostEditorFile.Save(IBlogPostEditingContext editingContext) 
       at WindowsLive.Writer.PostEditor.BlogPostEditingManager.SaveToDrafts() 
       at WindowsLive.Writer.PostEditor.BlogPostEditingManager.SaveDraft() 
       at WindowsLive.Writer.PostEditor.PostEditorMainControl.commandSavePost_Execute(Object sender, EventArgs e) 
       at WindowsLive.Writer.ApplicationFramework.Command.RaiseEvent(Object eventKey, EventArgs e) 
       at WindowsLive.Writer.ApplicationFramework.Command.OnExecute(EventArgs e) 
       at WindowsLive.Writer.ApplicationFramework.CommandManager.ProcessCmdKeyShortcut(Keys keyData) 
       at WindowsLive.Writer.HtmlEditor.HtmlEditorControl.OnCommandKey(KeyEventArgs e) 
       at WindowsLive.Writer.HtmlEditor.HtmlEditorControl._mshtmlEditor_CommandKey(Object sender, KeyEventArgs e) 
       at WindowsLive.Writer.Mshtml.MshtmlEditor.OnCommandKey(KeyEventArgs e) 
       at WindowsLive.Writer.Mshtml.MshtmlEditor.WindowsLive.Writer.Mshtml.Mshtml_Interop.IDocHostUIHandler2.TranslateAccelerator(MSG& lpMsg, Guid& pguidCmdGroup, UInt32 nCmdID) 
       at WindowsLive.Writer.Mshtml.MshtmlControl.TranslateAccelerator(MSG& lpMsg, Guid& pguidCmdGroup, UInt32 nCmdID) 
       at WindowsLive.Writer.Interop.Com.ActiveDocuments.IOleInPlaceActiveObject.TranslateAccelerator(MSG& lpmsg) 
       at WindowsLive.Writer.Mshtml.MshtmlControl.PreProcessMessage(Message& msg) 
       at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg) 
       at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg) 
       at System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FPreTranslateMessage(MSG& msg) 
       at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData) 
       at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) 
       at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) 
       at System.Windows.Forms.Application.Run(Form mainForm) 
       at WindowsLive.Writer.ApplicationFramework.SatelliteApplicationForm.Launcher.ThreadMain(Object[] parameters) 
       at WindowsLive.Writer.CoreServices.Threading.ThreadStartWithParams.Run() 
       at System.Threading.ThreadHelper.ThreadStart_Context(Object state) 
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 
       at System.Threading.ThreadHelper.ThreadStart()" 
    WindowsLiveWriter,2280,None,00007,02-Jul-2008 20:41:48.187,"DisplayableException occurred: WindowsLive.Writer.PostEditor.PostEditorStorageException: Error Accessing Local Post - Unexpected disk access error occurred while accessing local post (IOException) 
     
    Insufficient system resources exist to complete the requested service. 
     
       at WindowsLive.Writer.PostEditor.PostEditorFile.Save(IBlogPostEditingContext editingContext) 
       at WindowsLive.Writer.PostEditor.BlogPostEditingManager.SaveToDrafts()","" 
    WindowsLiveWriter,2280,None,00008,02-Jul-2008 20:41:52.031,"Unexpected exception getting Recent post info [foo's bar.wpost]:WindowsLive.Writer.PostEditor.PostEditorStorageException: Error Accessing Local Post - Unexpected error occurred while accessing local post (-2147286789) 
     
    Storage format is invalid (corrupt or has illegal headers) 
       at WindowsLive.Writer.PostEditor.PostEditorFile.GetPostInfo(FileInfo file) 
       at WindowsLive.Writer.PostEditor.PostEditorFile.GetRecentPosts(DirectoryInfo directory, RecentPostRequest request)","" 

    This results in a zero-length file being created with the title of the post. Each subsequent save creates another file, identically named (!). Note that there is also an undesirable interaction here - if WLW finds such a corrupt file in the drafts folder, it can't operate; it refuses to open, save, modify, or do anything else until the file is removed manually.

    I'm quite happy to believe it's an ext2fsd bug, but:
    1. no other application seems to have this problem
    2. WLW will happily save there without 'special' characters
    3. the file is quite happily created and is freely editable outside WLW
    It's a real shame, because I like everything else about WLW.
    Wednesday, July 2, 2008 9:10 AM

All replies

  • dglenny, I'm sorry that we haven't replied directly to your post sooner.  We appreciate you using Writer and glad to hear that you mostly like it except for this issue.  Thanks for taking the time to send us feedback.  I wanted to make sure that you know we will consider this for a future release.
    Becky Pezely, Windows Live Writer
    Tuesday, October 28, 2008 11:40 PM