VisualStudio: How to save the obj folder somewhere else

  1. You add this to your project file below <OutputPath> tag:

    <IntermediateOutputPath>..\Whatever\obj\</IntermediateOutputPath>
    
  2. VS will still create obj folder , so you have to delete it every time after a build. This can be done by putting the following script to the post-build part in VS :

    rd "$(ProjectDir)obj" /S /Q
    

It's the Output Directory under Properties > General of the project settings.

Edit: it seems like there is a difference between the project settings for native C++ projects (which I'm using) and CLR based projects (which might be what the OP is referring to).


Do you use version control? If you do, there's an alternative:

You can exclude bin/ and obj/ from version control and check out your project instead of e-mailing. If you use Subversion, you could also Export your project and e-mail the exported and zipped folder.


Use the BaseIntermediateOutputPath property in the project file (.csproj, .vbproj, etc.), as explained at http://msdn.microsoft.com/en-us/library/bb629394.aspx. You'll have to manually edit the XML document using a text editor, then reload it in Visual Studio. It may still create the obj folder (that's a known bug), but will leave it empty and put the actual obj files in your specified folder.