Error BE0034: reserved folder name

Topics: Developer Forum
Sep 9, 2010 at 10:34 PM

Hi, I created a project and ran it with the defaults to create a .chm file, and everything worked well.  So all I did was go to HelpFileFormat property and change it to website and I received the following error:

SHFB: Error BE0034: The 'OutputPath' property resolved to 'C:\Documents and Settings\userName\Desktop\Documentation Test\New Folder (2)\Help\' which is a reserved folder name.  See error or property topic in help file for details.

But I've successfully ran it through to create it with a .chm.  When I changed HelpFileFormat back from Website to HtmlHelp1 it worked just fine again.  What else do I need to set to get a website help output?

Coordinator
Sep 14, 2010 at 8:18 PM

Website output will erase all content under the output folder without warning.  To prevent accidental deletion of stuff you really might want to keep, SHFB will not allow the use of a path that resolves to certain well known locations such as My Documents, Desktop, or the root of a drive.  A sub-folder under My Documents is acceptable but one under Desktop is not since it typically isn't used to store documents or projects.  Point the OutputPath property at a folder that is safe to purge without warning or move the project to a folder that is not under the desktop.

Eric

 

Sep 14, 2010 at 8:44 PM

 

Thanks a lot for the info!

May 29, 2012 at 4:18 PM
Edited May 29, 2012 at 4:18 PM

Thanks Eric, but the error message desperately needs to explain what you just did OR the application shouldn't judge where I keep my files. What if all applications did this and silently refused to save in arbitrary locations because 'they know best'?

To prevent accidental deletion of stuff you really might want to keep, SHFB will not allow the use of a path that resolves to certain well known locations such as My Documents, Desktop, or the root of a drive

Coordinator
May 30, 2012 at 8:30 PM

If you're referring to the error message in the original post, I'm not sure how much clearer I can make it.  Full details would make it too long which is why it refers you to the property help topic or the error number help topic where it is explained.  If it were just a matter of saving a file I'd agree with you regarding the refusal to continue but in this case, the behavior of SHFB is potentially destructive so I do have to assume I know best and prevent a potential problem.  Early versions of SHFB did not contain this check to prevent such problems and several people did point the output for the website at their My Documents root folder, the desktop, and in a couple of cases, the root of their C:\ drive even though it's noted in the property descriptions and in the help file that the location will be purged without warning.  Many people don't bother reading those warnings and do need the added protection.

Eric

 

Jul 17, 2012 at 9:11 PM
Edited Jul 17, 2012 at 10:08 PM

The 'OutputPath' property resolved to 'C:\Users\xxxxxxxxxx\Desktop\MyEntireSourceControlTree\Main\Web\XXXXXXX.Api.Documentation\Documentation\' which is a reserved folder name. 

You've prevented me from building my project because I put my files in a folder on my desktop instead of, I guess, on the C drive or wherever you think it's okay to put them. 

How am I supposed to use this tool when any member of my team could have their source control local path set to something that contains magic reserved words that you don't like? Please, get rid of this or let me check a box that says "Yes, really just do what I'm telling you."

 

Edit: Found reasonable workaround

http://i.imgur.com/UT3KK.png

Aug 1, 2013 at 8:50 PM
Eric, the help for this message is actually incorrect, and the rationale behind your explanation (above) is rather lame (where you said, "A sub-folder under My Documents is acceptable but one under Desktop is not since it typically isn't used to store documents or projects"). Why should any application care whether I want to put my development files on my desktop? If that's where I put them, that's where they are. But this program will refuse to work there. The help message says something that is simply not true:

The indicated property's value resolved to a folder which
  • appears to point to the root of a drive or network share, (not true)
  • is a well-known folder such as My Documents (not true),
  • is the root project folder, (not true)
  • or is a parent of a special folder or the project folder. (not true)
Had any of these points been true, then the refusal to work at this point might have been justified. Since none of those are true, it is not justified. Even worse, this directory is one that the application chose by default as the output directory -- it picked the path with "Help" appended to the project folder (deeply nested under Desktop) -- and then it turned around and told me that it was invalid.

At best, the help message is in need of correction. But IMHO it is an outrageous stretch to impose a "typical usage" expectation on what people do with the Desktop as an enforced restriction before someone can use this tool. Why? Why are you doing that?
Coordinator
Aug 2, 2013 at 4:06 PM
Someone complained about the subfolder under Desktop restriction a couple of months ago so I've removed that. It will be allowed in the next release. The code's in source control if you want it sooner.
Why should any application care whether I want to put my development files on my desktop?
Why? Why are you doing that?
Most applications don't and shouldn't care but in this case SHFB is justified in placing restrictions on where the output and working folders can go. There are warnings in the help file and on the property pages about the content of the working folder and the output folder for website builds being cleared at build time. Most people don't read them and are oblivious to those facts. Without the restrictions, early releases of SHFB would quite happily nuke your desktop folder, documents folder, the project folder, the entire C: drive if pointed at the root (yes, several people really did that). I got tired of getting hate mail bitching and moaning about letting the app blow away such obviously important folders and losing all the files in them so the restrictions were put in place. People can bitch and moan all they like about it being outrageous and too restrictive but I don't care. Better safe than sorry so the remaining safety checks will remain in place. With the desktop subfolder restriction being removed, that should be the end of it.

Eric